Skip to main content

Custom chat commands for your Twitch chat bot

Custom chat commands help minimize the effort spent repeating yourself, allowing you to focus on engaging with and entertaining your audience.

You can create special Twitch chat commands tailored for this purpose, each with its own unique name and response.

Using a chat command in Twitch chat​

To use a chat command, simply send a message in chat like «!Command», where «Command» is the command's name. It starts with a «!» symbol followed immediately by the command name.

Moobot will then reply with the command's response.

Using a chat command in Twitch chatUsing a chat command in Twitch chat

You can also send chat commands from your dashboard through the controls widget.

Adding a chat command​

Follow these steps to add a new chat command:

  1. Open the «Commands» menu from the main menu, then select «Custom commands».The commands main menuThe commands main menu
  2. Type the desired name of your command in the «Command name» input. For example, use «Discord» if you want the command to be «!Discord».Adding a chat commandAdding a chat command
  3. Click the «Create» button.
  4. In the edit menu for your new command, locate the «Response» input and type the message Moobot should reply with.Setting the response of your Twitch chat commandSetting the response of your Twitch chat command
  5. Click the «Save» button at the bottom.

That's it! Your new chat command is ready. You can test it by typing «!Command» (replacing «Command» with your chosen name) in your Twitch chat.

Using your new chat command in Twitch chatUsing your new chat command in Twitch chat

Editing a chat command​

  1. Open the «Commands» menu from the main menu, then select «Custom commands».
  2. Use the search bar to find your command in the table, then click the pencil icon («Edit») button in the command's row.
  3. Locate the «Response» input and update the message you want the chat command to respond with.
  4. Click the «Save» button.

Chat command examples​

Here are some common chat commands to help you get started:

Social media chat commands:

Create a chat command to encourage your community to follow you on social media.

Name it something like «!Social», and include links to your profiles in the response.

You can also create dedicated commands for specific networks, like «!Twitter», «!Facebook», or «!Instagram».

Schedule command:

Create a «!Schedule» command that informs viewers about your streaming schedule.

Example of a !Schedule chat commandExample of a !Schedule chat command

Game-specific chat commands:

If you play games with special mods or settings, create chat commands to explain them.

For example, while playing Skyrim, a «!Mods» command could link to your mod list.

For CS:GO, «!Sensitivity» or «!Crosshair» can provide your current settings.

Example of a !Mods chat commandExample of a !Mods chat command

Gear-specific chat commands:

Share your setup with commands like «!Headset», «!Keyboard», or «!Mouse» that link to the gear you use.

Auto-posting chat messages​

Moobot can automatically post the chat command's response to Twitch chat.

You can use this to post some commonly used commands, announcements, or to shout out your sponsors.

Follow these steps to post a command to chat automatically:

  1. Edit the chat command you want to post to chat automatically.
  2. Activate the «Automatically post this command to chat while chat is active» checkbox when in the edit-menu for the chat command. Keep in mind that this option is only visible when you deactivate the «Show advanced options» checkbox.Auto posting chat messagesAuto posting chat messages
  3. Click the «Save» button at the bottom of the menu.

Moobot will now post your chat command to Twitch chat automatically.

You should also read the auto-posting chat messages documentation for how to set the elapsed time required for the chat command to post.

Chat commands with multiple names​

A chat command can have several names in chat.

For example, if you have a «!Mods» chat command you also might want it to respond when a viewer types «!Mod» in Twitch chat.

Or if you have a chat command like «!Social», you also might want it to respond to «!Instagram» and «!TikTok».

By using aliases, you can create multiple names for your chat commands. That way you don't have to update the response across multiple duplicate chat commands. You only need one response and one place to edit it.

You can see the chat commands with multiple names documentation for how to set up aliases for your chat commands.

Chat commands with multiple namesChat commands with multiple names

Setting a chat command (from chat) as a Twitch mod​

You can update a chat command's response from Twitch chat as a moderator, provided the command is configured correctly.

  1. While editing a chat command, activate the «Show advanced options» checkbox at the bottom of the menu to view additional settings.Showing advanced optionsShowing advanced options
  2. Add the «Text - Text set from chat» response tag to the command's response. The text set from chat will dynamically replace this tag.Text set from chat response tagText set from chat response tag
  3. Enable the «Allow Twitch chat moderators to adjust certain settings of the command (like the chat text, counter, time, etc.) directly from chat» option.Allowing Twitch chat moderators to edit a chat commandAllowing Twitch chat moderators to edit a chat command

The chat command's response can now be updated from chat by typing «!Command Text...», where «Command» is the name of the command, and «Text...» is the new response.Setting a chat command from chat as a Twitch modSetting a chat command from chat as a Twitch mod

You can also use the «!EditCommand» built-in chat command for chat commands that lack the «Text - Text set from chat» response tag.

Common problems​

A chat command responds to some viewers but not to others​

When your viewers use a chat command multiple times within a short period, Moobot will ignore subsequent requests. Moobot does this to reduce repetitive responses and prevent spam in your Twitch chat.

A chat command isn't auto-posting to Twitch chat​

Moobot will only auto-post a chat command once a specific amount of minutes and chat lines have passed.

If someone uses the command in chat, or if Twitch chat is inactive for a significant period, the required minutes and chat lines will reset.

This means the chat command may not post automatically if your Twitch chat is very slow during your stream.

When you add a link to a chat command, but Moobot does not post the link in its response, it means the link was likely censored by your Twitch AutoMod.

AutoMod may censor any link, even when Moobot is a chat moderator. This often happens if you manually added links to AutoMod's Blocked Terms and Phrases and set the privacy level to private. In this scenario, AutoMod blocks moderators from posting those links as well.

We recommend adjusting the text and link until AutoMod allows it. If that fails, your only other options are to deactivate AutoMod or lower its filter level.

Creating advanced chat commands​

You can create more complex chat commands by utilizing advanced options.

To access these, edit the chat command and check the «Show advanced options» box at the bottom of the edit menu.

Showing advanced optionsShowing advanced options

Using response tags​

With advanced options enabled, the «Response» input displays a drop-down menu of tags you can insert into your response.

Using response tagsUsing response tags

These tags display dynamic data. For example, you can use a tag to display the game you are currently playing on Twitch, eliminating the need to manually update the command response every time you switch games.

Using a response tag to get the current game on TwitchUsing a response tag to get the current game on Twitch

Moobot will automatically fetch the data and display it in the command's response.

Displaying the current game in Twitch chatDisplaying the current game in Twitch chat

Available response tags​

Text - Text set from chat​

This tag displays text that you can set directly from Twitch chat. You set this text by typing «!Command Text...», where «Command» is your command's name, and «Text...» is the new text.

Using response tags to set the text from chatUsing response tags to set the text from chat

This allows you to let your Twitch mods easily modify a command's response without navigating the Moobot dashboard.

Setting a text response tag from chatSetting a text response tag from chat

Username - User who sent the command​

This displays the Twitch username of whoever used the chat command in Twitch chat.

User who sent the commandUser who sent the commandResponding in Twitch chat with the user who sent the commandResponding in Twitch chat with the user who sent the command

Mentioned @username​

This displays a mentioned username, provided you include one when using the command (like «!Command @username» or «!Command username»). If no mention is provided, it is omitted from the response.

Mentioned @usernameMentioned @usernameResponding in Twitch chat with the mentioned @usernameResponding in Twitch chat with the mentioned @username

By - User who set the text​

This displays the Twitch username of the person who last updated the command's response, which is either a Twitch moderator through chat or a Moobot editor via the dashboard.

User who set the textUser who set the textResponding in Twitch chat with the user who set the textResponding in Twitch chat with the user who set the text

Counter - Command counter​

This tag displays and manages a counter.

For example, you can track deaths in a game or how many times a command has been used.

You can configure the counter to increment automatically each time the command is used, with options to restrict this behavior to specific user groups or set a cooldown between increments.

You can manually set the counter by typing «!Command number», where «Command» is the name of the command and «number» is the new value. For example, «!Command 10» sets the counter to 10.

The counter can also be adjusted using math operators, like «!Command +10» or «!Command -10». To increment or decrement by 1, simply type «!Command +» or «!Command -».

Command counterCommand counterResponding in Twitch chat with a counterResponding in Twitch chat with a counter

When - Time since the text was updated​

This displays the time elapsed since the chat command's response was last updated.

Time since the text was updatedTime since the text was updatedResponding in Twitch chat with the time since the text was updatedResponding in Twitch chat with the time since the text was updated

Random number​

This displays a random number generated by Moobot.

You can configure the range (minimum and maximum values) of the random number, determine if users can provide a custom range (e.g., «!Command 1-100»), and choose whether to display the range alongside the result in the response.

Random numberRandom numberResponding in Twitch chat with the random numberResponding in Twitch chat with the random number

Random text​

This displays a random text option chosen by Moobot.

The options are fully customizable, and you can add up to 50 separate options for each list.

You can also add up to 3 separate lists, with their own options and placement in Moobot's response.

Random textRandom textResponding in Twitch chat with random textResponding in Twitch chat with random text

Arguments - All command arguments​

This displays the text provided when using the chat command. For example, if you use the chat command like «!Command This is the text» the arguments will be equal to «This is the text».

The arguments will be empty if you use the chat command with no text. For example, with just «!Command».

All command argumentsAll command argumentsResponding in Twitch chat with all command argumentsResponding in Twitch chat with all command arguments

Arguments - All command arguments (URL-encoded)​

This is the same as the Arguments - All command arguments, but Moobot will URL-encode the arguments so you can use them in a link.

All command arguments (URL-encoded)All command arguments (URL-encoded)Responding in Twitch chat with all command arguments (URL-encoded)Responding in Twitch chat with all command arguments (URL-encoded)

Arguments - Command argument 1-5​

This is similar to the Arguments - All command arguments, but will display a single argument instead of all the arguments (the entire text.)

For example, if you use the chat command like «!Command This is the text» the «Command argument 1» will display as «This», and «Command argument 3» will display as «the», etc.

Command argument 1-5Command argument 1-5Responding in Twitch chat with command argumentsResponding in Twitch chat with command arguments

Countdown - Time remaining until the set date and time​

This displays the remaining time until the set date and time.

You can set the date from Twitch chat by typing «!Command DD-MM-YYYY» (e.g. «!Command 29-01-2025»), where «Command» is the name of the chat command, «DD» is the date of the month, «MM» is the month, and «YYYY» is the year.

You can also set the time from Twitch chat by typing «!Command HH:MM» (e.g. «!Command 01:59»), where «Command» is the name of the chat command, «HH» the hours in 24-hour format, and «MM» the minutes.

Time remaining until the set date and timeTime remaining until the set date and timeResponding in Twitch chat with a countdownResponding in Twitch chat with a countdown

Countdown time - Time remaining until the set time of day​

This displays the remaining time until the set time of day for the set time zone.

You can set the time from Twitch chat by typing «!Command HH:MM» (e.g. «!Command 01:59»), where «Command» is the name of the chat command, «HH» the hours in 24-hour format, and «MM» the minutes.

Time remaining until the set time of dayTime remaining until the set time of dayResponding in Twitch chat with a countdown timeResponding in Twitch chat with a countdown time

Countup - Time since the set date and time​

Like the countdown response tag, only that it's counting up from the set date and time instead of down.

Time - Current time for the set time zone​

This displays the current time for the set time zone, in 24-hour format.

Current time for the set time zoneCurrent time for the set time zoneResponding in Twitch chat with the current timeResponding in Twitch chat with the current time

Channel name​

This displays the channel's name.

Channel name sentence cased​

This displays the channel's name in sentence case. For example, the channel name «moobot» will display as «Moobot».

URL-fetch​

URL-fetching allows you to get chat command responses directly from a remote service.

For more information, check out building your own dream Twitch chat commands.

Twitch - Current stream title​

This displays the current stream title you have set on Twitch.

Twitch - Current stream category​

This displays the current stream category/game you have set on Twitch.

Twitch - Amount of followers​

This displays the channel's current amount of Twitch followers.

Twitch - Amount of viewers​

This displays the channel's current amount of viewers on Twitch.

Twitch - Time since the user followed​

This displays how long someone has followed the channel.

If someone uses the chat command like «!Command», where «Command» is the chat command's name, then whoever used the command will be the one Moobot looks up the follow for.

You can also provide a Twitch username by using the chat command like «!Command username», where «Command» is the chat command's name, and «username» the Twitch username of the user to look up the follow for.

The chat command will not respond if the Twitch user is not following the channel.

Time since the user followedTime since the user followedResponding in Twitch chat with the time since the user followedResponding in Twitch chat with the time since the user followed

Twitch - Subscriber count​

This displays the channel's current amount of Twitch subs.

Twitch - Subscriber score​

This displays the channel's current Twitch sub score.

Twitch - Latest subscriber​

This displays the Twitch username of the channel's latest Twitch sub.

Twitch - Time since the latest subscriber​

This displays the time since the channel's latest Twitch sub.

Twitch - Time since the stream started (Uptime)​

This displays the time passed since the current stream started.

Time since the stream startedTime since the stream startedResponding in Twitch chat with the time since the stream startedResponding in Twitch chat with the time since the stream started

Twitch - Timestamp since the stream started​

Same as the time since the stream started (Uptime) response tag, but will display as a timestamp (00:00) instead.

Twitch - Random username from the chat user list​

This displays a randomly chosen Twitch username from the current Twitch chat user list.

Random username from the chat user listRandom username from the chat user listResponding in Twitch chat with a random username from the chat user listResponding in Twitch chat with a random username from the chat user list

Last.fm - Currently playing song​

This displays which song you are playing, taken directly from Last.fm

Last.fm tracks your music via its scrobbler apps.

Just register on Last.fm, set up the scrobbler app, and you're ready to go!

If you want to track your YouTube video plays, you can also use a browser extension which supports Last.fm scrobbling. Moobot will then be able to display the title of the video you're watching on YouTube.

Last.fm currently playing songLast.fm currently playing songResponding in Twitch chat with the Last.fm currently playing songResponding in Twitch chat with the Last.fm currently playing song

YouTube - Latest video title​

This displays the title of your latest YouTube video upload.

YouTube latest videoYouTube latest videoResponding in Twitch chat with the latest YouTube videoResponding in Twitch chat with the latest YouTube video

YouTube - Latest video URL​

This displays a link to your latest YouTube video upload.

YouTube - Latest video number of views​

This displays the number of views of your latest YouTube video upload.

YouTube - Latest video time since published​

This displays the time since your latest YouTube video upload was published.

League of Legends - League​

This displays your current league on League of Legends.

League of LegendsLeague of LegendsResponding in Twitch chat with League of Legends statsResponding in Twitch chat with League of Legends stats

League of Legends - League points​

This displays your current League Points (LP) on League of Legends.

Teamfight Tactics - League​

This displays your current league on Teamfight Tactics.

Teamfight Tactics - League points​

This displays your current League Points (LP) on Teamfight Tactics.

Teamfight Tactics - Wins​

This displays your current wins (first place only) on Teamfight Tactics.

Teamfight Tactics - Losses​

This displays your current losses (second through eighth place) on Teamfight Tactics.

Teamfight Tactics - Win rate​

This displays your current win rate (first place) on Teamfight Tactics.

Apex Legends - Current rank​

This displays your current (global) rank on Apex Legends.

Apex LegendsApex LegendsResponding in Twitch chat with Apex Legends statsResponding in Twitch chat with Apex Legends stats

Apex Legends - Current Legend​

This displays your current Legend on Apex Legends.

Apex Legends - Current level​

This displays your current level on Apex Legends.

Apex Legends - Total kills​

This displays your total kills on Apex Legends.

Apex Legends - Total kills on current Legend​

This displays your total kills on your current Legend on Apex Legends.

Apex Legends - Total damage​

This displays your total damage on Apex Legends.

Letting your Twitch mods edit chat commands​

You can allow your Twitch mods to update certain settings of a chat command by activating the «Allow Twitch chat moderators to adjust certain settings of the command (like the chat text, counter, time, etc.) directly from chat» checkbox when editing the command.

Allowing Twitch chat moderators to edit a chat commandAllowing Twitch chat moderators to edit a chat command

Auto-posting chat messages via multiple timers​

You can adjust which timers are posting the chat command directly from the edit menu in the «Timer» input.

Auto posting chat messages via multiple timersAuto posting chat messages via multiple timers

The separate Timers menu can be used for more adjustments.

Setting a chat command's cooldown​

You can set the cooldown for the chat command in the «Minimum command cooldown» input.

This cooldown does not apply to your Twitch mods and is separate from the global chat command cooldown.

Setting a chat command's cooldownSetting a chat command's cooldown

Restricting who can use a chat command​

You can restrict the use of a chat command to certain user groups:

Select the user groups you want to allow to use the chat command in the «Only allow these user groups to use the command in chat» input.

Restricting who can use a chat commandRestricting who can use a chat command

Setting when a chat command can be used​

You can set when someone can use a chat command by restricting it to these conditions:

  • When the Twitch stream is online.
  • When the Twitch stream is offline.
  • When Twitch chat is in sub-only mode.
  • When Twitch chat is not in sub-only mode.
  • When Twitch chat is in emote-only mode.
  • When Twitch chat is not in emote-only mode.

Select the conditions in the «Only send the command when» input.

Setting when a chat command can be usedSetting when a chat command can be used

Restricting a chat command to a certain game​

If you have a chat command that only applies when you are playing a specific game, you can set it to only be available when you are playing that game on Twitch.

Select the game in the «Only send the command when the stream's category is set to» input.

Restricting a chat command to a certain gameRestricting a chat command to a certain game

Auto-disabling temporary chat commands​

Moobot can automatically disable or remove a chat command for you. This is useful for commands that contain temporary information.

For example, if you have an upcoming marathon, informing your viewers before and during the event is a great idea. However, once the marathon ends, the command's information is no longer relevant.

While in the edit menu, you can set the expiration of a chat command in the «Expiration» section.

Moobot can either remove the chat command or disable it so you can edit it later.

Auto disabling temporary chat commandsAuto disabling temporary chat commands

Making commands stand out in Twitch chat​

Commands can also be sent as Twitch announcements, which are colored messages that stand out in chat. These messages are much less likely to be drowned out by other chat messages.

Responding as a Twitch announcement in Twitch chatResponding as a Twitch announcement in Twitch chat

Sending a command as an announcement can be done by activating announcements in the edit menu of the command.

The command can also be set to only be sent as an announcement when used by a Twitch moderator.

Making commands stand out in Twitch chatMaking commands stand out in Twitch chat

Advanced chat command examples​

!Uptime chat command​

The «!Uptime» chat command tells your viewers how much time has passed since your current stream started.

If you don't already have an «!Uptime» chat command, you can copy and paste the following response into a new «!Uptime» command's response:

@<username> <channel.name.sc> has been streaming for <uptime>
The !Uptime chat commandThe !Uptime chat commandResponding in Twitch chat with the !Uptime chat commandResponding in Twitch chat with the !Uptime chat command

!Followage chat command​

The «!Followage» chat command tells your viewers how long they've been following the channel on Twitch.

You can copy and paste the following response into a new «!Followage» command's response:

@<1> has been following for <twitch.followed>

You can use the above chat command in Twitch chat by typing «!Followage», or by providing a Twitch username like «!Followage username».

The !Followage chat commandThe !Followage chat commandResponding in Twitch chat with the !Followage chat commandResponding in Twitch chat with the !Followage chat command

!YouTube chat command​

The «!YouTube» chat command links your viewers to your latest YouTube video.

You can copy and paste the following response into a new «!YouTube» command's response:

Check out the latest video "<youtube.title>" at <youtube.url>
YouTube latest videoYouTube latest videoResponding in Twitch chat with the latest YouTube videoResponding in Twitch chat with the latest YouTube video

!Song chat command​

The «!Song» chat command displays the song you are currently listening to.

It uses Last.fm to track the song, and Moobot's Last.fm integration to display it in Twitch chat.

Follow these steps to set up Last.fm:

You can copy and paste the following response into a new «!Song» command's response:

Currently listening to <lastfm.current>
Last.fm currently playing songLast.fm currently playing songResponding in Twitch chat with the Last.fm currently playing songResponding in Twitch chat with the Last.fm currently playing song

Increase productivity with Moobot Assistant​

With Moobot Assistant you can use chat commands with the press of a hotkey.

This allows you to respond or announce something quickly without having to interact directly with Twitch chat to post a «!Command» chat message.

This is especially useful for your most frequently used chat commands.