Check-in gives viewers a reason to show up. One chat command claims the reward, the streak is tracked automatically, and hitting a milestone pays out a bonus on top. Streaks can be counted per day, per stream, or both at once.
What it solves
Viewers usually don't drift away because the content got worse; they drift away because nothing brings them back on a given day. Check-in turns showing up into something that pays: a few points today, and more for coming back consistently. It costs the viewer a few seconds and gives the channel a retention curve that compounds.
Getting started
- Enable the check-in module in the dashboard, and decide whether to count days, streams, or both.
- Set the
per-check-in reward: the points a viewer gets each time. - Optionally set
streak milestones(bonus points every 7 / 14 / 28 days). - Confirm the check-in command is enabled on the Commands page, and viewers can start using it.
Per day and per stream, side by side
Check-in runs on two independent tracks. Daily check-in counts calendar days, once per day. Per-stream check-in counts live streams: it only registers while you are live, and at most once per stream. Enable either one or both: viewers type the same command, and each enabled track keeps its own streak, total and monthly figures.
Which one fits depends on your schedule. If you stream every day, the daily track is the most intuitive. If you stream three times a week or keep irregular hours, the daily track punishes viewers for days you never went live; the per-stream track is the fairer count, because a day without a stream is not a missed day.
Streaks and re-check-in
Miss one and the streak resets; that's exactly why streaks work, and also the most frustrating part for a regular who simply missed one. Re-check-in lets viewers spend Bits to fill in what they missed and keep the streak alive. You control how far back they can reach, how many Bits each one costs, and which roles (subscribers, for example) get it free.
Each track has its own re-check-in command and the pricing formula is shared, but underpayment is handled differently; this is where the two tracks diverge most, and the part most often misread:
- Daily track: partial fill, and nothing is wasted. Whatever they send buys that many days, starting from the most recent ones (only those reconnect the existing streak behind them); the rest can be bought later, and the reply reports how many days and how many Bits are left. Under escalating pricing the next quote continues from the tier already bought; paying in instalments costs exactly the same as paying at once, so splitting buys no discount. That progress is kept for a while (up to 7 days, and never longer than your recheck-in window) and then resets, because the gap keeps growing and an old balance should not inflate today's price.
- Per-stream track: all-or-nothing, but nothing is wasted. A break leaves one continuous gap, and filling half of it leaves the streak broken, so there is no partial fill. Underpayment is banked against that break and the reply reports how much has been received and how much is left. It only completes when the viewer runs the command again and the accumulated total reaches the price; it is settled by that next payment, not topped up by the system on its own.
Exempt roles (or a price of 0) skip all of the above on both tracks and fill in immediately.
Common misconceptions
- Check-in rewards and role multipliers are two separate things. Subscriber / VIP / MOD multipliers live in the Channel points module. Check-in reuses that same set; there is no separate multiplier to configure here.
- "Streak" and "total" are different numbers. A streak counts unbroken check-ins and resets when broken; the total only ever goes up. Leaderboards and lookup commands report them separately, and a manual correction can never push the streak above the total.
- Coming back after a dropout starts a new stream. A "stream" is bounded by Twitch going live and going offline, so a disconnect that ends and restarts the broadcast counts as two. That is the same boundary used by watch time and watch streaks, so the leaderboard and check-in never disagree about what one stream is.
- Re-check-in restores the streak, not the missed payout. Its purpose is to protect eligibility for streak bonuses, not to back-claim past rewards.
- Command enablement, cooldown and aliases aren't configured here. Those are shared settings on the Commands page; this page only governs the reward rules.
Settings
Configure point rewards, streak milestones and re-check-in rules for daily and per-stream check-in.
Customize the bot's chat reply on a successful check-in and on a repeat check-in.
The text below is taken from the in-app help, so it stays in sync with the actual interface.
| Setting | What it does |
|---|---|
| Bits per day | Bits needed per day when re-checking in via the !recheckin chat command. |
| Free re-checkin for | Selected roles re-check in for free (no Bits). Pick any combination; matching one is enough. |
| Daily check-ins | Click a day to add or remove it. It saves instantly, no need to press Save (edits the detail only; streak/total are untouched). |
| Per-stream attendance | Click a stream to mark or unmark attendance. It saves instantly, no need to press Save (edits the detail only; streak/total are untouched). |
| Per-stream recovery | Viewers use !recheckinlive and pay bits to recover missed streams and restore their streak. Note this is a different command from daily re-check-in's !recheckin, don't mix them up. The free-for roles come from the "Re-check-in" card below. |
| Bits per stream | Bits needed per recovered stream. Underpayments accumulate until the full amount is reached; no bits are wasted. |
Chat commands
These are the default command names; they can be renamed or given aliases in the dashboard.
!checkin— Check in. Depending on the settings this counts both the daily check-in (day rolls over at 00:00 UTC) and the per-stream check-in (live only, once per stream).!infocheckin— Show your own check-in stats; per-stream streak and total are included when that track is on.!topcheckin— Check-in ranking: the top three longest daily streaks; when per-stream check-in is on and the stream is live, also shows the top three streaks for the current stream.!recheckin— Spend bits to recover missed daily check-ins within the allowed window and restore the streak.!recheckinlive— Spend bits to recover missed streams and restore the attendance streak.
Other notes
- Identity multipliers (sub/VIP/MOD %) are shared from the Points module.
- When off, viewers can't catch up on check-ins from the panel (the chat command still works).
- Only success / already-checked-in / re-checkin success are customizable. info/top/re-checkin quote/partial re-checkin are fixed.
- Chat commands related to check-in. Set enable, cooldown and aliases on the Commands page.
- Check-in is mainly triggered by the chat command !checkin. It's currently disabled, so viewers typing it in chat won't get a response.
- Create a custom channel point reward in your Twitch dashboard, then enter its exact name below. When a viewer redeems it, the bot runs the matching command as that viewer. Leave blank to unbind.
- Redeeming this reward performs a daily check-in (daily track only; per-stream is untouched). Use the same reward for 'Per-stream check-in reward name' and one redemption records both, with a single chat reply.
- Redeeming this reward recovers missed daily check-ins (same as !recheckin).
- Redeeming this reward checks in for the current stream (per-stream track only; daily is untouched). Use the same reward for 'Check-in reward name' and one redemption records both, with a single chat reply.
- Redeeming this reward recovers missed streams (same as !recheckinlive).
- Selected roles recover missed streams for free (configured separately from daily).
- Once per day; the streak resets when a day is missed. When off, the check-in command no longer counts daily check-ins.
- Once per stream, only while live. Counted separately from the daily check-in - enable both or just one.
- A stream uses the same boundary as continuous watch stats (going live until offline); reconnecting after a drop counts as two streams.
Other settings
These settings have no additional help text in the dashboard; only their names are listed here.
- Reward per check-in (points)
- Daily check-in streak milestones (extra points)
- Every 7 days in a row
- Every 14 days in a row
- Every 28 days in a row
- Re-checkin
- Max days back (1–60)
- Billing model
- !checkin reward title
- !recheckin reward title
- Enable panel re-check-in
- Reset ALL check-in records
- Exponential (10, 20, 30, …)
- Cumulative (10, 10, 10, …)
- Streak days
- Total days
- Today's check-in #
- Today's date
- Last check-in date
- Re-checkin days
- Consecutive streams checked in
- Total streams checked in
- Check-in # this stream
- Streams recovered
- Basic
- Check-in success message
- Repeat check-in message (already checked in)
- Re-checkin success message
- Manage commands
- Check-in command isn't enabled
- Custom loyalty reward
- Check-in reward name
- Re-check-in reward name
- Set required Bits to 0
- Per-stream check-in reward name
- Per-stream recovery reward name
- Daily check-in
- Reward points
- Delete
- Adjust check-in record
- This channel has no recorded streams yet.
- Saved
- Per-stream check-in
- Per-stream check-in reward (points)
- Per-stream check-in streak milestones (extra points)
- Per-stream check-in success message
- Already checked in this stream message
- Every 5 in a row
- Every 10 in a row
- Every 20 in a row
- Recoverable streams (1-20)
- Per-stream recovery success message