Streamer dashboard

Rewards

Reward redemption is where viewers spend the points they've accumulated. You define the rewards, their price and their limits; viewers redeem them from chat or the public page, and every redemption is logged.

What it solves

Points that can only be accumulated and never spent lose their meaning fast: once the number is large, adding more stops feeling like anything. Rewards give points an exit: priority on a song request, picking the next game, a handwritten thank-you note. Any of these can become something a viewer buys with points. Without an exit, none of the earning matters.

Getting started

  1. Enable the Channel points module first (rewards are built on top of it).
  2. Create your first reward: a name and how many points it costs.
  3. Optionally set a per-viewer limit and a cooldown.
  4. For a nicer look, pick an icon and background colour, or point it at a custom image URL.

What happens on redemption

A reward can simply notify you, or it can carry effects directly: grant points, fire an on-screen alert, throw an object, add marathon time, and so on. If you'd rather approve each one yourself, mark the reward as requiring confirmation: redemptions land in a pending queue and you approve or reject them. Rejecting refunds the points.

Scheduled availability

Every reward can carry an availability window: a start time, an end time, or either one on its own. Leave the start empty and it goes on sale immediately; leave the end empty and it never comes down. You pick the times in your own time zone, and each viewer sees that same moment converted into theirs.

Before the start time the reward still appears in the list, marked with when it opens and with the redeem button disabled. That is the point: viewers see it coming and can look forward to it. After the end time the opposite happens, and the reward disappears from the list. To sell it again, push the end time back; the settings and the redemption history are all still there.

Common misconceptions

  • This spends ChiwaBots points, not Twitch channel points. The two are separate. You can also bind a Twitch custom reward as a trigger, but that's a different path.
  • The cooldown slider stopping at 300 seconds doesn't mean 300 is the maximum. The slider is sized for common values; type a larger number in the field next to it, up to 24 hours.
  • A limit of 0 means "unlimited", not "cannot redeem". This is the convention for every numeric field on the site, cooldowns included.
  • Disabling a reward hides it from viewers entirely. It isn't "visible but unavailable"; it disappears from the list and the public page.
  • Custom images must be https URLs. An http image simply won't render; when in doubt the built-in icons look more consistent anyway.
  • When an availability window ends, the reward disappears from the list. This differs from "live only" on purpose: being offline is temporary and reverses itself when you go live, so those rewards stay visible. An end time is a finish line you set, and leaving expired items on the list only fills it with things nobody can buy.
  • Availability windows apply to points, bonus credits and Bits alike. A Bits-priced reward outside its window cannot be bought either, so no viewer ever pays first and gets refused afterwards.

Settings

The text below is taken from the in-app help, so it stays in sync with the actual interface.

SettingWhat it does
Fully customStart from scratch and set the reward name and actions yourself
Unlimited stockNo quantity limit: always redeemable.
Per-viewer limit0 = unlimited; total redemptions allowed per viewer.
Global cooldown (sec)Cools down for the whole channel after any redemption.
Personal cooldown (sec)Cooldown for the same viewer.
Only while liveCan't be redeemed while the stream is offline.
Available fromLeave empty to make it available right away. Times use your local time zone.
Available untilLeave empty to keep it up indefinitely. Once it ends, the reward disappears from the list.
Custom redeem commandOptional; gives this reward its own command in addition to !redeem name. Matched literally; type the ! yourself if you want one.
Require viewer textWhen on, viewers must include a line of text (game ID, address, a wish...) when redeeming. The text is saved with the redemption and can appear in the chat announcement via {input}.
Input promptShown as placeholder in the input box, e.g. "Your Minecraft ID".
Time (±)Adds or subtracts from the marathon countdown. Accepts seconds or 1h30m.
Announce redemptions from web & panelWhen a viewer redeems from the public rewards page or the Twitch panel, the bot posts an announcement in chat. Turning this off affects only those two: chat command announcements are unaffected, and failure reasons are never posted to chat.
Require streamer approvalWhen on, redemptions wait in the queue until you approve them. Effects run only on approval; rejecting refunds the points.
Points changePositive grants points, negative deducts.
Duration (s)Leave empty to use the style set duration; overrides are at least 3s.
Read aloud (TTS)Reads the text using the alert's voice settings.
ItemsEmpty = random from all enabled items.
Delay (ms)0 = use widget default.
FactorApplied to the remaining time; no effect once it has hit zero.

Chat commands

These are the default command names; they can be renamed or given aliases in the dashboard.

  • !shop — List the rewards available to redeem.
  • !redeem — Redeem a reward with channel points (!redeem name).

Other notes

  • When off, chat !redeem/!shop and public-page redemptions are disabled; existing rewards and settings are kept.
  • Built-in commands for rewards; each reward can also have its own command (set under Items). Enabling, cooldown, aliases and permissions live on the Commands page.
  • Redeeming is mainly triggered by the chat command !redeem. It's currently disabled, so viewers typing it in chat won't get a response.
  • Create your first reward for viewers to redeem with points.
  • Only https image URLs are supported.
  • The slider goes up to 300s; use the number field for longer values (max 86400s / 24 hours).
  • Viewers can browse the reward list on the public page.
  • Rewards priced in Bits only show up in the Twitch panel. They do not appear on your public page or in chat, and they cannot be redeemed with a command.
  • Rewards priced in Bonus Credits require Pro to redeem. On non-Pro channels this reward becomes entirely unredeemable, though you can still edit and save its settings.
  • The wheel, giveaway tickets and built-in commands cannot be used on Bits rewards. Viewers are paying real money, so what they get cannot be a gamble. Randomness inside an action is fine, e.g. throwing without picking an item, or a message using random pick.

Other settings

These settings have no additional help text in the dashboard; only their names are listed here.

  • Rewards module
  • On-screen effects
  • Viewer perks
  • Chat
  • Text alert
  • Sound alert
  • Image alert
  • Throwing
  • Give points
  • Raffle tickets
  • Spin the wheel
  • Extend stream
  • Grant VIP
  • Twitch command
  • Built-in command
  • Pop up a text alert on screen when redeemed
  • Play a sound only: nothing shows on screen
  • Show an image on screen with the frame removed
  • Throw items across the screen when redeemed
  • Give the viewer some channel points when redeemed
  • Give the viewer raffle tickets for a giveaway
  • Spin the lucky wheel once when redeemed
  • Add time to the marathon countdown when redeemed
  • Grant the viewer VIP status when redeemed
  • Run a Twitch command (e.g. announce) when redeemed
  • Run a ChiwaBots built-in command when redeemed
  • On-screen message
  • Play a sound
  • Show an image
  • Throw something
  • Redeem channel points
  • Raffle ticket
  • Extend the stream
  • Redeem VIP
  • Choose a reward template
  • Create an alert style set first
  • This effect can't be used with Bits pricing. Remove it or switch to points pricing.
  • Enable rewards
  • reward name
  • Redemptions are priced in channel points; when the channel points module is off, viewers have no points to spend.
  • Enable channel points
  • Redeem command isn't enabled
  • Failed to toggle
  • Over the plan limit: inactive
  • Move up
  • Move down
  • Add reward
  • No rewards yet
  • Open page
  • (untitled)
  • None
  • Delete failed
  • Basics
  • Icon
  • Background color
  • Reset to default
  • Choose image
  • Remove image
  • Image URL must start with https
  • Select page
  • Enable
  • Disable
  • Delete
  • Clear
  • Pricing & stock
  • Limits
  • Public page
  • Name
  • Description
  • Points
  • Bonus Credits amount
  • Stock
  • Role restriction
  • The end time must be later than the start time.
  • Not open yet. Viewers can see this reward but cannot redeem it.
  • Past the end time. This reward is currently hidden from the list.
  • Custom success message
  • Permanent VIP
  • Days to keep
  • Wheel
  • Giveaway
  • Tickets
  • All
  • Pending
  • Completed
  • Failed
  • Refunded
  • Fulfill
  • Refund
  • No redemptions yet.
  • Points were automatically returned
  • Clear selection
  • Chat announcements
  • Redemption messages
  • Default:
  • Restore default
  • Redemption success announcement
  • Pending announcement
  • Success announcement (with input)
  • Pending announcement (with input)
  • Not enough points
  • Out of stock
  • Per-viewer limit reached
  • On cooldown
  • Role not eligible
  • Missing input prompt
  • Refund announcement
  • !shop list header
  • Announced when a viewer redeems successfully.
  • Announced when a redemption enters the pending queue.
  • Used instead of the success announcement when a reward requires viewer text (includes {input}).
  • Used instead of the pending announcement when a reward requires viewer text (includes {input}).
  • Replied when a viewer doesn't have enough points to redeem.
  • Replied when a reward is sold out.
  • Replied when a viewer hits this reward's per-viewer limit.
  • Replied while the global or personal cooldown is active.
  • Replied when the viewer's role doesn't meet this reward's restriction.
  • Replied in chat when a required-input reward is redeemed without text (chat only; panel/page show an error).
  • Announced on refund; leave empty = no announcement, not sent by default.
  • Header line shown at the start of the !shop item list.
  • Resolved records (completed / failed / refunded) are kept for 90 days; pending redemptions are never auto-deleted.
  • Go to command settings
  • Copy link
  • Copied
  • Reward name
  • Points cost (abbrev. 1.2K)
  • Points cost (Chinese units 1.2萬)
  • Points cost (Japanese units 1.2万)
  • Points cost (full 1,200)
  • Remaining stock
  • Viewer balance (abbrev. 1.2K)
  • Viewer balance (Chinese units 1.2萬)
  • Viewer balance (Japanese units 1.2万)
  • Viewer balance (full 1,200)
  • Points name
  • Viewer input text
  • Channel points ±
  • Giveaway tickets
  • Marathon
  • Approval
  • Actions
  • Add action
  • Delay (s)
  • Command
  • Run as
  • Arguments
  • Style
  • Title
  • Subtitle
  • No alert box styles yet.
  • All (random)
  • Count
  • Min force
  • Max force
  • Spawn side
  • Throwing is off; this effect won't run.
  • Save failed
  • ± Add/subtract
  • × Multiply
  • ÷ Divide
  • Bits
  • Bonus Credits
  • Bits amount
  • Role restrictions and stock are not available for Bits pricing.
  • Bits cannot be refunded. If you want to make it up to the viewer, do it another way.
  • Points were NOT auto-refunded (part of the reward was already delivered); refund manually if appropriate.