Skip to main content

Points and Variables

Points

Points are a channel currency for viewers. Viewers earn them automatically while they participate in your channel, and you can use them for command costs, giveaways, shop items, rankings, and code-based automation.

How viewers earn points

Kicklet tracks viewer activity for your channel and adds points from two sources:

SourceWhat it means
Chat messagesEach message can award a fixed number of points.
WatchtimeEach active watchtime minute can award a fixed number of points.

By default, Kicklet uses 1 point per message, 1 point per watchtime minute, a subscriber multiplier of 1, and the currency name points.

The point reward for an activity period is calculated from the configured message reward and watchtime reward. If the viewer is a subscriber and the subscriber multiplier is higher than 1, both rewards are multiplied for that viewer.

Configure point rewards

Open Points System in the Kicklet dashboard to configure how viewers earn points and how the currency is shown.

Start with the points name. This label is shown in rankings, giveaways, the public shop, public profile pages, and chat responses. Examples: coins, cookies, or points.

Then set the earning values:

  • Points per message controls how many points a tracked chat message gives. Set it to 0 if messages should not award points.
  • Points per minute watchtime controls how many points one active watchtime minute gives. Set it to 0 if watchtime should not award points.
  • Subscriber multiplier controls the subscriber bonus. 1 means subscribers earn the same amount as other viewers. Higher values, up to 10, multiply the configured message and watchtime rewards for subscribers.

Use the preview section before saving to check the effective reward for a chat message, one hour of watchtime, and a subscriber message. After changing a setting, click the save button. New activity uses the updated values after the settings are saved.

Use points in Kicklet

Points are used by several Kicklet features:

FeatureUsage
CommandsCommands can have a point cost. If the viewer does not have enough points, the command is blocked and the points are not removed.
GiveawaysGiveaways can require a point cost to enter. The configured point name is shown on the giveaway page.
ShopPublic shop items use points as their price. Buying an item removes the configured price from the viewer balance.
Stats and public profileViewer ranking can show points next to watchtime and message statistics. Public profile pages can show the same currency to viewers.
Kicklet codeCommands can read, set, add, or remove viewer points for custom logic.

Manage viewer balances

Viewer balances can be changed from the Stats viewer ranking tools or through command code. Use the dashboard when a balance needs manual correction. Use code helpers when commands or automations should read, set, add, or remove points.

A viewer balance cannot be set below zero. Removing more points than the viewer has fails with a "not enough points" result.

See also

Counter Variables

Counter variables are named whole numbers stored for your channel. They are useful for values that should survive after a command finishes, such as death counters, win counters, attempts, command usage counters, and stream goals.

When to use counters

Use a counter when you only need one number and you want to increase, decrease, reset, or display it later.

Common examples:

CounterExample usage
deathsIncrease it every time the streamer dies in a game.
winsTrack wins during a challenge or ranked session.
attemptsCount boss attempts, speedrun attempts, or giveaway rerolls.
commandUsesCount how often a specific custom command was used.
goalTrack progress toward a simple stream goal.

Create and edit counters

Open Variables in the Kicklet dashboard and use the Counter variables section. The table shows the counter name, current count, and actions to edit or delete it.

You can create a counter manually with a name and starting count. Counter names can be up to 32 characters long. Counter values are whole numbers, so they can be positive, zero, or negative.

Counters can also be created automatically from command code. When code sets a missing counter or adds to a missing counter, Kicklet creates it for the channel. This is useful for commands like a death counter where the first command execution should create the counter without extra setup.

Change counters from chat commands

Counters are most useful when a command changes them and prints the new value in chat. For example, a command can add 1 to deaths and return the updated count. Broadcasters can also use the default !editcounter command to set a counter value directly from chat.

See also

Limits and deletion

The number of counter variables depends on the account limits shown in your usage settings. Standard accounts can store a small number of counters, while premium accounts can store many more.

Deleting a counter removes it from the dashboard and from future code reads. Use delete when a counter is no longer needed; use set when you only want to reset the number.

Global and Viewer Variables

Variables store custom values for commands and code. Use them when you need to remember text, numbers, objects, settings, temporary state, or per-viewer progress that does not fit into a simple counter.

Kicklet has two kinds of variables:

TypeScopeExample
Global variablesOne value for the whole channel.Current game mode, stream challenge state, giveaway keyword, overlay setting.
Viewer variablesOne value per viewer for the same variable name.Viewer streak, selected class, daily claim timestamp, personal command cooldown state.

Manage variables in the dashboard

Open Variables in the Kicklet dashboard. The page is split into three sections: counter variables, global variables, and viewer variables.

Global variables are shown as a searchable table with the variable name, value, and edit/delete actions. When you create or edit a global variable, enter a variable name and a value.

Viewer variables are grouped by variable name first. The overview shows each variable name and how many viewers have a value for it. Open a viewer variable to see the individual viewer rows, then create, edit, or delete values for specific viewers.

Values and JSON

Variable values can be plain text or structured data. In the dashboard, Kicklet tries to parse the value as JSON when saving it. If the value is valid JSON, it is stored as that JSON value; otherwise it is stored as text.

Examples:

InputStored as
rankedText
42Number
trueBoolean
{"wins": 3, "losses": 1}Object
["red", "blue"]Array

Use simple text for labels and modes. Use JSON when a command needs to store multiple fields under one variable.

Temporary variables

Templates can save variables with a TTL, which means time to live. A variable with TTL expires automatically after the configured number of seconds. Use this for temporary state such as short cooldowns, one-hour streaks, temporary game rounds, or values that should clean themselves up.

Variables without TTL are stored until they are changed or deleted.

Limits and names

Variable names can be up to 200 characters. Viewer names for viewer variables can be up to 50 characters. Variables also count toward your variable storage usage, which depends on your account limits. The usage page shows the current variable storage usage and limit.

If you only need one whole number, use a counter variable instead. Counters are simpler and have dedicated add/set helpers.

See also