Scoreboard
Shows your stream's stats on screen, platform by platform: messages, commands, follows, subs, gift subs, Bits or Super Chats, peak viewers, raids… Each stat counts the Streamer.Bot triggers you pick this stream, beside its all-time record. When a record falls, a chat message celebrates it and Streamer.Bot gets a custom trigger for your own actions.
The Scoreboard is part of the Stream Scores widgets, with the Viewer Cards. It works for free in one overlay; Stream Scores Licence lets it show in any number of overlays → Stream Scores Licence.
Platforms: Twitch, YouTube, Kick
Action pack: needed — Stream UI - Backend keeps the scores in Streamer.Bot. See Who needs what.
How it works
- A stat counts one platform's events. Each platform has its own stats; an event only
counts on the platform it came from — a command counts where it was typed (the default
❗ Commands trigger also has the condition
user.type=twitch,youtubeorkick). Events from no platform (OBS, custom events…) count wherever you picked them. - Today against the record. Each stat has today's score and its record. Today's scores live in temporary global variables, so they go back to 0 when Streamer.Bot restarts, or on your Reset this stream's scores triggers. Records are persisted.
- Kept in Streamer.Bot, with readable names. Each stat is stored as
ss.<platform>.<Name>.currentScore(today) and.bestScore(the record) — its name without emojis, in PascalCase: 💬 Messages →ss.twitch.Messages.bestScore. Your own actions can read them. Scores counted with the former Stream Scores website keep the same names, so they carry over. - Counted by the overlay that runs the actions, while counting is on. Only that
overlay counts, so nothing is counted twice; the others read the scores every few
seconds. Start counting and Stop counting — by hand or by trigger — switch the
counting, kept in Streamer.Bot as
streamUi.off.scoreboard(1stopped). By default it starts when your Twitch stream goes online, which also resets today's scores, and stops when it goes offline. → Which overlay runs the actions - A record is celebrated once. When today's score beats the record, the record follows it; the first time per stat this stream (until today's scores are reset or Streamer.Bot restarts), the Chat message is posted in that platform's chat and the New Stream High Score custom trigger fires. That stat glows gold on the scoreboard and pops: its look is the Style tab's New high score animation. Switch New record off and none of that happens; the record still follows today's score.
- Everyone counts, except your ignored users.
The page
The widget's page works like a small app:
- Settings, Style and Controls, the tabs over the editor, switch what it shows.
- On the Settings tab, the Settings column lists Display settings, New record and Platform scores, whose platforms open in a column of their own. A platform's Score list then opens beside it: click a stat to edit it, its Counted triggers in the column next to it.
- The main area: the picked part's settings, or the buttons on the Controls tab.
- Widget preview, the panel against the window's right edge: the preview, the test buttons and the widget's own URL. Drag its left edge to widen it, up to half the window; it keeps its width. Widget shows the widget in its position, cut from the canvas as your browser source draws it; On canvas, the whole canvas.
How to set it up
Connect Streamer.Bot and add the action pack
The scores are kept by the Stream UI - Backend action → Connection.
Switch it on
On the widget's page, switch Add to overlay on.
Check the stats
Each platform starts with stats ready to use. Open Platform scores, a platform, and pick a stat to see its triggers, or add your own with Add score.
Update your browser source
Copy the overlay URL again into your browser source → Layout and browser source.
Settings
Display settings
In three parts:
| Setting | Default | Detail |
|---|---|---|
| Display mode | ||
| Orientation | Horizontal | Horizontal: a full-width bar along the canvas, where it runs set per overlay in the Overlay builder. Vertical: a board in one of the 9 positions. |
| Platforms | All together | All together, or One at a time, each shown for Time per platform (10 s) with the widget's Show / hide transition. Only with two platforms or more switched on. |
| Layout | ||
| Platform alignment | Horizontal | The platforms Horizontal (side by side) or Vertical (one under the other). Outside a bar, with all platforms together, and two platforms or more switched on. |
| Score alignment | Horizontal | Each platform's stats Horizontal or Vertical. |
| Text and score alignment | Horizontal | A stat's name over its scores (Vertical) or on one line with them (Horizontal). |
| Content | ||
| Show platform titles | on | Each platform's heading: Twitch title, YouTube title, Kick title (the platform's name by default). |
| Show score icon | on | Each stat's icon, picked in the stat's settings (Score icon). |
| Show score name | off | Each stat's name. |
| Show record | on | The record after today's score. |
New record
Its switch, on its row in the Settings column, is on by default. Switched off, a record beaten sets off nothing: no chat message, no custom trigger, no animation.
Chat message: switched on by default, posted in the chat of the platform the record
is on, e.g. 🏆 New record! {label}: {newValue} (was {oldValue}), by {user}. Variables:
{label} (the stat), {newValue}, {oldValue}, {user} (who set it off) and
{platform}. Send as bot posts it as your bot account where you have one.
A new record also sets off a custom trigger in Streamer.Bot, for your own actions → New Stream High Score.
Platform scores
One row per platform switched on, each with its Score list. Each platform starts with:
| Twitch | YouTube | Kick |
|---|---|---|
| 💬 Messages, ❗ Commands, ❤️ Follows, 💰 Subs, 🎁 Gift Subs, 💎 Bits, 🎯 Channel Points, 👀 Peak Viewers, 🫂 Raids, 🫂 Peak Raiders | 💬 Messages, ❗ Commands, 📺 Subscribers, 🎬 Members, 🎁 Gift Memberships, 💵 Super Chats, 👀 Peak Viewers, 👍 Likes, 👎 Dislikes, 👀 Views, 💬 Comments | 💬 Messages, ❗ Commands, ❤️ Follows, 💰 Subs, 🎁 Gift Subs, 👢 Kicks, 👀 Peak Viewers |
Each of them comes with its icon, the same on every platform (shown with Show score icon).
In the Score list, under each stat's name, its live score and record. Its switch counts and shows it, or leaves it out. Its menu: Duplicate, Copy to YouTube (or another platform), Delete — a deleted stat's scores stay in Streamer.Bot under its name. Without the licence, 5 stats per platform can be switched on at once → Stream Scores Licence.
The picked stat, in the main area:
| Field | Detail |
|---|---|
| Score name | Shown on the scoreboard, emoji welcome. It also names its Streamer.Bot variables. |
| Score icon | With Show score icon on: an icon shown before its name, picked from a searchable list of about 1,800 icons (Lucide). The clear button removes it. |
| Scores | This stream, read from Streamer.Bot, and the Record, which you can change by hand: the overlay reads it on its next pass. |
Counted triggers, the column beside the stat: the Streamer.Bot triggers that raise it, with their conditions → Triggers and conditions. The trigger picker offers this platform's triggers and every source that is no platform (commands, integrations, OBS…). Each trigger has its Score increment:
| Choice | What it does |
|---|---|
| Add 1 | Adds 1. |
| Add the value from a variable | Adds a number of the event, named in Variable name: bits, decimalAmount… |
| Set the value from a variable | Takes the event's value as it is: likes, views. |
| Set the value from a variable + Only replace if the new value is higher than the current value | Keeps the highest value seen: peak viewers, peak raiders. |
New Stream High Score
Each time a stat beats its record, the widget also sets off a custom trigger in Streamer.Bot: once per stat per stream (until today's scores are reset or Streamer.Bot restarts), at the same moment as the New record chat message. Use it to celebrate your own way: play a sound, switch an OBS scene, give channel points…
The trigger is sent by the overlay that runs the actions, while counting is on. It is added by the Stream UI - Backend action: after importing the actions again, restart Streamer.Bot so the trigger appears.
Create an action
In Streamer.Bot's Actions tab, right-click the action list and pick Add. Give it a name, e.g. New record.
Add the trigger
In the action's Triggers, right-click and pick Custom › Stream UI › New Stream High Score.
Add your sub-actions
Use the variables below in them, e.g. a Send Message to Channel sub-action with
%scoreLabel%: %newValue%, beating %oldValue%!
| Variable | Value | Detail |
|---|---|---|
scoreLabel | %scoreLabel% | The stat's name, as on the scoreboard: 💬 Messages. |
label | %label% | The same, as in the chat message's {label}. |
scoreName | %scoreName% | The platform and the stat's id: twitch-messages. |
newValue | %newValue% | The new record. |
oldValue | %oldValue% | The record before. |
platform | %platform% | twitch, youtube or kick. |
triggeredBy | %triggeredBy% | Who set off the event that beat the record (their display name), unknown if nobody did. |
user | %user% | The same, as in the chat message's {user}. |
scoreEvent | %scoreEvent% | The trigger that counted it: Twitch.Cheer… |
eventTriggeredName | %eventTriggeredName% | The same. |
Actions bound to it under the former Stream Scores website keep working: the trigger and its variables keep their names.
Style
Each element follows the overlay style field by field: a field you change is the widget's own, with a reset arrow beside it. Style for restyles one platform on its own, over the widget's style. See Appearance.
| Element | Detail |
|---|---|
| Container | The board's own box (the overlay's Widgets container outside a bar; in one, the bar's look in the overlay's Widgets background colour), 24 px between platforms. Its Direction is Platform alignment (Display options). In a bar, the bar's height under Size. |
| Background › Platforms | Each platform's block (clear): its title, lined up on the widget's position, over its stats. |
| Background › Scores | Each stat's block (the overlay's Widgets background; violet to mauve in a bar): Auto width shares the line, Fixed sets each one's width. Its Direction is Text and score alignment (Display options). |
| Score icon | Each stat's icon (24 px, white): size, colour, border and glow. With Show score icon. |
| Text › Platform title | Each platform's heading (the overlay's Titles style), with Show platform titles. |
| Text › Score name | The stat's name (the overlay's Subtitles style), with Show score name. |
| Text › This stream's score | Today's score (the overlay's Numbers style). |
| Text › Record | The record, after a slash (the overlay's Numbers style), with Show record. |
| New high score animation › Score background | A stat on its record: its block (gold border and glow), Times it pops (how many times it pops when it beats it, 2; 0 for none) and Show trophy (🏆, on). With New record on. |
| New high score animation › This stream's score | Its score (the overlay's Numbers style, in gold). |
| Show / hide transition | How the scoreboard appears and leaves (Show / Hide), and how platforms swap with One at a time. |
While you style New high score animation, the preview shows each platform's first stat on its record. While you style Show / hide transition, the preview hides the scoreboard and shows it again.
Default position
A Horizontal bar along the bottom of the canvas, 140 px high. Off the bar: Bottom centre, automatic width. All of that is changed on the Overlay builder's Layout tab.
Streamer.Bot events it listens to
| Event | What it triggers |
|---|---|
| Each stat's triggers | Counts the stat on the platform the event came from |
| The Start counting, Stop counting and Reset this stream's scores triggers | Starts or stops counting, sets today's scores to 0 |
| The Show and Hide triggers | Shows or hides the scoreboard in every overlay |
Misc.GlobalVariableUpdated, Misc.GlobalVariableCreated | Counting started or stopped, or the scoreboard shown or hidden, elsewhere |
Controls
On the Controls tab:
- The Controls column holds Start counting, Stop counting, Reset today's scores, Show and Hide (no trigger by default). Pick one to see its triggers in Trigger list, and add your own.
- The main area has the manual controls, also in the controls window:
| Button | What it does |
|---|---|
| Show / Hide | One button, Hide while shown and Show while hidden: shows or hides the scoreboard in every overlay and the preview, with its Show / hide transition, read live: Scoreboard: Shown or Hidden. Hidden, it keeps counting, and once it has left its room goes to the other widgets: its bar closes, whatever its height. Kept in Streamer.Bot as streamUi.off.scoreboard.display (1 hidden). |
| Start counting / Stop counting | Starts or stops the counting, read live: Scoreboard: Counting or Stopped. |
| Reset this stream | Sets every stat's today to 0, and lets each record be celebrated again. |
| Reset records | After a confirmation, sets every record back to 0, on every platform. |
They write straight to Streamer.Bot and need the Backend action.
Stream Scores Licence
Without the licence, the Scoreboard shows in one overlay; switching it on in another overlay is refused, and the Overlay builder says why. Each platform's Score list can hold any number of stats, but only 5 can be switched on: switching on one more is refused, a stat added past them starts switched off, and those switched on past the first 5 (a lapsed licence) stay in the list, marked Not used without Stream Scores Licence, and are neither counted nor shown. Stream Scores Licence (€4.99 a month or €99.99 once, before VAT) lets it show in every overlay, uncaps its stats and the Viewer Cards and removes the ads from the website → The Licence tab. A small lock beside the widget's name in the widget nav means the licence is off in this browser.

