Triggers
Every trigger an event can wait for, with its own fields, where it comes from and the variables it fills
Every trigger in the Event Type menu of the event editor, with the fields it adds, the platforms that send it and the template variables its steps can use.
The menu lists what happens on stream first, then the two triggers matched by text you type: API trigger and Chat message. For help choosing one, see Choose a trigger.
Pick an event type and a step type. The fields change with them, as they do in the app.
Viewer activity
| Trigger | Fires when | Sent by | Its own fields |
|---|---|---|---|
| Gift | A gift arrives, or a combo ends | TikTok LIVE, Twitch, Kick, YouTube | Gift Name, Catalog, Match, Worth at least |
| Like | Viewers tap the screen | TikTok LIVE | None |
| Follow | Someone follows you | TikTok LIVE, Twitch, Kick | None |
| Share | Someone shares the LIVE | TikTok LIVE | None |
| Chat message | A chat message matches your text | TikTok LIVE, Twitch, Kick, YouTube | Trigger Text, match mode, Case sensitive, Points cost per command, Use the first command argument for model movement |
| First chat this stream | A viewer's first message of the stream | TikTok LIVE, Twitch, Kick, YouTube | None |
| Viewer joins | A viewer enters the LIVE | TikTok LIVE | None |
| Subscription | A viewer subscribes, or a YouTube member joins or reaches a milestone | TikTok LIVE, Twitch, Kick, YouTube | None |
| Super Fan | A viewer becomes a Super Fan | TikTok LIVE | None |
| Subscriber emote | A subscriber sends an emote | TikTok LIVE | None |
| Treasure box | A viewer drops a treasure box | TikTok LIVE | None |
| LIVE question | A viewer asks a LIVE question | TikTok LIVE | None |
| Raid Twitch only | Another channel raids you | Twitch | None |
| Twitch channel points Twitch only | A viewer redeems a channel point reward | Twitch | The reward menu, Any reward, Refresh rewards |
Viewer joins fires once per viewer in any 30 seconds, so someone who drops out and back in does not set it off twice. First chat this stream remembers up to 50,000 viewers per stream.
Gifts from Twitch, Kick and YouTube
Twitch, Kick and YouTube purchases reach the Gift trigger as gifts with a diamond value you set in SettingsPointsWhat events are worth. Type these names in Gift Name to react to one of them.
| Gift Name | What it is |
|---|---|
Cheer | Twitch bits |
Gift Sub | Gifted subs on Twitch or Kick, or gifted YouTube memberships |
Kicks | Kick's own gift currency |
Super Chat | A YouTube Super Chat, worth its value in diamonds |
Super Sticker | A YouTube Super Sticker, worth its value in diamonds |
| The gift's own name | A YouTube Jewels gift, worth no diamonds |
| The reward's title | A Twitch channel point redemption, or a Kick reward |
A message sent with a cheer, a Kicks gift or a Super Chat fills {comment}.
A Super Chat's message also arrives as a chat message, after the gift.
Twitch channel points and YouTube memberships
Twitch channel points matches a reward by its ID, so it keeps working after you rename the reward on Twitch. Any reward matches every redemption, and a redemption Twitch reports twice runs once. The menu lists your custom rewards with their point costs while Twitch is connected and signed in as the channel's broadcaster.
On YouTube, a new member and a membership milestone set off Subscription, and so does each viewer who receives a gifted membership. A channel member counts as a subscriber in Who can trigger this.
Stream moments and milestones
| Trigger | Fires when | Its own fields |
|---|---|---|
| Stream starts | A new LIVE begins on any platform, or a scheduled YouTube stream you joined early goes live | None |
| Stream ends | The LIVE ends. On YouTube, within a minute | None |
| Room like milestone | The room's like total passes the threshold | Threshold, Repeat at every multiple |
| Viewer count milestone | Viewers in the room pass the threshold | Threshold, Repeat at every multiple |
| Follower count milestone | Your follower count passes the threshold | Threshold, Repeat at every multiple |
| Battle | A TikTok battle starts, updates or ends | Battle phase, Battle outcome (optional) |
| TikTok LIVE goal | Your TikTok LIVE goal changes | Only when the LIVE goal is reached |
| Hype train Twitch only | A hype train begins or ends | Battle phase: begin or end |
| Every few minutes | Its countdown runs out | Run every, Random extra, Only while I'm live |
Threshold starts at 100 and takes any whole number from 1 up. A milestone reads the room once when you join and counts from there, so joining a stream in progress never replays milestones already passed. Without Repeat at every multiple it fires once per stream. Room like milestone reads TikTok's like total, so it stays quiet on Twitch, Kick and YouTube.
Battle phase offers start, progress and end. Battle outcome
(optional) offers None, win, lose and draw.
Raid, Hype train and Twitch channel points appear in the menu once Twitch has connected at least once.
Every few minutes
| Field | Range | Default |
|---|---|---|
| Run every | 1–240 minutes, with Quick picks of 5, 10, 15, 30 and 60 | 10 minutes |
| Random extra | 0 up to the interval itself, in minutes | 0 |
| Only while I'm live | On or off | On |
The first run comes one interval after the countdown starts, never straight away. A run that falls while Vfinity is paused is skipped, and a panic starts every countdown over.
Games and overlay widgets
These fire when a widget in the Overlay tab reaches a result.
| Trigger | Fires when | Key field filters by |
|---|---|---|
| Overlay goal reached | A goal widget reaches its target | The goal's widget ID, such as goal1 |
| Timer reaches zero | The countdown reaches zero, or a count-up timer reaches its target | Leave it empty |
| Wheel result | The wheel of fortune stops | An option's result ID |
| Giveaway winner | The giveaway reel stops on a winner | No key field |
| Tug of war win | A round of tug of war ends with a winner | 1, 2 or a team name |
| Hype level reached | The hype meter climbs into a level | A level number, 1–5, or its name |
The key field is Widget ID or result key (empty matches all). Team and level names match without regard to case. The hype meter has to fall 10% below a level before that level can fire again.
Text you type
| Trigger | Field | Matches |
|---|---|---|
| API trigger | Trigger Name | The name of a trigger sent to the Local API or the Trigger API, ignoring case |
| Chat message | Trigger Text | A chat message, by the match mode below |
Chat match modes
| Mode | A message matches when |
|---|---|
| Contains (the default) | The text appears anywhere in it |
| Exact | It is exactly the text |
| Starts with | It begins with the text |
| Command and arguments | It starts with the command, such as !spin; the words after it become arguments |
| Restricted regular expression | It matches the pattern; captures become arguments |
Tick Case sensitive to tell capitals apart. A regular expression may use anchors, character classes, captures and fixed repeats up to 32.
Points cost per command takes 0–1,000,000 points. A viewer without enough points does not set the event off, and points are refunded if the queued run is thrown away before it starts.
Use the first command argument for model movement feeds the first argument
into every Move Model step: Rotation (°), Size, Position X or
Position Y. A viewer's !spin 90 turns the model 90°. A value that is not a
number stops the event and costs nothing.
Fields every trigger shares
Advanced Settings in the event editor holds these.
| Field | Applies to | Range or choices |
|---|---|---|
| Minimum gifts, Minimum likes or Minimum count | Every trigger except milestones and Every few minutes | 0 or more |
| Delay (ms) | Every trigger | 0 or more, before the whole action list |
| Count Mode | Every trigger except Every few minutes | Count per viewer or Count from all viewers |
| Enable Rate Limit | Every trigger | Max Triggers in Time Window (seconds); 5 in 60 when first switched on |
| Quantity Behavior | Gift | Once per gift event, Repeat the action xN, Extend the duration xN |
| Count | Gift with Count from all viewers | Gifts or Diamonds |
| At most (◆) | Gift | 1–1,000,000 diamonds, or No limit |
| Value of | Gift | The whole combo (gift × count) or One gift |
With Count set to Diamonds, the event fires each time everyone's diamonds together pass Diamonds to collect, at most 20 times for one combo.
Settings, under the steps, holds the rules: Who can trigger this, Cooldown and Action Queue. Rules and cooldowns explains them.
| Rule | Range | Default |
|---|---|---|
| Who can trigger this | Followers, Friends, Subscribers, Super Fans, Moderators, Fan club members, Top gifters | Everyone |
| How many top gifters | 1–100 | 3 |
| Always allowed, Never allowed | Up to 200 names each | Empty |
| Per viewer (seconds), For everyone (seconds) | 0–86,400 | 0 |
| While cooling down | Ignore the trigger or Run it when the wait ends | Ignore the trigger |
| Queue lane (same name runs in order) | Up to 64 characters | default |
| Queue priority (higher runs first) | −1000 to 1000 | 0 |
| Discard queued runs after seconds | 1–3600 | 120 |
Variables each trigger fills
Every trigger that names a viewer fills {name}, {nickname}, {uniqueId} and
{points}, and every trigger fills {trigger}. These add their own:
| Trigger | Adds |
|---|---|
| Gift | {gift}, {count}, {diamonds}, {totalDiamonds}, and {comment} when the gift came with a message |
| Twitch channel points | {rewardName}, {rewardCost}, {rewardId}, {redemptionId}, and {comment} for a reward that asks for text |
| Like | {count}, {likes}, {totalLikes} |
| Chat message | {comment}, {args}, {arg1} to {arg9} |
| First chat this stream | {comment} |
| Subscription | {months} |
| Raid | {viewers} |
| Treasure box | {coins} |
| Subscriber emote | {emoteUrl} |
| LIVE question | {questionText} |
| Hype train | {phase}, {level}, {total} |
| Room like milestone | {totalLikes} |
| Viewer count milestone | {viewers} |
| Follower count milestone | {followers} |
| Overlay goal reached | {value}, {target}, {cycle} |
| Wheel result | {result} |
| Giveaway winner | {winner}, {tickets}, {entrants} |
| Tug of war win | {team}, {score}, {otherScore} |
| Hype level reached | {level}, {levelName} |
| API trigger | Every top-level text, number or true/false field of the trigger's data |
Template variables lists what each one holds.