Glass uses real-time backdrop blur on every surface, which looks gorgeous but uses more GPU than the other styles.
✓ Looks stunning on modern PCs and Macs
✓ Auto-pauses when the app loses focus (e.g. when OBS is on top)
⚠ Could add 1-3% GPU usage on older hardware while streaming
⚠ If you notice frame drops, use Reduced Effects (option below)
You can toggle ⚡ Reduced effects any time on the Appearance page — that keeps the glass look but skips the heavy blur. You can also switch back to any other style at any moment.
This warning won't show again
💡 Share Feedback
Help us make Streamerly better
Submitting as loading... · App v1.5
Welcome to Streamerly
Your Stream. Your Control.
Before you get started please review and accept our Terms of Service and Privacy Policy.
📋 Terms of Service — Key points
🧪This is a closed beta — the app is pre-release, may contain bugs, and features may change between updates
✦You must have a valid Twitch account to use Streamerly
✦You are responsible for who you grant team access to in the app
✦Do not use the app in a way that violates Twitch's Terms of Service
✦The app is provided as-is — we are not liable for stream downtime or data loss
✦You must be at least 13 years old
🔒 Privacy Policy — Key points
✦All your stream data stays on YOUR computer — we cannot see it
✦Your Twitch tokens are encrypted with AES-256 and stored in your OS keychain
✦We never sell or share your data with anyone
✦The only data that leaves your computer is the version check (to GitHub)
✦No tracking, no analytics, no advertising profiles
Full documents available at streamerly.app/terms and streamerly.app/privacy
Thanks for being one of the first to try Streamerly! You're in early — which means the app is still being polished and you might run into things that aren't quite right yet.
⚠ What to expect
There will be bugs, weird edge cases, and things that change between updates. Some features are still being wired up. Your data is safe — but treat this as a beta, not a final product.
💡 Found something?
Found a bug or have an idea? Reach out to @realize_sg directly any time:
🟣 Twitch · @realize_sg💬 Discord · realize_sg
🔍 Pro tip
Text feeling small? Use Ctrl + to zoom in, Ctrl − to zoom out, and Ctrl 0 to reset. Your zoom level is remembered across launches.
Your feedback shapes the app. Have fun streaming! 💜
This message won't show again
📥
▸ One-time migration
Import from StreamElements
STEP 1 / 4
Paste your StreamElements JWT Token
Your token is used once for this fetch, kept in memory only, and never written to disk. Streamerly stores nothing about your StreamElements account after the import completes.
1. Opens streamelements.com → Account → Channels
2. Click Show secrets
3. Copy the JWT Token and paste it below
🔐 Security note — your JWT acts like a password for StreamElements. Don't share it with anyone. Once import is done, you can regenerate it to invalidate this copy.
Preview your data
Connected to StreamElements as —. Here's what we found:
Viewers found
—
Currency name
—
What will be imported
Choose how to merge with existing data
Streamerly currently has — viewers in its loyalty system. How should we handle overlap?
⚠ Heads up — this affects only viewers who exist in both systems. New viewers from SE are always added regardless of choice.
Importing data...
Fetching page 1 of viewers...
0 viewersstarting...
✓ IMPORT COMPLETE
✗ IMPORT FAILED
streamerly
Your Stream. Your Control.
Welcome back 👋
Sign in with Twitch to continue
Continue as
Already signed into Twitch here as yourself? Use this to add another account — like a streamer you're setting up — instead of reusing the one your browser is on.
🆕Update available
What's new
✕
Live
Subath
Play
Bot
People
Insight
Multi
Setup
Admin
Discord
System Health
✕
streamerly
Live
What viewers see in real time — your dashboard, alerts, and overlay.
By the Numbers
Setup wizard
Connections
Dashboard
Alerts
Overlay
Soundboard
OBS
Timer
Goals
Incentives
Prize Wheel
Giveaway
Player Queue
Trivia
Who Said It
Bots
Commands
AutoMod
Song Requests
Partner Plus
Loyalty Points
Games
Channel Points
Leaderboard
Viewer Hub
Watch Party
Analytics
Stream History
Recap
Income
Live Monitor
Mod Logs
Clips
TikTok LIVE
Kick
YouTube
Facebook
MultiChatdev
Team
Connections
Settings
Theme
Dev Panel
Command Center
AI & Billing
🔍Channel Scanner
Beta Codes & Uses
Testers
Logs
📊Overview
📣Announcements
👋Members
💎Roles
🎮Commands
🪙Points
🛡️Moderation
—
live
Connecting…▾
Online
Available, in the app
Idle
Manually set to away
Do Not Disturb
Suppress notifications
Invisible
Appear offline to others
Timer
paused
✦Ctrl K
My Channel
Realize_SG✓
from Twitch
↻ Refresh
⚙ Manage
📥 Beta access requests
Loading…
🔌 Bot connections
Loading…
Welcome back!
Your stream controller is ready.
LIVE ON TWITCH
○ offline
TIMER RUNNING
🎁 INCENTIVES LIVE
0
Subs this session
0
Bits cheered
$0
Donations
—
New followers
📊 Stream Activity this week
—
Avg Viewers
—
Subs
—
New Followers
—
Peak Viewers
🎯 Active Goals
no goals set up yet
⚡ Recent Events0 events
no events yet this session
🎮
Stream Info
Edit your Twitch title + category without leaving the app.
🎮
⚡ Auto-detectoff
🎮
—
waiting for focus change…
Alt-tabbing to these won't change your category. Defaults cover OBS, browsers, Discord, Spotify, Explorer.
When you set a category while an unknown game is focused, it's remembered here. Remove an entry if it learned the wrong thing.
Timer
The countdown viewers add time to — subs, bits and donos each bank minutes automatically.
⚠ Timer not available — bot not active on this channel
Subathon timer
4:00:00
+0 min added · 0 events
0
Subs
0
Bits
0
Donos
⚡ Recent time added ↕ scroll for more
events appear here automatically when your stream starts
⚡ Multiplier
○ Idle
1×No multiplier active
9:42 remaining
2×
10 min
3×
5 min
5×
3 min
Start custom multiplier
🎛️ What gets multiplied
Sub time
Gifted subs
Bits → time
Donations → time
Only the enabled categories get boosted while a multiplier window is active.
⏲ Time per event minutes
per 100 →
per $1 →
🚦 Start & cap
240 = 4 hours
0 = no cap · enforced 24/7 by the worker (holds even with the app closed)
Resumes by itself when the stream goes live again, so offline hours don't burn off the clock. Untick for a true round-the-clock subathon.
✋ Manual entry add an event
🔔
Leaderboard
Top gifters, cheerers and donors — per stream, per range, or all-time.
#useramounttier
no data yet
📸 Set all-time gifted subs
The board self-corrects when a gifter gifts again (Twitch includes their lifetime total in the event) — this is for gifters who won't. One per line: username total.
Mode:
📊
Stream Recap
— no session yet
no session
🕰Viewing past session — —
▸ Shareable recap · 1600×866
S
streamerly
stream recap
—
—
@—
— · — of streaming
0
Subs
0
Bits
$0
Donations
—
Peak viewers
— new followers · — clipsstreamerly.app
Duration
—
Subs
0
Bits cheered
0
Donations
$0
Peak viewers
—
Avg viewers
—
New followers
—
Min added
0
🎮
Categories played
time per game
No category changes tracked yet.
⏱
Stream timeline
events + milestones
Start the session to begin recording.
SubGiftBitsDonoRaid
▸ Full event list
no events yet
✂
Clips from this session
clips will appear here
🎁
Top sub gifters
No gifts this session.
💎
Top bit cheerers
No cheers this session.
💵
Top tippers
No tips this session.
💬
Most active chatters
No chat messages tracked yet.
📅
Past sessions
No saved sessions yet — finish a stream session to populate.
⏳
Past subathons
Loading…
📺
Past streams (24/7 bot)
Loading…
Incentives
Per-contributor rewards — "5 subs = shoutout", "$50 = game request" — tracked automatically as people gift, cheer and donate. Runs with the subathon timer or on its own.
Incentives off
Turn on to track goals + gifters for a wheelspin / incentive night without a subathon timer.
Reward tiers
🏆 What contributors earn at each gifted-subs, bits, or donation threshold.
Contributor tracker
👥 Auto-tracked from gifted subs, bits & donations this session.
Subathon Goals
Community targets — "100 subs = karaoke" — that fill automatically as subs, bits and donos come in.
Goals off
Turn on to announce milestone progress in chat + fire goal-complete clips and overlays.
📸 Correct totalsfix the subs / bits / tips number since the subathon started — no time added, no alerts, no leaderboard change
Loading current totals…
Set sub milestones — the bot announces progress toward the next goal automatically.
💡 Click ✎ on any command then { } Insert variable ▾ in the response field to pick one without typing.
How long someone has been following
{username} has been following for {followage}!
0
Fires
—
Last
Category InfoPermission Cooldown 5s
Response template
How old someone's Twitch account is
{username}'s account is {accountage} old 🎂
0
Fires
—
Last
Category InfoPermission Cooldown 5s
Response template use {accountage} for the age · aliases: !age
How long the stream has been live
{channel} has been live for {uptime}!
0
Fires
—
Last
Category InfoPermission Cooldown 5s
Response template
Allow links for 60 seconds
{target} is permitted to post links for 60 seconds!
0
Fires
—
Last
Category ModeratorPermission
Response template
Update the current game
Game updated to {game}!
0
Fires
—
Last
Category ModeratorPermission
Response template
Update the stream title
Title updated to: {title}!
0
Fires
—
Last
Category ModeratorPermission
Response template
Counts the streamer's yawns · all-time (24/7)
🥱 {channel} has yawned {count} times!
0
Fires
—
Last
Category FunPermission
Response template · {channel} {count}
👥 EveryoneMagic 8-Ball answers · OFF by default — flip the light to enable
🎱 @viewer — Signs point to yes
👥 EveryoneCounts the streamer's deaths · all-time (24/7)
💀 {channel} has died 42 times!
👥 EveryoneHow long someone has watched the stream · also !watch
⏱️ @viewer has watched for 5 days 12 hours!
👥 EveryoneHours watched while the stream is offline · also !offlinewatch
🌙 @viewer has watched 3 days 4 hours offline!
👥 EveryoneMake a clip from chat — needs the broadcaster Connect (banner above) + clips turned on
🎬 Clip created — twitch.tv/…
👥 EveryonePartner Plus progress toward Level 1 / 2 · also !plus
📈 Partner Plus: 87/100 points to Level 1
👥 EveryoneChannel's live subscriber count from Twitch — needs the broadcaster Connect (banner above) · also !totalsubs, !channelsubs
💜 415 active subscribers right now
👥 EveryoneLets a lurker clear their recent chat & slip out — times them out for 1 second. Needs the broadcaster Connect. Mods can't be vanished.
👻 no reply — they just quietly disappear
👥 EveryoneDMs a viewer their personal stats on Discord — points, watch time, subs, bits, check-in streak (also !mystats). They link once with /link in your Discord.
📬 @viewer sent your recap to your Discord DMs
👥 EveryoneValorant rank & today's win–loss · link once with !setriot
🎯 Diamond 2 · today: 5W–3L
👥 EveryoneFACEIT elo & level · link once with !setfaceit
🎮 2,150 elo (Level 10)
👥 EveryoneViewers hide or show themselves on the public leaderboards
🙈 You're hidden from the public boards — !showme to undo
🛡️ Mod+Seed any counter — carry totals over from your old bot (!setcount deaths 42 · !setcount !hug 133)
🔢 deaths counter set to 42
🛡️ Mod+Create, edit & delete custom commands from chat · also !delcom · !resetcom (broadcaster) — usage below
✅ Created !hype — try it in chat!
💬
Manage via chat
Add, edit or delete custom commands straight from your Twitch chat — no app needed.
!addcom !name Response text
!editcom !name New response
!delcom !name
!resetcom !name — resets {count} (owner)
🎰
Points gambling checking…
Chat games viewers play with their points, answered by the 24/7 bot. Arm each game below; tune win chance, multipliers & payouts on the Games tab.
Viewers gift their own points to someone · also !gift · 24/7 bot answers
💸 @viewer gave 500 points to @friend (amounts: 500, 10k, 1.5m, half, all, 50%)
0
Fires
—
Last
👥 EveryoneCheck your points balance & rank · also !balance
💰 @viewer has 12,500 points (#3 on the board)
👥 EveryonePoints leaderboard — top 5 · !top10 shows ten
🏆 1) viewer1 · 2) viewer2 · 3) viewer3 …
👥 EveryoneYour gambling win/loss record · also !gamblestats
📊 @viewer: 12 wins, 8 losses, net +4,200
🛡️ Mod+A mod starts a points raffle, everyone joins with !enter
🎟️ Raffle open: 10,000 points — type !enter to join!
🗡️ Mod+Drop points to every viewer — a surprise bankroll
🎁 Everyone got 500 points! Good luck at the tables 🎰
🛡️ Mod+Give, take or set ONE viewer's points · also !removepoints · !setpoints
🛠️ Gave 500 points to @viewer
🛡️ Mod+⚠️ Wipes EVERYONE's points to zero — locked until armed in the Games tab Danger Zone, then asks the mod to confirm in chat
💥 All points reset to 0 — fresh start for everyone
Single-player bet — win, lose, or jackpot
🎲 @viewer wagered 500 and hit a JACKPOT for 5,000 points!
3-reel pull — weighted symbols, editable payouts
🎰 @viewer spun 🍒🍒🍒 and won 1,500 points!
Bet on your odds — pick your risk, take the payout
🔴 @viewer bet 200 on red and doubled up to 400!
PvP — challenge a viewer, they !accept or !decline
⚔ @viewer challenged @friend for 1,000 points — @viewer won!
Group game — viewers team up to crack the vault
💰 5 viewers cracked the vault and split 12,500 points!
🎵
Song requests checking…
Viewers request songs with !sr, answered by the 24/7 bot. Connect Spotify and manage the queue on the Song Requests tab.
👥 EveryoneRequest a song — Spotify search or a URL
🎵 Added "Song Name" to the queue — position #3
👥 EveryoneWhat's playing right now
🎧 Now playing: Song Name — Artist
👥 EveryoneShow the next 5 songs in the queue
📋 Up next: Song A, Song B, Song C…
👥 EveryoneRemove your most recent request
🗑️ Removed your last request from the queue
🛡️ Manager+Skip the current song
⏭️ Skipped — playing the next request
🛡️ Manager+Set Spotify volume 0–100 · also !songpause / !songresume
🔊 Volume set to 60
🔊
Soundboard
Viewers redeem channel points to play sounds on your overlay. These mod commands control the board live in chat — the sounds, rewards & guardrails are set on the Soundboard tab.
🛡️ Mod+Mute the board — redemptions still spend points but nothing plays
🔇 Soundboard muted — sounds won't play until !soundon
🛡️ Mod+Un-mute the board
🔊 Soundboard un-muted — sounds will play again
🛡️ Mod+Cut the clip playing right now · also !stopsound
⏭ Stopped the current sound
🎡
Wheel spins checking…
Viewers earn spins and roll for prizes, answered by the 24/7 bot. Set the prize pool, earning rules & run pending spins on the Prize Wheel tab.
👥 EveryoneSpend a spin you've earned and roll the wheel
🎡 @viewer spun the wheel and won 500 points!
👥 EveryoneCheck how many spins you have ready
🎟️ @viewer, you have 2 spins ready — type !wheelspin
👥 EveryoneSee the prize pool & how to earn a spin
🎁 Prizes: 500 pts, shoutout, VIP… — earn a spin by gifting/subbing
👥 Everyone🌟 Spend a VIP spin and roll the VIP wheel
🌟 @viewer spun the VIP wheel and won a custom emote!
👥 Everyone🌟 Check how many VIP spins you have ready
🌟 @viewer, you have 1 VIP spin ready — type !vipwheelspin
👥 Everyone🌟 See what's on the VIP wheel & how to earn a VIP spin
🌟 VIP Prizes: custom emote, 1v1, VIP for a month… · Earn a spin every 20 gifted, 5000 bits, or $50 donated — then !vipwheelspin.
Shows current countdown
Current timer: {timer}
0
Fires
—
Last
Category SubathonPermission
Response template
Total subs this session
Total subs: {total_subs}!
0
Fires
—
Last
Category SubathonPermission
Response template
Shows top sub gifters
Top gifters: {leaderboard}
0
Fires
—
Last
Category SubathonPermission
Response template
Shows current goals
Current goal: {goal_name} — {goal_progress}%
0
Fires
—
Last
Category SubathonPermission
Response template
Add minutes to timer (mod+)
Added {mins} minutes! Timer: {timer}
0
Fires
—
Last
Category SubathonPermission
Response template
Pause or start timer (mod+)
Timer has been {action}!
0
Fires
—
Last
Category SubathonPermission
Response template
Shows current multiplier
Current multiplier: {multiplier}x!
0
Fires
—
Last
Category SubathonPermission
Response template
Shout out another streamer · !so @user
Go give @user some love…
ON
Shoutout settings
Runs 24/7 on the server — works even when this app is closed.
Wait before shouting out seconds after the raid lands — lets the raiders' hellos settle so it isn't buried (10–20 is a good spot; 0 = instantly)
Say it again repeat the shoutout so late arrivals see it tooeverysec
Who can use !so permission to run it manually in chat
On-screen overlay card animated shoutout card on your streamCOMING SOON
Preview
StreamerlyBot:
0 selected
Quick Add
⬇ Import commands from another bot
Pulls the channel's public command list (same data the bot's !commands page shows — no login needed). Variables like $(user) / ${touser} work as-is after import.
⚠ Commands that won't fully work
Every command on the 24/7 bot, scanned for variables it can't resolve — those parts would print literally in chat. Fix the command, delete it, or send the list to support to get the variable added.
Scanning…
Celebration messages the Hype Bot posts when events fire — subs, gifts, bits, raids, milestones. These run 24/7 on the worker once Offline Event Tracking is enabled. Variables include {user}{tier}{months}{bits}{message} plus the standard {game}{viewers}.
Per-game rank & stat trackers. Link an account here (or in chat) and viewers can pull it up — Valorant rank, CS2 Faceit ELO, and more. Runs 24/7 on the worker.
Timed chat messages the worker posts on a schedule, 24/7 — no need for the app to be open. Variables: {channel}{game}{title}{viewers}{followers}{uptime}{time}{date}{random 1 100}{pick a|b|c}
Built-in timed messages
Your timed messages
Add a timed message
🕐
When do viewers fire commands?
last 24h · by hour
12ano data yet11p
📡
Live fire feed
0 in last hour
Commands will appear here as they fire in chat.
🏆
Top commands today
No fires today yet.
⭐
Channel Points
— rewards synced
PubSub · offlinenever synced
offline · redemptions won't fire
👀
Read-only view
You're managing this channel. Live redemptions, top rewards and redeemers update in real time. The reward list, pending fulfillment and sync are the broadcaster's own — they only show on their account.
No reward has actions wired yet. Open a reward's ✎ panel to configure what fires on redemption.
★ Live
🔥
Daily Check-in —
Viewers redeem a channel-point reward to check in — earn points, build streaks, hit milestone bonuses. Set it up with your other loyalty controls.
Synced from Twitch0 rewards
Click ↻ Sync from Twitch to load your rewards.
🔒 The reward list, quick-add templates and pending fulfillment are the broadcaster's own — Twitch only shares them with their account. Everything above (live feed, top rewards, most active redeemers) is live for this channel.
Partner Plus Tracker
Twitch doesn't share Plus points via API, so we estimate them from your paid subs + resubs (gifted subs excluded). Resets on the 1st — enter your real number to sync, then it tracks automatically.
tracker off
—
this month
🔒 —
Paid subs this month
—
Resubs counted
—
Resets in
—
🔄 Sync to Twitch
Current level your real Twitch level — keeps it from resetting
Current points copy from Twitch's dashboard
Last synced
not synced yet
💡 After you sync, every new paid sub/resub adds on top automatically — re-sync only if you want it exact.
🔒 Lock-in
Hit your level 3 months in a row and Twitch locks you in for a year — re-hitting it restarts a fresh 12 months. Already locked? Enter your real date so the app picks up from there and auto-renews.
Locked in until from your Twitch dashboard — blank if not locked
Months in a row qualifying months so far (0–3)
Status
not locked in yet
Use {lockin} in your announce or any command to show this (e.g. locked in until Apr 2027).
⭐ Point values
Tier 1
Tier 2
Tier 3
Count gifted subs off — gifts don't count toward Plus
🪜 Level thresholds
Level 1
points
Level 2
points
💬 Auto-announce
Post every
min
Variables: {partnerplus} = progress X/Y (e.g. 500/1,000) · {level} = current level (e.g. 2) · {lockin} = lock-in status (e.g. locked in until Apr 2027). Viewers can type !partnerplus for this same message, or use these in any custom command.
▸ Bots Console
Broadcast Bots
— bots online · — messages today
0/2
Bots online
0
Messages today
—
Last fired
🩺 24/7 Health checking…
Live check of the 24/7 stack for this channel — what the bot can actually do right now, not what the tabs say.
Loading…
⚡ Always-On (24/7)
These run on the Streamerly server — they keep working even when this app is closed.
🤖 24/7 Chat Bot
Answers chat commands while your app is closed.
—
⚠ Mod both bots in your channel for full functionality:
/mod streamerlychat
/mod streamerlyhype
streamerlychat runs your commands · streamerlyhype posts hype reactions
📡 Offline Event Tracking
Captures subs, bits, raids & follows server-side so nothing is missed when the app is closed.
Controls whether bots fire celebratory messages (gifts, time-added, multipliers)
Auto · waiting for timer
Send brief "thanks" messages when hype is off
e.g. "Thanks for the sub @jennah! 💜" — turn off for fully silent bots
Hype Bot
Reactions & celebrations
B1
No account linked
⭐
New sub
ready
▾
🔁
Resub
ready
▾
🎁
Gift sub
ready
▾
💎
Bits
ready
▾
💰
Donation
ready
▾
⚠️
Low timer warning
ready
▾
🎯
Goal reached
ready
▾
📍
Goal progress
ready
▾
⚡
Multiplier active
ready
▾
💤
Multiplier ended
ready
▾
🚨
Raid
ready
▾
🔴
Going live
ready
▾
Variables: {channel}{game}{title}
📣 Posts the going-live message as a highlighted announcement. Needs the bot re-authorized with the announcements permission — otherwise it quietly posts as a normal message.
🗣️ Bot behavior voice · sub-only when offline · emote spam · gift messages
🗣️ Bot voice
Which bot speaks by default for everything the 24/7 bot posts — commands, song requests, hype reactions, auto-messages, gift lines. Set an individual command's "Says via" to override this for just that one. (Default-bot channels only — needs the Hype bot re-authorized.)
🔒 Auto sub-only when offline
When the stream goes offline, the 24/7 bot automatically switches chat to subscriber-only mode — and switches it back off the moment you go live again. Runs on the worker, so the app doesn't need to be open. Needs the bot re-authorized with the chat-settings permission — until then it quietly does nothing.
💬 Only announce resubs with a message
When on, the 24/7 bot only reacts to a resub if the viewer actually typed a message with it — no message means no chat line, no hype burst, and no Streamerly alert. Matches “if they didn't share it, stay quiet.” The resub still counts toward subs, Partner Plus and the subathon; only the announcement is silenced. Off by default. (Doesn't control StreamElements' own alerts — those are separate.)
🎉 Emote Spam
The 24/7 bot fires a short burst of hype emotes — stream-deck style — on the events you pick below (gift bombs, bits, donations, subs/resubs, raids). Variants rotate so Twitch doesn't drop duplicates, and it's throttled so the bot stays under chat rate limits.
Fire the burst on
⭐ Subs & resubs —
💡 Gift bombs already fire at the "+ gifts" count above. These add the same burst on bits, donations, and subs/resubs. Prime subs count as Tier 1; each tier toggle covers both new subs and resubs of that tier.
💡 Each line is one chat message — put as many emotes on a line as you want (that's how many emotes per message). A long line now stays on one line and scrolls sideways; it only becomes a new message when you press Enter. "Send N messages" is how many lines fire per burst. As a mod the bot can post ~100 msgs / 30s, so 6–12 is safe.
💡 Give bits and donations their own emotes and their own message count so they aren't the sub/gift ones. Leave a box or "Send" empty to fall back to the main set + count above. (The main "Send N messages" up top covers gifts + subs/resubs.)
🎁 Gift Recipient List
After a gift bomb, the bot posts one message naming everyone who got a sub — SE-style. Twitch sends the gifter and recipients separately, so it waits a few seconds to collect them, then posts the list.
💡 {total_gifted} = the gifter's lifetime gifts to the channel (from Twitch — blank when they're anonymous or hid their count). Over ~20 names the rest collapse to "+N more".
📣 Announcements show as a highlighted colored message (like SE). Needs the bot re-authorized with the announcements permission — until then it quietly falls back to a normal chat message.
👋
Gift Recipient Welcomes
SE-style: the bot greets each person who got a gifted sub, one message per recipient. Different from the Recipient List above (one combined message) — run either, both, or neither.
a 50-bomb greets the first N, then stays quiet — keeps the bot under Twitch's chat rate limit.
Pick the league you're watching. Each game plugs into the same predictions + payouts engine — more coming.
● AVAILABLE
🎯
Call of Duty League
12 teams · per-game predictions · auto map pins + payouts
Set up CDL →
SOON
🔫
Valorant (VCT)
map/round predictions · team theming
SOON
🔺
Apex Legends
placement + kill predictions
SOON
🚀
Rocket League
series predictions · team theming
SOON
⚔️
League of Legends
match predictions · team theming
🎯 CDL is first up. The full setup — auto matchup, per-game predictions, map pins, auto-payout & team theming — lands here next. Other games reuse the same engine.
← All games
🎯
CDL Watch Party
Per-game predictions · auto map pins · auto payouts
🎯
Predictions checking…
Lets Watch Party auto-create + pay out predictions and pin map posts.
⚙️ Preview with demo data. The cards/feed below are illustrative — the live engine drives real predictions once enabled.
—
OPT
Texas
OpTic
● LIVE
2–1
Bo5 · G4
FAZE
Vegas
FaZe
🗺️ Map rotation posted + pinned each game
G1Hardpoint· SkylineOpTic ✓
G2Search & Destroy· VaultFaZe ✓
G3Control· HaciendaOpTic ✓
G4Hardpoint· Skyline● LIVE
G5Search & Destroy· Cartelif needed
⚙️ The per-game loop
7:02✅ Pulled matchup — OpTic vs FaZe (Bo5)
7:03📌 G1 → opened “Who wins Game 1?”
7:21💰 G1 → OpTic · paid out · opened G2
7:39💰 G2 → FaZe · paid out · opened G3
7:58💰 G3 → OpTic · paid out · opened G4
8:10🔴 G4 live — locked, tracking result
—⏳ G4 final → pay out → open G5
💬 What chat sees posted by the bot
Streamerly 💰 Game 3 → OpTic! Paid out — Sabsthesav won 18,400 🎉
Streamerly 🗺️ Game 4 — Hardpoint · Skyline 📌
Streamerly 🎯 Prediction OPEN — Who wins Game 4? 👀
BLIITZ OpTic ofc 🟢
Streamerly 🔒 Game 4 betting locked — GLHF
🎯 Game 4 prediction auto · every game
OpTic Texas58% · 88k
FaZe Vegas42% · 64k
⏳ Resolves the moment Game 4 is FINAL → pays out → auto-opens “Who wins Game 5?”. Safety check so nothing mispays.
💰 Paid this series 3 games
G1OpTic ✓142k
G2FaZe ✓96k
G3OpTic ✓118k
🏆 Predictor leaderboard
🥇Sabsthesav79%
🥈BLIITZ73%
🥉KS4_ERA68%
4Jennah59%
🎛️ Automation
Auto prediction every game
Auto-announce + pin maps
Auto-resolve + pay out
Team colors
Data source CitoAPI · real-time
Not affiliated with or endorsed by Activision or the Call of Duty League. Team names & marks belong to their respective owners. Team logos are optional & user-supplied.
▸ Stream Console
Giveaways
Run drawings, pick winners, reward your community
0
Total drawn
0
Avg pool
0
Pool now
🎲
Draw Machine
Configure entry rules, hit pick, announce the winner
DRAW READY · 0 ELIGIBLE
🏆
No winner yet
Configure a giveaway below
🎁 Prize
🏆 Winners
📣 Announce via
Entry Rules
pick one or more — anyone who qualifies via any method can win
💬
All Chatters
Anyone who typed during the stream
— eligible
🎁
Gifted Sub Donors
Only viewers who gifted subs this stream
— eligible
✨
Bit Cheerers
Anyone who cheered bits this stream
— eligible
🎫
Ticket Mode
More subs/bits = more entries (weighted)
— tickets
⚡
!enter Command
Viewers must type !enter to join
requires window
📈
Accumulator NEW
Entries roll up over weeks/months — works with 24/7
0 lifetime entries
📈 Accumulator settings
Entries older than this don't count.
0.2 = 1 entry every 5 gifted subs.
1 entry per 100 bits cheered.
Streamerly remembers every gifted-sub and bit event for the window length, even across streams + restarts. Once the worker's deployed, this keeps accumulating with the app closed.
🧾 Who has tickets (and why)
📣 Announce & entry alerts NEW
For the pool modes (Accumulator / Gifters / Bits / Tickets). Announce & start posts your opener and turns on live alerts — then when someone gifts or cheers, the bot replies with how many entries they earned. A gift bomb sends one message, not one per sub. End stops the alerts. (Runs on the 24/7 bot.)
🎬 Start announcement
🎟️ When someone gifts (reply)
💎 When someone cheers (reply)
Variables: {user}{earned} (this gift/cheer) {total} (their entries so far) {gifted}{bits}{prize}. Leave a reply empty to skip it.
🔁 Re-announce the opener everyminutes (0 = off)
While live, the bot reposts your Start announcement on this timer so late viewers see it. Set it back to 0 to stop. (First repost lands one interval after you start.)
⚪ not running
Filters NEW
Comma-separated Twitch names that can never win (their entries stay listed, they're skipped at draw time). Syncs to everyone on this channel.
Filters apply on top of the entry mode. Mods/self are detected from your team list; bots are detected from the configured bot accounts. No-repeat uses the Winner History below.
Announce & Window
Bot announcement template
Variables: {winner}{prize}{pool_size}
Entry window (for !enter mode)
Window: closed
Duration:
When open, viewers type !enter in chat to join. Pick a duration (seconds → days) or “Keep open” to run it across multiple days — the 24/7 bot keeps collecting entries even if you close the app. Reopening starts a fresh pool.
📣 Chat announcement (posted by the 24/7 bot)
Remind everyminutes (0 = off)
✅ Confirm each entry (bot replies to the viewer)
The bot posts the top line when you open the window, then the reminder on repeat while it's open, and confirms each new entrant. {keyword} = the entry command, {prize} = your Prize above, {count} = how many are in so far, {user} = the entrant (confirmation only). Leave a box empty to skip it.
Who's in the giveaway (0)
No entries yet — open the window and viewers can type !enter.
Hand-add someone the bot missed (e.g. a gift that came in while the app was closed). They ride on top of whatever mode you're running, are saved in this browser only (other screens won't show them), and clear when you hit Clear entries. Remove hand-added entries only (keeps the live giveaway running).
Winner History
last 10 drawings
no giveaways run yet
🎵
TikTok LIVE
unofficial connector · reads chat · gifts · likes
LIVE🧪 EXPERIMENTALconnected as @realize_sg
👀 Live viewers
2,418
▲ 6%
❤️ Total likes
1.24M
+8.2k/min
🎁 Gift coins
18,920
≈ $237
🧑🤝🧑 New follows
+312
this stream
💬 Live chatstreaming
Chat is read-only on the connector…
❤️ Likes this stream🤍 💗 💕
1,240,318
tap-to-like stream · updates live · ▲ +8.2k / min
🎁 Top giftersby coins
😍 Top likersby likes sent
🧪 Experimental · desktop only. Powered by the community live-connector (no official TikTok API). Isolated so it can never affect the rest of the app. Optional add-ons: gifts → loyalty points · merged Twitch + TikTok chat.
KickPLANNED
Chat, subs & gifts, and alerts from your Kick channel — coming soon.
🚧
Coming soon
Kick chat integration, sub & gift tracking for the timer, and Kick-specific alerts — running alongside your Twitch stream.
YouTube LivePLANNED
Live chat, members and super chats from your YouTube stream — coming soon.
🚧
Coming soon
YouTube Live chat, new members, and Super Chats — feeding the timer/alerts alongside your Twitch stream. Uses YouTube's official Data API.
Facebook GamingPLANNED
Comments, stars and reactions from your Facebook stream — coming soon.
🚧
Coming soon
Facebook Live comments, Stars, and reactions — alongside your Twitch stream. Uses Facebook's official Graph API.
MultiChatLIVE
Your command center — every channel's chat side by side, live sub/gift/bit events, hype meter, viewer cards & mention pings.
⚡ Streamerly Chat
🔍 M📜 Events 0⚙ SettingsNot connected↻
📊 All watched channels · this session ← Show all channels
⭐ Subs
0
🎁 Gifted
0
💎 Bits
0
💰 Tips
—
❤️ Follows
—
🔥 Est. total
$0
🔥 Hype
live chat velocity across all columns
👤 Viewer card click any name
Click any username in chat to see their card.
🛡 AutoMod queue PREVIEW
rando_444· held: link
check out my channel twitch.tv/…
Live approve/deny lights up on channels you moderate (needs your Twitch connect).
🔔 Pings 0
Mentions of your watch words show here.
👀 Watch words ⚙ edit
🎛 Stream controls PREVIEW
⏱ Subathon
—:—:—
♫ Now playing
— on your connected channel —
📣 !so🎬 Clip📊 Poll⚡ Command
📜 Events log ✕
All⭐ Subs🎁 Gifts💎 Bits🚀 Raids
Newest first · kept across channel switchesClear log
⚙ MultiChat settings ✕
📺 Channels
+ Add
🔔 Watch words — pings when these are said in any channel
+ Add
🎨 Message highlights Reset
Everything here saves automatically and applies live.
Overlay
The browser source you add to OBS — timers, goals, alerts and counters composited on your stream.
My Overlays0
Templates—
Marketplace—
🎛 Controls
OBS sync: checking…
Add
Checking OBS…
📭
No overlays yet
Click + New to start one from scratch — or browse Templates to fork a starter.
Editing
🎨
Live preview
subs: 0bits: 0
✥ drag to move · ◢ corner to resize · click a piece to edit it
This overlay has no customizable fields. Add some in the Code tab.
{{ fields }} from your Settings tab are substituted live.
Streamerly state (timer, goals, events) is available via streamerly.on('update', …).
Overlay metadata
Type
What kind of overlay this is. Affects the auto-suggested marketplace category.
Icon
emoji
Shown on the card thumbnail before any HTML is added.
Description
What does this overlay do? Shown on marketplace listings.
Custom fields · expose {{key}} variables
No custom fields yet. Add one to expose a {{variable}} for the Customize tab.
Streamerly exposes live event + counter data inside your overlay via streamerly.data and streamerly.events. Use any of the variables below in your Code tab — no setup needed.
Counters · streamerly.data.<key>
Live count · data-sl-count="{{ count }}"
Every overlay has a Live count field — what to count (subs · gifted · bits · donos · follows · raids) and the range (today · week · month · year · last7 · last30 · stream · since · all, plus sincedate and custom date ranges). Week and month are calendar windows, same as Twitch.
Show it anywhere, no JS: <span data-sl-count="{{ count }}">0</span>. Or hard-code one: data-sl-count="gifted:month" · data-sl-count="bits:custom:2026-09-01:2026-09-30".
In JS: streamerly.count("subs:last30") or streamerly.data.counts.subs.month. Tips are whole dollars. Full list: 📖 API reference (Code tab).
Valorant record · streamerly.data.valorant.<key>
.wins · .losses — today's ranked W/L
.tier — current rank (e.g. “Diamond 2”)
.rr — rank rating (0–100) · .net — net RR today
Same live data as !record / !rank. null until !setriot is set.
Subathon timer · streamerly.timer.<key>
Events · streamerly.events.on('<event>', cb)
Field values · streamerly.fields.<key>
● Saved · auto-saves as you type
Browse
My submissions
Review queue
Overlays you've submitted to the marketplace. Approved overlays appear in Browse; pending and rejected stay private until they pass review.
Admin only. Click a submission to inspect its HTML/CSS/JS and approve or reject with notes.
📺 OBS Browser source
Paste this URL into a Browser Source in OBS. One URL — all your overlays render through it.
http://localhost:3847
🎛 Overlays · 0
Toggle visibility, copy individual URLs, or test each one without going live.
Loading…
⚡ Test events
Fire a fake event to see how your alerts and overlays react. Nothing real fires in chat.
🔌
Connections
checking services…
checking…
📡
All systems go
— services healthy
OK
⚠
Service needs attention
—
🔐
Twitch Authorizations
powers 24/7 features · broadcaster only
🎮
Broadcaster 24/7 token
checking…
One-time Twitch connect — must be signed in as the broadcaster. Powers !game / !title, !clip & auto-clips, 24/7 AutoMod enforcement, and Watch Party predictions — all even when this app is closed.
🎮Game & Title—
🎬Clips (24/7)—
🛡️Moderation (24/7)—
🎯Predictions—
📣Announcements—
📡
Offline Event Tracking
checking…
The other one-time Twitch connect — also must be signed in as the broadcaster. Captures subs, bits, raids & follows server-side 24/7, and powers on-screen alerts, !followage, leaderboards, recaps and Partner Plus tracking.
🤖
Discord Bot
community server integration
🤖
Streamerly Discord bot
checking…
Posts go-live announcements, runs !pingcord, and syncs Twitch roles & points into your Discord server. One-time setup creates the bot and invites it to your server.
Go to discord.com/developers → New Application → name it “Streamerly”.
Bot tab → Add Bot → Reset/Copy Token. Send that token to your server admin to put in the worker’s env as DISCORD_BOT_TOKEN (it’s a password — never paste it in chat or the app).
Under Privileged Gateway Intents, turn ON Server Members Intent (needed for role sync). Leave Message Content OFF.
OAuth2 → URL Generator: tick scopes bot + applications.commands; permissions Send Messages, Embed Links, Create Public Threads, Manage Roles, Mention Everyone, Read Message History. Open the generated link and invite the bot to your server.
In your server’s Roles settings, drag the Streamerly role above every role it will assign.
Come back here and hit ↻ Refresh — your server should appear below to map to a Twitch channel.
Role icons (your logos) need Discord server Boost Level 2 and are uploaded in Discord’s own Roles settings.
Server mapping and every feature — go-live, !pingcord, welcome messages, and role sync — live in the Discord tab →
Configure
Loading…
🖥
This PC — OBS & desktop features
Streamerly Adapter · optional
🖥
Streamerly Adapter
not set up
A tiny background app for your PC that lets Streamerly control OBS — switch scenes, show/hide sources, save replay clips — straight from this web app, plus store your OBS password locally. Everything else already runs in the cloud; this is only for features that need your computer. One-time setup, ~9 MB, nothing to keep open.
🟢
Services
— services
💬
Twitch Chat (IRC)
—
not connected Required for chat commands (!timer, !addtime, etc.) and bot messages.
💸
StreamElements
—
Tip socket — donations arrive as live donation events.
Donations arrive as live donation events — feeding totals, goals, incentives, and overlays. Subs/bits/follows already come from Twitch, so only tips are ingested (no double-counting).
Spotify
—
Not connected — connect to show now playing in app and overlay
Spotify limits how many accounts can use one developer app — this connects your channel through your own free app instead (only you use it, so no cap).
1. Create an app at developer.spotify.com/dashboard · 2. In its settings, add this Redirect URI: … · 3. Paste its credentials below and Save · 4. Hit Connect to re-link.
🌐
All channels
operator view · watchdog-tested
📜
Recent events
Connection events will appear here.
🔗
Social Links
used by {discord}, {twitter}, {youtube}, {tiktok}, {instagram}
Viewer Hub
A public, read-only page with your leaderboards — viewers need no login to view.
📊
Public companion page
Off by default. Turn it on, pick what's shown, then share your link.
— loading…
Your public page link
leaderboards.streamerly.app/…
Page appearance
Default range:
Today
Week
Month
All
Rows:
10
25
50
🎀 Color palette — the color world for your leaderboards and commands pages. Birthday Cake is white & pink with sprinkle confetti.
💜 Neon
🎂 Birthday Cake
🌸 Blossom
🌊 Ocean
🖤 Midnight
🎨 Background motion — an ambient animated background for your public pages. Keep it Subtle so it never fights your boards. Confetti uses your palette's colors.
None
🌌 Aurora
🌫️ Nebula
✨ Starfield
🔥 Embers
🟪 Grid
🔦 Spotlight
🎉 Confetti
Intensity:
Subtle
Vivid
What's public
⌨️ Public commands page
a colorful page of every command viewers can use — auto-sorted into tabs
🏷️ Commands auto-sort into tabs by what they do (a {setgame} → Game, a clip → Clips). Add your own tabs by tagging a command (Commands tab → its ✎ → Tags).
🎰 Gambling board:
Hidden
Net only
Full
“Net only” shows winners, not losses.
Stream schedule
📅 Show a weekly schedule on your page
a clean stream schedule right on your leaderboards page — auto-highlights today, viewers can flip to their own timezone and save a PDF
— off
Heading (optional)
Your timezone
Slot times are entered in YOUR timezone.
Note (optional)
🌍 Show viewers their own timezone
default the schedule to each visitor's local time
🛌 Show rest days
off = hide days with no stream, so only your live days show
Bottom note (optional — shown under the schedule)
Weekly schedule
Toggle a day on to stream it; off = rest day. Leave a time blank for “Time TBA”. The 🎉 Special event row at the bottom is an optional one-off bonus stream.
🖼️ Share images: on your page, the schedule has one-tap PDF, Discord (landscape) and Story (vertical) downloads — flashy branded cards ready to post.
💬 Post to Discord
post your weekly schedule to your server & keep it updated
Needs the Streamerly Discord bot in your server (Connections → Discord). Re-posting edits the same message instead of spamming a new one.
Incentives page
🎯
Incentives page
A clean, ad-free page of your subathon incentives. Upload a graphic, build a live auto-checking list, or both. Separate from the leaderboards above.
— loading…
Show:
🖼️ Image
Both
📝 List
Page title
Your graphic
🖼️
PNG/JPG, up to 25MB. Hosted on Streamerly — no Imgur, no ads.
🎯 Mirroring your Subathon Goals. This page shows the exact goals and sub total from the Subathon Goals tab. Edit your goals there and they update here automatically. To set custom milestones instead, turn off “Mirror my Subathon Goals” above.
Auto-check off:
Milestones — count → reward
Your page link
app.streamerly.app/i/…
💬 Viewers type !incentives in chat and the bot posts this link.
Minecraft SMP
⛏️ Minecraft SMP page
Server leaderboards, who's online and the death feed on their own public page, fed by the Streamerly Link mod on the server.
— loading…
Public SMP page link
leaderboards.streamerly.app/…/smp
⛏️ Minecraft SMP — Configure
🔗 Linked to 's server. The numbers (players, deaths, leaderboards) come from there; everything below is this channel's own page.
1 · The server owner installs the mod
Drop streamerly-link.jar into the server's mods/ folder (server-side only — players install nothing), start once, then paste the key below into config/streamerly-link.json and restart. Full checklist
— no key yet —
Streamers who share this server (their /smp page reads this server; they keep their own page settings)
2 · What the page says
Application forms (one per role — each "Apply" button opens its own form; blank falls back to the Discord link)
Linked Twitch names (optional — shown next to Minecraft names on the hub)
Players are never required to link their Twitch and are never bounced from the server — everyone's tracked automatically.
Feature sections (show or hide each on the public page)
3 · Leaderboards on the page (tick to show · drag isn't needed, they render in this order)
📺 Live now — streamers (who can appear in the "Live now" section on your public page)
Add a Twitch name and their Minecraft name — they only appear on the page while they're live on Twitch AND on the server. Nobody appears automatically. ★ pins one to the top spot.
twitch.tv/MC:
🎮 Creators & team (invite link — they sign in with Twitch, no Streamerly account)
You control who's in. Pre-approve people you know below; anyone else who opens the link lands in Pending and can't do anything until you Approve them — so a shared link can't let strangers in. Reset kills a leaked link. Approved creators set their own on-stream effects and auto-show in your public "Live now" section. (For Mod Panel access instead, use the Operators box below.)
twitch.tv/
🛠 Operators (Mod Panel access) (invite-only — add a Twitch name; not a Twitch mod, not a Streamerly account)
Operators get the operational Mod Panel (clears, item bans, protected items, dimensions). The nuclear actions (wipe data / ban players) stay off unless you tick Advanced for them.
twitch.tv/
⚠️ Danger zone — start a fresh season
Wipes all tracked SMP data — leaderboards, GearScore & ranks, collection/scrapbook, boss kills, player stats and the monitor history — for a clean slate. Your page settings, key, and the archived past seasons are kept. This can't be undone. Tracking pauses automatically after a wipe so it stays empty (otherwise the live server instantly refills it). Press Resume when your new season is ready.
🎛 Manage Server
In-game celebrations that fire on Twitch events — you pick what happens, players just enjoy it. Confetti and fireworks rain server-wide (over everyone online), and bigger moments reach wider. Needs the Streamerly Link mod (v0.3.1+) on the server.
— loading…
🖥️ Mod Panel — Server Monitor
Read-only view of your server straight from the mod — nothing here can change the server. RAM, CPU, lag and the live log need Streamerly Link v0.3.1+.
— loading…
Twitch panels
Ready-made panel art
Drop these under your channel so viewers can jump to your leaderboards + schedule. Upload under Twitch → Channel → Panels, then link the panel to your page.
320px-ready · transparent corners. After uploading a panel image on Twitch, paste the "Link to" address shown under it — Commands and Schedule panels go straight to that page, the others open the hub.
Settings
App preferences, permissions, backup
🎟️
Beta access
invite your mods
You can invite mods to the closed beta. Generate a code and send it to someone you trust — they redeem it on their first app login.
Out of invite slots — ask @realize_sg for more.
⚡
Performance
resource use
⚡
Performance mode
Pause background refreshes + animations · also toggleable from the ⚡ Perf button in the topbar
🔇
Auto-DnD while streaming
Suppress non-urgent notifications when streamMeta.isLive is true
🗂
Session storage
where stream JSON lives
📁
Sessions folder
🔒
Access & permissions
who can do what
👥
Managers & roles
Managed in the Team tab. Assign someone the Manager role to give them manager-level command access (timer, leaderboard, Spotify controls).
🛡
Mod permissions
Which chat commands your mods can run
🎯
Sidebar tabs
hide tabs you don't use
⚙ Timer, Settings, and Theme cannot be hidden.
💾
Backup & restore
encrypted .streamerlybackup
⬇
Export everything
Settings + loyalty + history + custom themes
⬆
Restore from backup
Pick a previously-exported .streamerlybackup file
💡 Save your backup to Google Drive for safekeeping. The file is encrypted so only Streamerly can read it.
📥
Import from StreamElements
one-time loyalty migration
Bring your viewers' loyalty points, online watch time, and offline watch time from StreamElements into Streamerly. Your JWT token is used once and never stored.
Zero the current session counters without ending the session
⚠
Full reset
Wipes all settings + state for this user. Server data preserved.
💀
Factory reset (local only)
Nukes everything locally — like a fresh install. Server data preserved.
🗑️
Reset MY channel's server data
Wipes your channel's events, loyalty, leaderboard, subathons, stats & wheel spins ON THE SERVER. Keeps your settings/prizes. Only affects your own channel.
🎨
Custom themes
4 slots
Custom 1
click to edit
Custom 2
click to edit
Custom 3
click to edit
Custom 4
click to edit
Edit Custom Theme
📅
Stream History
Loading your sessions…
Sessions
—
—
Total hours
—
—
Total subs
—
across all sessions
Current streak
—
consecutive days
📆
Days streamed
last 7 weeks
MonTueWedThuFriSatSun
less
more
📊
This month at a glance
No sessions this month yet.
📋
All sessions
—
Loading sessions…
—————
🛡
Mod Logs
Audit trail of everything your team has done
Today
—
total actions
Bans
—
all time in range
Timeouts
—
all time in range
Deletes
—
all time in range
📜
Recent actions
—
Loading…
👑
Most active mods
in range
No mod activity yet.
———
📈
Analytics
— streams · — total
Total subs
0
Total bits
0
Donations
$0
Avg viewers
—
📊
Subs over time
⭐
Best & quietest streams
selected range
No sessions in range yet.
📅
Recent sessions
datestreamsubsbitspeak
no past sessions recorded yet
0000
$
Income Tracker
Estimates based on logged events
⚠ estimates only
All-time
$0
since first session
Sub revenue
$0
all tiers combined
Donations
$0
SE + StreamLabs
Bits revenue
$0
cheers converted
📈
Income over time
per session
💰
Per-stream income
last 10 streams
No sessions yet — finish a stream to start tracking.
🥧
Where it's coming from
No income tracked yet.
🤝
Sponsorships + extras
no entries yet
⚙
Payout settings
T1 sub
T2 sub
T3 sub
Bits / 100
After-Twitch-cut payouts. Verify yours via Twitch dashboard → Payouts.
▸ Personalization
Appearance
UI style + color theme — mix and match independently
UI Style
The overall feel of the app
14:23:08
Studio Console
The classic Streamerly look — purple, glow, broadcaster feel
14:23:08
Sleek
Flat surfaces, crisp lines, less visual chrome (Linear/Notion style)
14:23:08
Minimal
Pure black with mono labels — ultra-clean (Vercel/Arc style)
14:23:08
Glass
Frosted glass + aurora gradients (visionOS style)
14:23:08
Hybrid ✨
Frosted depth + soft rounding + neon accents — the cohesive one
⚡ Reduced effects
Disables backdrop blur — better performance on older hardware
UI Size
Make everything bigger — text, buttons, spacing
Scales the whole app · saved per device
How it works: Your UI Style changes the overall layout/surface treatment. Your Color Theme (below) changes the accent colors. They're independent — you can pair any UI style with any color theme. Switches save automatically and persist across reinstalls.
Color Theme
Accents and brand
🔒 Presets
Streamerly
Midnight
Forest
Crimson
Gold
✏️ My Theme
Custom
click to edit
Edit My Theme
⭐ Partner Themes
sabsthesav
LIMITED ⭐
PARTNER
jennah
LIMITED ⭐
PARTNER
iambaylee
LIMITED ⭐
PARTNER
annikaay
LIMITED ⭐
PARTNER
🔔 Alerts
On‑screen alerts for subs, gifts, bits, follows & donations — plus full‑screen green‑screen hype alerts. All through one OBS browser source.
PREVIEW · drag the alert to position it · click a panel to preview it · 1:1 with OBS
⭐
@Viewer
subscribed!
Default alert & tiers — each fires at its own amount
Upload a green‑screen video — it plays edge‑to‑edge and the green is removed automatically (no OBS chroma‑key needed). Pick which events trigger it.
When a viewer redeems a channel‑point reward, play an alert on stream. Type the reward’s exact name, add a sound and/or image / GIF / video, and a message. Tick Green‑screen for an edge‑to‑edge video with the green removed automatically. Uses your OBS Alerts overlay — no extra source needed.
🧪 Simulate a gift bomb ofgifted subsfires exactly what a real gift of that size would — only one alert plays
🔔
Alerts
— alerts · — fired today
overlay ready
Alert types
0
configured
Active
0
armed
Fired today
0
across all alerts
Top alert
—
no fires today
🎬
Preview SELECT AN ALERT TO PREVIEW
Preview · 1280×720
no alert selected — click an alert on the right →
no alert selected·click an alert to load it
🎨
Alert Rack
— alerts
🔔
No alerts yet
Click + below to create your first.
+ New alert
📺
OBS browser source
Add as a Browser Source · 1920×1080 · transparent background
🔊
Global sound
🔊
No audio selected
click to upload · MP3, WAV, OGG
Master vol80%
🎬 Green-screen preview
The checkerboard is transparent on stream — this is exactly what OBS shows with the green removed. It loops so you can check the keying. If green edges show, that's the video's export; a cleaner green screen keys better.
Chat games viewers play with their points — gamble, slots, duels, heists and more, answered by the 24/7 bot.
🎰
Loyalty Gambling
Five chat games viewers play with their points. Off by default — flip the master to enable. Math is configurable per-game; the displayed house edge updates live so you can see whether your settings are viewer-friendly or brutal.
🎁 Give everyone points
Drop points to every viewer — a surprise bankroll before a gambling session. Same as !addpointsall <amount> in chat (mod+).
☠ DANGER — Enable !resetallpoints
Lets a mod run !resetallpoints in chat to wipe EVERY viewer's balance to 0. This cannot be undone. Kept OFF by default. Even when armed, the command makes the mod confirm three times in chat before anything is deleted.
Shared rules
smallest amount viewers can wager
leave empty for no cap (recommended for whales)
per-user, applies to each game
▸ Amounts accept all, half, or k/m/b suffix (e.g. 10k, 1.5m)
🎲!gamble
Single-player bet. Viewer rolls — win → payout, lose → forfeit bet. Sliders below control the math.
Win chance
50%
Win multiplier (bet × N profit)
1.0x
Jackpot rate (0 to disable)
1.0%
Jackpot multiplier
10x
expected return per 1,000 wagered → calculating…
🎰!slots
3-reel pull. Symbols are weighted by rarity (cherry common, seven jackpot). Payouts editable below.
Match
~Odds
Payout
🍒🍒🍒
1 in 19
x
🍋🍋🍋
1 in 64
x
🔔🔔🔔
1 in 512
x
💎💎💎
1 in 512
x
7️⃣7️⃣7️⃣
1 in 512
x
any 2 match
~28%
x
🔴!roulette
European single-zero wheel. Real-world math — 2.7% house edge, fixed. Operator can only enable / disable.
red / black
18/37
1x
green / 0
1/37
35x
single number
1/37
35x
⚔!duel
PvP. Challenger bets, target has N seconds to !accept matching the stake. 50/50 coin flip. Winner takes both bets (minus optional house cut).
Accept window
60s
House cut (% of pot)
0%
💰!heist
Multi-player co-op. First caller opens the vault, others join with their own stakes during the join window. Group rolls one success — winners get bet × multiplier, failures lose everything.
Join window
90s
Max party size
20
Success multiplier
1.8x
Success chance by party size
Solo (1)
%
Small (2–4)
%
Medium (5–9)
%
Large (10+)
%
🎲
More Games
Newer games. Each switches on/off on its own and still needs the gambling master toggle above. House edge keeps the points economy healthy.
🦝!rob
PvP — !rob @user steals a % of the target's balance. Success pays out; failure fines the robber.
Success chance
40%
Steal % of target
15%
Fine on fail % of robber
10%
Max steal 0 = no cap
Cooldown sec
Min target balance
🃏!blackjack
!blackjack <bet> (or !21) then !hit / !stand. Dealer stands on 17; natural blackjack pays 3:2. Enable the advanced moves below: double down (!double, matches your bet for one card then stands) and splitting (!split, turns a matching pair into two hands, each with its own bet).
Min bet
Max bet 0 = no cap
Allow double down
Allow splitting matching pairs
🚀!crash
!crash <bet> <target> — auto-cashout at your target. The shared round resolves once; win bet × target if it doesn't crash first.
Min bet
Max bet 0 = no cap
Bet window
15s
House edge
3%
Max multiplier x
🎲!craps
!craps <bet> makes you the shooter and opens the table — chat rides with you (!pass <bet>) or against you (!dontpass <bet>). Real dice odds: 7/11 wins the come-out, 2/3/12 craps out, anything else sets the point — hit it before a 7. One roll, whole chat sweats together. Ships OFF — flip the pip to deal it in.
Min bet
Max bet 0 = no cap
Bet window
20s
Allow !dontpass the villain lane
Prize Wheel
The wheel — viewers earn spins from subs, bits and donos; prizes land where it stops.
Wheel Spins off
Viewers earn spins by gifting, cheering & donating — you spin the wheel for them on stream.
earn-to-spin
Earn a spin every
gifted ·
bits ·
$ donated ·
bits on Power-ups
· max per person(0 = unlimited)
Each source is independent — set any rate to 0 to turn it off.
Want only Power-ups to give spins? Set gifted / bits / donated to 0 and put your
Power-up bit price (e.g. 5000) in the Power-ups box.
Power-up tracking needs your channel Connected (same access as cheers).
Prize Wheel
SPIN
click “Spin” next to a name →
🎟️ Available Spins
🏆 Contributor Board
🗂️ Session history auto-saved · last 10
Winners are saved automatically when a stream ends and whenever you reset — so a session can’t just vanish. Grab a copy any time as a spreadsheet or a printable PDF.
Chat Commands
!wheelspinSpend a spin you've earned and roll the wheel
!spinsCheck how many spins you have ready
!wheelSee the prize pool & how to earn a spin
!vipwheelspin🌟 Spend a VIP spin and roll the VIP wheel
!vipspins🌟 Check how many VIP spins you have ready
!vipwheel🌟 See what's on the VIP wheel & how to earn a VIP spin (also !vipprizes)
Live chat trivia — the bot asks questions, viewers answer by typing. Fastest correct gets a bonus; harder questions score more.
Trivia off
When on, viewers show on your public trivia leaderboard. Start a game any time below or with !trivia in chat.
Game live in chat
⚙️ Game settings
Board = all questions on the OBS overlay at once, chat answers any. Classic = one question at a time in chat. Climb = an escalating ladder — clear a board to level up, harder & faster each time.
🖥️ Board💬 Classic🧗 Climb
How many tiles show at once (4–12)
Seconds the whole board stays open
How many questions in one round
How long chat has to answer
Seconds after the answer reveal
Off = mods type !trivia next
Questions on each board (4–10)
Seconds on Level 1
Seconds shaved off each level (the speed ramp)
Clock never drops below this
% of the board that must be cleared to climb
End the run, or spend a life and retry the level
🏁 End run💔 Lives
Retries before the run ends
0 = endless; otherwise you summit (win) at this level
Auto-start a new game on a loop when you're streaming — great for overnight / AFK
Minutes between auto-started games
🏆 Scoring
× the question's difficulty (1–3)
Extra points for the fastest right answer
Which difficulties to draw from
EasyMediumHard
Question Packs
✨ Generate a pack with AI
Type any topic and get a ready-to-play pack of fresh questions — CDL rosters, a movie, your game, anything. Each generate adds up to 50 questions; run it again on the same topic to stack up to hundreds.
Loading packs…
Your Questions
✍️ Add a question
⬆ Bulk import (CSV)
One question per line: question, answer, alternates (; separated), difficulty, category
Chat Commands
!triviaMods: start a game · Viewers: check your score
!trivia stopMods: end the game and post the winners
!trivia nextMods: reveal the answer & go to the next question
!trivia score [@user]Your (or someone's) total points & rank
!trivia topThe top 5 trivia scorers
🥇 Top scorers
No scores yet — start a game to get chat playing.
Ranked Ladder
🏅 Ranked standings
A season-long climb — playing Trivia earns RP (more for placing well) and viewers rise through Bronze → Grandmaster. Resets each month. Chat checks with !rank / !rankings.
No ranked activity yet — play a game to start the ladder.
🏅
On-stream Ranked leaderboard
Add it as a Browser Source in OBS — shows the live ladder + a rank-up flash
🏅 Ranked board See-through
Transparent — drop it over your scene. Shows the season's top climbers with their rank crest, and flashes a celebration when someone ranks up.
In OBS: + Source → Browser, paste the URL, set size to 1920 × 1080. It hides itself until the ladder has activity this season.
🎲
Pack
📺
On-stream Trivia overlay
Add one as a Browser Source in OBS — pick the look that fits your scene
🎬 Board overlay See-through
Transparent — drop it straight over your gameplay/cam. The board, header and standings float on top; the rest of your scene shows through.
🎨 Trivia Scene Full screen
A finished, opaque background — for a dedicated "Trivia" scene in OBS (a break screen or standby). Not meant to sit over gameplay.
In OBS: + Source → Browser, paste a URL, set size to 1920 × 1080. The overlay wakes up when you turn Trivia on and swaps to the board when you start a game.
Who Said It
A real line from your chat drops on stream with the name hidden — chat guesses which regular typed it. Lines are auto-collected from your regulars, filtered for junk, and wait for your ✓ before they ever appear. Feeds the same Ranked ladder as Trivia.
Who Said It off
When on, quotable lines from your regulars are collected for review below. Start a game any time here or with !whosaidit in chat.
Game live in chat
⚙️ Settings
Silently bank good lines from regulars into the review queue below.
Collected lines stay Pending until you approve them. Recommended on.
Only chatters this active can be quoted — never a random stranger.
Off keeps it about the viewers.
The real author + decoys (2–6).
High-stakes — a wrong guess costs points (and hurts their Ranked climb).
Wins climb the same season Ranked ladder as Trivia.
Starts a game on its own every few minutes while you’re streaming — 24/7, hands-off.
🏅 Top guessers
No scores yet — play a game to fill this in.
Quote Review
Pending 0Approved 0Rejected 0
Loading…
📌 Add a quote by hand
Plant a legendary line yourself — it’s approved and playable right away.
Chat Commands
!whosaiditMods: start a game · Viewers: how to play
!whosaidit stopMods: end the game and post winners
!whosaidit nextMods: reveal now & go to the next round
!whosaidit topThe top Who Said It scorers
A · B · C…Viewers guess by typing the letter — or the person’s name
📺
On-stream Who Said It overlay
Add one as a Browser Source in OBS — pick the look that fits your scene
🎬 Overlay See-through
Transparent — drop it straight over your gameplay/cam. The quote card, header and standings float on top; the rest of your scene shows through.
🖼️ Scene overlay Opaque
Solid animated background — perfect as its own full "Who Said It" scene or a starting-soon/BRB card.
In OBS: + Source → Browser, paste a URL, set size to 1920 × 1080. The overlay wakes up when you turn Who Said It on and shows the quote card when you start a game.
▸ Loyalty · @realize_sg
Loyalty Points
Server-canonical ledger · synced with worker · connecting…
⏱️ Manual offline watch time
StreamElements doesn't export offline watch time, so add it here for the viewers who care. One per line: username minutes — minutes also accept 2h, 1h30m, 90m.
Mode:
While this is on, type !offline @user in chat and the bot grabs
StreamElements' reply automatically — no copying numbers. Each viewer is captured
once, so run !offline for everyone you want, then turn it off.
Re-capturing someone means clearing their offline time first.
Total viewers
0
tracked in your ledger
Points in circulation
0pts
— earned today
Spent today
0pts
no redemptions yet
Top earner this week
—
no data yet
💰
How points are earned
server-side · 24/7
The worker bot grants these even when your app is closed. Toggle a source to arm; type to edit the rate.
synced
💬Chat
pts / msg
awarded today0
👀Watch time (live)
pts / min
awarded today0
💤Watch time (offline)
pts / min
offline accrual—
🎁Sub gift
pts / gift
awarded today0
💎Bits
pts / 100 bits
awarded today0
💸Donations
pts / dollar
awarded today0
Used everywhere viewers see their balance. Renames in real time.
Fired when a viewer types !points. Variables: {username} {points} {currency} {rank}
Active chatter window10 min·Watch time uses the active-chatter heuristic — viewers who chat in the last 10 min count as "watching" (no Twitch API polling required).
🔥
Daily Check-in
milestone rewards
Viewers redeem the channel-point reward to check in. Streamerly tracks lifetime + per-stream streak; milestones grant bonus loyalty points on top.
Today
0
this stream
+0 in last hour
0
all-time
0 viewers tracked
0
active streaks
3+ in a row
0
top streak
—
🔥 Capture Twitch watch streaks
When a viewer shares their Twitch watch streak (“on an N-stream watch streak”), Streamerly grabs the number and remembers it. We only ever see it when they share, so it only goes up — it self-heals to the real streak over time, same as gifted-sub totals. Off by default. This is Twitch’s watch streak, separate from the check-in streaks below. A leaderboard board and a !watchstreak command can be added on top once you're capturing.
Streak leaderboard
no check-ins yet
Bot messages
Reward name (must match Twitch exactly)
✅ Check-in message
Variables: {username} {streak} {total} {rank}
💔 Streak broken
🎉 Milestone
Fires when a viewer hits any threshold in the milestone table on the right.
🏆 Streak milestones
Each row: viewers who hit that day-streak get the milestone message AND the listed loyalty points (one-shot, on the day they cross). Leave empty for no per-milestone bonus.
Bonus on every check-in
Bonus:
Award 10 loyalty points per check-in
🏆
Viewers
live · mods see this too
Top earners across your channel.
— viewers
Viewer
Points
Watch (live)
Watch (offline)
Last seen
no viewers yet — earn or import to populate this list
🎁
Rewards & Redemptions
atomic · audit-logged
Race-safe redemption (two simultaneous clicks can't drain past zero). Every spend lands in the audit log; mods can refund.
Catalog— rewards
Recent activity—
loading…
🔄
Sources & sync
re-runnable
Where points come from outside the app. Streamerly's own grant path runs on the worker 24/7 — these are the extras.
📥
StreamElements import
Pull your viewers' loyalty points + watch time from SE. Re-run any time — server merges with replace / add / higher conflict modes.
— never imported
JWT used once, in memory only, never written to disk. Token is the same SE secret your tip socket uses.
💸
StreamElements tips
Tips arrive as donation events on your dashboard. Per-dollar loyalty grant rate is planned (donations don't auto-grant points yet).
— not enabled
socket status reflects the live worker connection
Chat Integration
Built-in chat commands
!pointsCheck your balance
!leaderboardShow top 10 earners
!rewardsList available rewards
!redeem <name>Spend points on a reward
!give @user 50Gift points to another viewer
Redemption announcement
Fires when a viewer successfully redeems · Variables: {user}{cost}{reward}{balance}
🎰 Gambling commands
!gamble <amt>Tiered roll — win, lose, or jackpot
!slots <amt>Spin the reels
!roulette <amt>Bet on your odds
!duel @user <amt>Challenge a viewer — they reply !accept / !decline
!heist <amt>Team up to crack the vault
!statsYour gambling P/L (or !stats @user)
!raffle <amt> [secs]Mod: start a points raffle — viewers !enter, one random winner takes the pot (default 60s)
!enterJoin the raffle that's currently running
!addpointsall <amt>Mod: give points to everyone in chat right now
!takepointsall <amt>Mod: take points from everyone in chat right now
☠ !resetallpointsDESTRUCTIVE — wipes EVERY viewer's balance to 0, cannot be undone. OFF by default; enable it in the Danger Zone below. Mod must confirm 3× in chat before it fires.DANGER
Set odds, payouts, limits & cooldowns in the Gambling section below · live only while the gambling master toggle is on.
Top Gamblers · updating…
Net P/LWageredWin rate
#viewerbalancewatch timetier
🛠
Mod tools
permission-gated
Bulk actions on the entire viewer list. Use sparingly — most of these can't be undone.
🎁 Grant to all
Add N points to every viewer with a row — sub event, surprise drop, milestone.
ready · POST /loyalty/grant-all
🧹 Decay inactive
Deduct N points from anyone not seen in X days. Use sparingly.
ready · POST /loyalty/decay
🔁 Reset one viewer
Zero out a single viewer's points (e.g. ban cleanup). Atomic + audit-logged.
open the viewer's drawer to deduct their balance
📊 Export everything
CSV: all viewers + balances + watch time + last-seen + source. Same as the header button.
ready · runs in browser
✓ Verify totals
Recompute stream + subathon counters from the events log to confirm the cache matches truth.
ready · POST /verify
🗑 Drop SE imports
Remove all rows where source = streamelements. Won't touch organic Streamerly earners.
ready · POST /loyalty/drop-imports
▸ Stream Console
Player Queue
Viewers get in line to play WITH you · !join → a mod types !next to pull them
0
In line
0
Playing
0
Pulled today
Player Queue enableddisabled
While it's off, none of the queue commands do anything — so a channel that already uses !next/!play/!clear for something else keeps those. Turning it on claims those command names for the queue.
Run the line
open
Pulling here @tags the player in chat with the ready-timer — same as typing !next.
The Line
0 in line
🎮
nobody in line yet — viewers join with !join
Queue Rules
Ping “you’re up” on Discord (linked viewers only)
Commands
🎮 Viewers
!joinhop in line (also !q, !play)
!leavedrop out
!spot“you’re #5, ~18 min” (!position)
!readyconfirm when pulled (!here)
!lineuphow many waiting + who’s up
🗡️ Mods
!nextpull next & @tag (!nextperson)
!noshowskip the pulled no-show, advance
!randompull a random person
!bump @usermove someone up
!remove @useryank someone (!kick)
!addplayer @usermanually add (raffle winners)
!move @user 3set exact position
👑 Setup
!openopen the queue for joins
!closestop new joins (line stays)
!clearqueueempty the whole line
!lobby 4pull N at once for a party
!priority subsset who skips the line
▸ Stream Console
Song Requests
Let chat queue songs · Spotify, YouTube, or any URL
0
In queue
0
Played today
○
Spotify
Song requests enableddisabled
DJ Booth
Now playing on your Spotify · viewers request via !sr
NOT CONNECTED
♫
—
Connect Spotify on the Connections page
0:00—:—
♫ Spotify
▶ YouTube
⛓ Any URL
Request Queue
0 in queue
🎵
queue is empty — viewers can request with !sr [song]
Request Rules
limits, cooldowns, who can request
Who can request
Min loyalty points
0 = free request
Limits
Max per user
Per stream
Max queue size
Hard cap
Max song length
Minutes
Cooldowns
Per-user cooldown
Minutes between requests
Global cooldown
After any request
all values in minutes · 0 = no cooldown
Paid Requests
Let viewers pay for songs. Each method works alongside the free access rule above — paying skips the per-user limit, but the queue cap, song blocklist, and max length always apply. Failed requests refund automatically.
💎 Bits
Cheer at least this much with the song in the message — “Cheer300 mr brightside”
🎟 Song ticket rates
These only apply when Who can request = 🎟 Ticket holders. On every other setting !sr is free and no ticket logic runs. Tickets accrue only while that mode is ON — from the moment you first enable it, never from past history. Separate from wheel tickets; wheel prizes can award them; mods request free; failed songs refund.
1 🎟 per gifted subs
1 🎟 per bits
1 🎟 per $ donated
1 🎟 per ⚡ Power-up bits
🎟 cost per song
0 = that source earns nothing. Want only Power-ups to earn song tickets? Set gifted / bits / donated to 0 and set a Power-up bit price (needs your channel Connected — same access as cheers).
🏆 Ticket holders
Top balances — support + 🎡 wheel wins − songs bought. Loads when you open this tab.
—
🪙 Channel points
Auto-creates a “🎵 Song Request” reward at this cost — viewers type the song in the redeem box; failed songs refund the points. To make points the only way to request, set “Who can request” to Channel points only.
Bot Responses
Reply when song is added
Variables: {username}{title}{artist}{position}
Reply when a PAID song is added
Used for 💎 bits, 🪙 points and 🎟 ticket requests. Variables: {username}{title}{artist}{position}{paid} — {paid} becomes “300 bits 💎” / “channel points 🪙” / “1 🎟 spent, 4 left”
Reply when out of tickets
Only sent in 🎟 Ticket-holders mode. Variables: {username}{cost}{rates} — {rates} lists your earn rates (“every gifted sub / 300 bits / $5 donated”)
Chat Commands
!sr <song>Request a song — searches Spotify or accepts a URL
!songWhat's playing right now
!queueShow next 5 in queue
!wrongsongRemove your most recent request
!skipSkip current songMANAGER+
!songpause / !songresumePlayback controlMANAGER+
!volume 0–100Set Spotify volumeMANAGER+
Blocklist
block users, songs, or artists
nothing blocked
▸ Highlights Studio
Clips
Top clips · top clippers · !clip chat command
—
total clips
—
this week
—
top clipper
—
total views
🎬
Featured Clip
Showcase a clip on stream · use as overlay element
No clip selected — pick one from the list below
—
?
No clip
—
Top Clips
this week
Loading clips...
Top Clippers
this week
No clips yet
💜 Loyalty integration — viewers earn 50 points per clip they create (toggle in config →)
🔒
Clip settings are view-only for you
You don't have the Edit clip settings permission on this channel, so !clip & auto-clip settings can't be changed here. Ask the broadcaster (or a manager) to grant it from the Team panel. The clips list & leaderboard still work normally.
!clip Command
enabled
When viewers type !clip, a clip of the last 30 seconds is automatically created.
Enabled
Cooldown sec
Mod-only
Sub-only
Min follow age hr
Award points pts
Bot Response Template
vars: {username} {clip_url} {clip_title}
Auto-Clip Big Moments
Master switch for all auto-clips. Turn it off to stop the bot auto-clipping without losing your per-event settings below.
Gift sub bomb
≥ subs
Big bits cheer
≥ bits
Large donation
≥ $
Goal completed
any
Raid received
≥ viewers
Heads up — clipping requires the clips:edit scope. Authorize (or re-authorize) Twitch in Connections → Twitch Authorizations to run !clip & auto-clips 24/7 on the bot — they work even when this app is closed, and mods can clip too. Clips are created with the broadcaster's credentials on the streamer's behalf.
🛡
AutoMod
Filters · word blocks · link protection · spam controls
🛡️
24/7 moderation checking…
Lets AutoMod enforce your rules 24/7 — even when this app is closed.
Messages today
0
all chat msgs scanned
Filtered today
0
caught by rules
Top trigger
—
most-fired rule
Active rules
0
armed
⚠️
Heads up — AutoMod is new in v1.1. Start in Test Mode below to preview what your rules would catch before turning them on for real. False positives are easier to fix when nobody's been timed out!
🛡
AutoMod Engine
Master switch for all rules — toggle off to disable everything at once
● Off
0 rules armed
Mod actions performed by
Test mode
Off — actions are real
Blocked Words & Phrases
0 active
Messages containing these words/phrases will be auto-moderated. Use wildcards* at start or end for partial match (e.g. crypto* catches "cryptobro").
No blocked words yet — add some above or use a quick pack below
Quick add — common spam patterns
Link Protection
mode: off
Auto-delete chat messages containing links. Pick a mode based on how strict you want to be.
🚫 Block all links
Only links from allow list + trusted users are kept. Strictest, safest.
⚠ Block bad links
Only block domains on the block list. Permissive.
○ Off
Don't auto-moderate any links. Manual mods only.
Allow list — these domains can be posted by anyone
Block list — always blocked, even from trusted users
Who Can Chat
raid-troll protection
Restrict who can send messages based on follow status and account age. Best single defense against raid trolls.
Minimum follow time
Users must have followed your channel for at least X hours before they can chat.
hours
Minimum account age
Twitch accounts younger than X days can't chat. Stops fresh throwaway accounts.
days
Follow Guard
follow-bot protection
Twitch can't block a follow, so this catches a flood and stops it from spamming your alerts or faking your follower count. A follow-bomb is often the front of a hate raid — Shield Mode locks chat down when one hits.
Wave threshold
Flag a follow-bot wave when this many follows arrive inside the window below.
follows
Within
The sliding time window the threshold is measured over.
seconds
Mute on-stream follow alerts during a wave
Don't count wave follows in your stats / recap
Trip Twitch Shield Mode on a wave
Shield Mode needs a one-time reconnect (Connections → re-link event tracking) to grant the permission. Until then this option is saved but stays inactive.
Spam Detection
🔊 Caps lock filter
Delete messages that are mostly uppercase (e.g. "HELLO EVERYONE I LOVE THIS STREAM"). Ignores short messages so "WOW" still gets through.
Threshold≥ 70%
Min length≥ 10 chars
More spam filters (emote spam, repeated messages, long messages) coming in v1.1.
✨ AI Context Filter
Off
💳
This uses AI credits. Unlike the word/link/caps rules (which are free and instant), the AI filter reads every message your other rules don't catch and asks the model whether it's a violation — so it consumes credits while you stream.
It's not required — the free rules handle most moderation. Turn this on only if you want it to catch subtle stuff word-lists miss (sarcasm, coded harassment, context). A daily cap below limits the spend.
✨ Enable AI context moderation
Runs after your free rules. Only messages that pass everything else get sent to the AI. Trusted users are always skipped.
Sensitivity
Action when flagged
What to catch
😠 Harassment / bullying
🚫 Hate speech / slurs
🔞 Sexual content
⚔️ Threats / violence
📢 Spam / self-promo
Daily cap1500 checks/day
Once the cap is hit, AI checks pause for the day (your free rules keep running). Rough cost: ~1 credit per 100 messages checked. On your own API key (BYOK) there's no cap — it bills your Anthropic account directly.
Trusted Users
0 manual
Trusted users bypass all AutoMod rules — their messages never get deleted, timed out, or banned by Streamerly.
Auto-trust by role
👮 Channel moderators
⭐ VIPs
💜 Subscribers
📣 Founders
No manually-trusted users yet
Action Log
last 24h
Nothing filtered yet — AutoMod's actions will appear here as they happen
🛡️ Suspected Chargebacks
Twitch never says who charged back — this infers it from revoked subs & gift bombs. Report-only; nothing is changed automatically.
No suspected chargebacks 🎉
How to read this:Certain = the payment processor confirmed a refund. High = a sub ended within days of purchase or a whole gift bomb was revoked together. Medium = a sub ended mid-cycle (subs normally run to their renewal date). Low = the sub's start predates tracking. Bits chargebacks can't be detected — Twitch emits no event for them. Only subs revoked after this feature was enabled can appear.
AI & Billing
Your AI usage, limits, and credits — every generation (command, alert, goal) uses 1 credit.
loading…
Use your own API key 🔑
Paste your Anthropic key and generations run on your account — unlimited, billed to you directly, and they don't touch Streamerly credits. Get one at console.anthropic.com.
Buy credits
Top up when you run low. Card checkout is coming soon — for now the owner can grant credits.
Admin · all channels
Users — appear here once they use AI or you set them up
🛑 Blocked AI attempts
Who tried to generate disallowed content (slurs / NSFW / hate). Refused before it could go on stream. Top offenders first.
Team
Who can help run this channel — managers and mods, with per-person permissions.
Show hidden (0)
Show bots (0)
🛡️
Developer Access
Logged in as — full dev access enabled
🛰️ Watchtower · ops crew
Loading…
📣 Send alerts to a Discord channel
EnabledAlert on
The Streamerly Discord bot must already be in that server. Findings at or above the chosen severity post there — recoveries always post.
🗃 Archived sections
Pre-launch declutter: Analytics, Stream History, Mod Logs, the Multistream rail, and the beta panels (Codes, Testers, beta stat strip, Who's-on roster, invite chain) are hidden from navigation — nothing is deleted, panels and data are untouched. Flip this on to bring them back on this device. The Beta requests inbox stays live. (AI & Billing now lives in the owner-only Admin area.)
Show archived sections
🍔 Application menu bar
The File / Edit / View menu bar is hidden in shipped builds so end users can't open DevTools or use other Electron defaults. Toggle it on here when you need the standard menus + accelerators (Reload, Toggle DevTools, etc.) for debugging. State resets to hidden on app restart.
Feedback Submissions
View all bug reports and feature ideas submitted by users.
Whitelist Manager
loading...
🔌 Worker connection
Set the base URL of the streamerly-worker, then run the test. Defaults to https://api.streamerly.app/worker (routed by nginx).
🧪 Test Mode (simulate other roles)
Enable Test Mode
Adds a simulated channel to your channel switcher. Use it to preview what mods, managers, and viewers see — without coordinating with another user. All changes in test mode are local and don't touch the server.
Simulate as
Pick permissions individuallyscroll for more ↓
Channel name
💡 With test mode on, "🧪 Test Channel" appears in your channel switcher. Switch to it to see the app from a non-owner's perspective. Switch back to "My Channel" anytime.
🧪 Self-Test: Add Myself to My Own Team
Adds your account to your own team as a mod/manager/developer using real Twitch ID + real server endpoints. This gives you a team member entry to exercise — you'll see yourself in the Team page and right-side panel.
⚡ 2-step workflow Step 1: click "Add me as Mod" below → you're now on your own team Step 2: use Test Mode (above) → set role to "mod" → "Switch to Test Channel" to experience the app from a mod's perspective Note: this does NOT make your channel appear in the channel-switcher dropdown — that dropdown is for OTHER channels you mod, not your own.
🔍 Channel Isolation Self-Test
Stamps every per-channel value, runs the real switch-reset, checks what reset, then restores your data. Non-destructive. Run on your OWN channel.
🧹 Clean Test Data
If your leaderboards or recap show data from previous test sessions (anon entries, simulated names, etc.), use these to wipe local state without affecting server data.
"Reset MY profile" clears any contaminated data from when an earlier build saved cross-channel data into your profile blob. Use this if your dashboard shows another channel's stats/goals/commands.
"Wipe all sessions" deletes session files from disk — affects today/week/month/all-time aggregate views. Cannot be undone. Server data is untouched.
📢 Push Announcement
Message
Type
Saves to Firebase — shows as banner in app on next launch
🔄 Version Control
Current app version
Download URL
Changelog
📊 Usage Stats
—
Users
—
Streams run
—
Total subs
Stats pulled from Firebase — requires setup
🔧 Diagnostics
Loading diagnostics...
👥 Partnered Streamers
no partners added yet
⚠️ Dev Tools
📜 Mod Action Logs
Mod logs moved to their own page so streamers can access their audit trail without needing dev panel access. As a developer, you can see logs across any channel from there.
🔍 Channel Scanner
A lie detector for viewer numbers — any Twitch channel, theirs or yours. Public viewer polls + an anonymous read-only chat reader → the engagement fingerprint. It shows evidence, never just verdicts: it can prove numbers don't behave like humans; nothing on earth can name the fake accounts.
my channel
Longer watch = sharper verdict: 30 min catches the blatant stuff, a full stream catches patterns, a week builds the channel's personal baseline (and catches "they only bot on Fridays"). Tick my channel to judge against its own history instead of size norms. Reports refresh on demand anytime.
Scans—
Loading…
Report
Public viewer-count polls (~2 min) + an anonymous read-only chat presence — the same public data every stats site uses, invisible to the channel. Verdicts: ✓ NORMAL · ? UNUSUAL (worth another stream of watching) · ⚠ SUSPICIOUS (evidence attached). Own channels judge against their own history; strangers judge against size norms until a personal baseline builds.
Loading Discord…
🛡
Owner-only · Command center
Beta keys, testers, and who's online at a glance. Every action here is checked server-side too.
Active codes
—
Beta testers
—
Total redeems
—
Unused slots
—
Owner tools
🎬
OBS Control Room
→
preview
📈
Live Monitor
→
owner-only
🎛
Bot Control
⧉
receipts · drift · live save watch
🤖
Bot connections
→
connections & re-auth
📨
Beta requests
→
access inbox
🎟️
Beta Codes
→
codes & uses
🧪
Testers
→
roster
📋
Logs
→
activity
✨
AI & Billing
→
credits · limits · abuse
💬
MultiChat
→
dev preview
Worker vitals
Status
—
Memory
—
Uptime
—
Realtime clients
—
Discord bots
—
📟 Pings — phone & Discord
The 24/7 worker pushes what matters to your phone via Pushover and logs it to a private Discord channel — app open or not, across every channel the bots watch. Each ping type below has its own switches. Repeat mentions inside the quiet window collapse into one ping; HIGH types break through your phone's quiet hours.
Pushover user keyFrom your Pushover app — identifies your phone.
Pushover app tokenStored on the worker only — never shown back.
Watch wordsComma-separated. Whole-word match, any casing.
Quiet window (seconds)Repeat mentions inside this window = one 🔥 summary ping.
💬 Name mentionson📱 phone💬 discord
🔴 Channel went liveon📱 phone💬 discord
🩺 Worker healthon📱 phone HIGH💬 discordbot / EventSub / token down → breaks through quiet hours
🚨 Mod alarmson📱 phone HIGH💬 discordfollow-bot wave · AutoMod burst
🎁 Big momentson📱 phone💬 discordgift bombs (10+) · Partner Plus level-ups
📊 Weekly digeston📱 phone💬 discordSundays 6pm — top commands · dead commands · Plus progress
Who's on right now
—
Loading…
online · idle · offline — based on last app activity. 🔴 live-streaming status lands in a later pass (it comes from the worker, not this layer).
Invite chain · who invited whom
Loading…
Generate beta code
Label (who's this for)
Max uses
Invite slots
Expires
💡 Invite slots = how many mods whoever redeems this code can invite. Invited mods get 0 slots, so the chain stops at you → streamer → mod.
✓
Code generated & copied to clipboard
Existing codes & uses
Loading…
Beta testers
—
Loading…
Grant a badge
Twitch login
Badge
Badge catalog · grant counts
Loading…
Beta activity · codes & redemptions
—
Loading…
Other logs
Per-channel moderation audit trail — lives under the Insights rail.
🔊 Soundboard. Add a sound — upload an audio file or paste a hosted clip URL — set what viewers pay in channel points, and trim it. When a viewer redeems a channel-point reward named the same as a sound, it plays on stream. Mods steer it live with !soundoff / !soundon / !skipsound.
🎧 OBS browser source
Add this as a Browser Source in OBS once — it's what plays your sounds on stream.
Soundboard
Master vol70%
Global cooldownsec
Sound library· 0 sounds
⚡ Quick add💜 pts
Guardrails
Volume cap %
Per-viewer cooldown (s)
Max plays / stream (0=∞)
Mods can mute / skipSub-only
Chat commands· mods control the board live
🛡️ Mod+Mute the board — redemptions still spend points but nothing plays
🔇 Soundboard muted — sounds won't play until !soundon
🛡️ Mod+Un-mute the board
🔊 Soundboard un-muted — sounds will play again
🛡️ Mod+Cut the clip playing right now · also !stopsound
⏭ Stopped the current sound
✕
Clip URL — paste a hosted .mp3/.ogg, or upload a file (max 25MB)
✂️ Trim — drag the handles; only the highlighted part plays
Start 0.0sEnd 0.0s(0.0s clip)
How viewers trigger it
Volume %
Cooldown (s)
Enabled
Streamerly, by the numbers
Totals across every channel on Streamerly.
Loading…
🟢 All live — pulled from your worker's cached rollup (refreshes every few minutes). This board is owner-only under Home for now; the same data can power a public page later.
👥 Team
1 online
BROADCASTER
ONLINE
OFFLINE
BOTS
STREAM
Viewers—
Uptime—
Followers—
🛟 Streak Safety
Days the worker was blind (outages, dead event tracking) auto-amnesty and can't break anyone. This panel is for reviewing what slipped through — and fixing it without a terminal.
Amnesty days (last 30d)
—
Review & repair broken streaks
Broken since
Credit eaten check-ins
Paste names from Twitch's Reward Requests queue — already-counted viewers are skipped automatically, so paste the whole day.
🏆 Fun awards
Two surprise trophies per stream — one nice, one cheeky — drawn only when the night's data actually earned them. Quiet nights draw nothing. The streamer should skim the pool below once and 🚫 anything that isn't their humor before turning this on.
Awards on for this channel
Tone
GentleRegularSpicy
🎬 End-of-stream credits
Movie credits roll as the stream's closing scene — starring the chat, top supporters, streak heroes, tonight's trophies. Two ways to fire it: the streamer (or a mod) types !credits (silent — nothing shows in chat), or make it automatic: add ?auto=1 to the URL, put the source only on the stream's ending scene, and tick OBS's "shutdown source when not visible" — switching to that scene rolls the credits by itself.
—
The trophy pool
Loading…
Are you sure?
Assign a mod
Enter the mod's Twitch login. They'll show up under this streamer in the invite tree. They need to have opened the app at least once.
Notifications 0
🌿
All clear.
Nothing waiting. Notifications will pop up here as they happen.
Do Not Disturb
Mutes the chime + dims the bell. New notifications still queue up — open the panel to see them.
Notification sound
Plays a short chime when a new notification arrives. Urgent uses a distinct two-note tone.
Reset
Clear stored notifications + reset settings to defaults.