# Twitch shoutout command and !so for your chat

How the Twitch /shoutout command works, its limits, and how to run a !so shoutout command or an auto shoutout for raiders with Bloopbot.

Updated 15 October 2026

## The short answer

The Twitch shoutout command is `/shoutout name`. You or a moderator type it in your chat, and Twitch tells your viewers to visit that streamer, with a Follow button for anyone who doesn’t follow them yet. It only works while you are live, and Twitch limits how often you can use it.

Bloopbot adds a `!so` shoutout command on top. When you or a moderator type `!so name` (or `!shoutout name`), Bloopbot posts a shoutout message in chat and sends Twitch’s own `/shoutout` for you. If your overlay has a Clip player, it also plays one of that streamer’s clips. It is the **Shoutout** flow in the **Starter** pack, and you can change its message, who can use it, and when it runs, including an auto shoutout whenever someone raids you.

## What Twitch’s /shoutout does

Twitch sends a shoutout to the channel you name. Viewers who don’t follow that channel see a pop-up Follow button in your chat. The Twitch rules, from [Twitch’s Send a Shoutout reference](https://dev.twitch.tv/docs/api/reference/#send-a-shoutout):

- **Who can send one.** The broadcaster, or a moderator of the channel.
- **How often.** Your channel can send one shoutout every 2 minutes, and a shoutout to the same streamer once every 60 minutes. Past either limit, Twitch refuses it.
- **When.** Your channel must be live. Twitch also refuses a shoutout to yourself.

These limits belong to Twitch. They hold whether you type `/shoutout` yourself or a bot sends it.

## How !so works in Bloopbot

Type `!so pixelpal` in your chat. The **Shoutout** flow then does these things in order:

1. Checks that you are the broadcaster or a moderator. Anyone else is ignored, with no reply.
2. Looks up the streamer on Twitch. If the name isn’t a Twitch account, chat gets “Could not find user: name”.
3. Sends Twitch’s own `/shoutout` while you are live. Offline, it skips this step and the flow’s **Run log** says so.
4. Posts the shoutout message in chat. By default it tells chat to check out PixelPal at their Twitch link and names the game they last streamed. When they have no game, the line leaves that part out.
5. Shows your **Clip player** layer, plays one of the streamer’s clips on it, and hides it again afterwards. With no Clip player on your overlay, this step plays nothing and the rest still works. [Play a streamer’s clip when you shout them out](https://bloopbot.com/docs/shoutout-clips) sets the player up.

`!so` with no name replies with its usage line. The command has no cooldown of its own, so Twitch’s limits above are the only ones until you add one.

![The Starter pack’s Shoutout flow on the flow canvas: the !so command, a Who can trigger check set to moderators and up, Shout out a streamer, Show a layer for Clip player with its next and error both leading to Play a shoutout clip, then from Played and No clip a second Show a layer for Clip player, with dashed data wires from the trigger’s Who typed it and Word 1 into Shout out a streamer’s fields and Word 1 into Play a shoutout clip’s Whose clip, and one from the clip step’s Busy for to its Hide again after.](https://bloopbot.com/docs/screenshots/shoutout-clips-flow.jpg)

_Starter’s Shoutout: the !so command, the moderator check, Shout out a streamer, Show a layer for Clip player, Play a shoutout clip, then Show a layer again with Hide again after wired to how long the Clip player is busy._

If you don’t have it yet, open **Flows**, press **Marketplace**, add **Shoutout** (it is in the **Starter** pack) and switch it on. It arrives paused. Bring your Nightbot `!so` over with the importer if you are moving; it offers **Use Bloopbot’s shoutout** ([Coming from Nightbot](https://bloopbot.com/docs/coming-from-nightbot#import)).

## Shout out raiders automatically

An auto shoutout is a second flow that starts on a raid instead of a command. Bloopbot has no ready-made one, but it takes four steps:

1. On **Flows**, make a new flow and start it with **Incoming raid**. Set **Minimum raiders** to skip small raids, or leave it at 0 for every raid.
2. Add **Shout out a streamer** after it.
3. Set **Who** to `$(raiderlogin)`, the channel that raided you. Leave **Twitch shoutout too** on.
4. Save and switch the flow on.

Each raid now gets a chat shoutout and Twitch’s own shoutout. To play a clip as well, add **Play a shoutout clip** with **Whose clip** set to `$(raiderlogin)` and the **Show a layer** steps from [Use the step in your own flow](https://bloopbot.com/docs/shoutout-clips#your-own-flow). [Polls and predictions](https://bloopbot.com/docs/polls-and-predictions#markers) has the same raid flow with a stream marker added.

## Change the message

Open the **Shoutout** flow and select **Shout out a streamer**.

- **Message** is sent when the streamer was last playing a game, and **Message (no game)** when they weren’t. Write what you like.
- Three details about the streamer fill in by name: `$(user)` is their display name, `$(login)` their channel name for the link, and `$(game)` their last game. `$(title)` is their last stream title and `$(description)` their Twitch bio.
- **Who** is `$(1)`, the first word after the command. Change it to `$(raiderlogin)` in a raid flow, as above. [Name the words after a command](https://bloopbot.com/docs/first-command#arguments) explains `$(1)`.
- **Twitch shoutout too** switches Twitch’s own shoutout off if you only want the chat message.

## Change who can use !so

The flow checks **Who can trigger** for moderators and up. Change that check to **Broadcaster only**, or delete it to let everyone use the command. Add a **Cooldown** step before **Shout out a streamer** if you want chat to wait between shoutouts. [Add permissions and cooldowns](https://bloopbot.com/docs/permissions-and-cooldowns) shows both. A command with no **Who can trigger** step is listed under **Everyone** on your public Commands page.

## On Kick

Shoutouts are Twitch only. Bloopbot leaves **Shoutout** out of a Kick channel’s Starter flows, and the **Shout out a streamer** step is marked **Needs Twitch** on Kick. [Bloopbot on Kick](https://bloopbot.com/docs/bloopbot-on-kick) lists what works there.

## Troubleshooting

- **The chat message appears but Twitch’s shoutout doesn’t.** Open the **Run log**. “Twitch shoutout skipped: channel offline” means you weren’t live. “Twitch shoutout failed” followed by Twitch’s reason usually means a limit: one shoutout every 2 minutes, or the same streamer within 60 minutes. The chat message goes out either way.
- **Nothing happens at all.** Check the flow is switched on and that the person typing `!so` is a moderator or you. A viewer’s `!so` gets no reply.
- **Twitch’s shoutout fails and the Run log shows a Twitch error.** The bot sends Twitch’s shoutout as a moderator, so it must be one in your chat. The dashboard shows a **Not a mod** bar until it is, and [Make the bot a moderator](https://bloopbot.com/docs/moderate-without-mods#bot-mod) walks through it.
- **“Could not find user”.** The name isn’t a Twitch account. Check the spelling; a leading `@` is fine.
- **No clip plays.** The streamer may have no public clips, or your overlay has no Clip player. [The clip guide](https://bloopbot.com/docs/shoutout-clips#troubleshoot) covers each case.
