SoulstackSoulstack.gg
Chat & Moderation

Twitch timers and commands

Timers and commands solve different problems. Commands answer a question after someone asks it. Timers post a message without being asked, usually on a set interval or after a cert

Timers and commands solve different problems. Commands answer a question after someone asks it. Timers post a message without being asked, usually on a set interval or after a certain number of chat lines.

Many new streamers blur the two and end up with a chat that feels automated instead of alive. The fix is not complicated. Use commands for useful answers. Use timers sparingly for reminders that would otherwise never be seen.

The difference in one line

If a viewer triggers it, it is a command.

If the bot triggers it, it is a timer.

That distinction matters because the audience experiences them differently. Commands feel reactive. Timers interrupt the flow, so they need a stronger reason to exist.

Good uses for timers

The best timer topics are the ones that matter but do not come up naturally every stream:

  • your Discord link
  • a reminder to follow if they want alerts
  • a note about spoilers or backseating
  • a charity donation link during a fundraising stream
  • a giveaway rule during a giveaway segment

Each of these helps viewers who arrived mid-stream and missed your verbal explanation.

Bad uses for timers

Some timer ideas look smart on paper and read badly in chat:

  • posting every social link
  • repeating long welcome messages
  • forcing jokes every ten minutes
  • pushing merch on a small stream
  • auto-posting messages while chat is already moving quickly

These turn the bot into another person talking over everyone else. If the message would annoy you as a viewer, do not automate it.

How often is too often

There is no perfect interval, but there are safe starting points.

For smaller channels:

  • every 30 to 45 minutes for one timer
  • line minimum enabled so the timer only fires if chat is active

For faster chats:

  • every 45 to 60 minutes
  • stagger timers so they do not post back to back

If you run multiple timers, increase the gap. Two short timers close together feel more spammy than one longer reminder.

Keep command triggers easy to remember

Commands work best when the trigger is obvious. Viewers should guess it without being taught.

Good examples:

  • `!discord`
  • `!schedule`
  • `!rules`
  • `!specs`

Weak examples:

  • `!joinusnow`
  • `!streamtimes123`
  • `!therules`

You want chat to remember the command once, not learn a special vocabulary.

Let timers point to commands

A neat way to keep bot messages short is to make the timer introduce the trigger instead of dumping the full answer.

For example:

  • timer: "Need stream times? Use `!schedule`."
  • command reply: "Live Tues, Thurs, Sun at 7pm UK."

That approach keeps chat cleaner and teaches viewers how to help themselves next time.

Match the timer to the format

An art stream, speedrun, and community night do not need the same automation.

For a speedrun, a timer might explain the run category or current goal.

For a community stream, it might point people to sign-up rules.

For a charity event, it might remind viewers where the donation total is tracked.

The rule is simple: the message should make more sense on this stream than on any other stream you could run.

Give moderators the final say

Timers can be technically correct and still make the room feel worse. Moderators usually spot that first because they are reading chat at ground level.

Ask them:

  • which bot messages people ignore
  • which ones trigger useful follow-up questions
  • whether the interval feels intrusive

If a timer lands with a thud every time, delete it. You do not need to defend it because you spent five minutes setting it up.

A sensible starter setup

Most small channels can run perfectly well with:

  • three commands: `!discord`, `!schedule`, `!rules`
  • one timer for Discord or schedule
  • one event-specific timer only when needed

That is enough structure to help new viewers without turning the broadcast into a noticeboard.

Review every month

Open your bot dashboard and look for two things: commands that get real use, and timers that only generate silence. Commands that answer real questions stay. Timers that no one reacts to should probably go.

The best automation feels almost invisible. It supports the stream without sounding like a script that cut in halfway through the conversation.