A Novice’s Guide to Mod’ing (or Managing) a Twitch Channel


Since I am new to this, please let me know if there are better ways to do things that I layout here.

Assumed Goals

You want to minimize workload for the broadcaster

You want to increase interactivity with the viewers

You want to enhance the experience for the viewers and make sure it is positive.

You want other mods to easily pick up where you leave off

You want to have fun!


Enable BTTV and share with mods.

BetterTTV is a mostly free service that enables custom and animated emotes to be shared in your channel and your Discord. BTTV is common across Twitch, so many viewers will miss it if it is not there. It is also an easy way to add temporary emotes that might fit a season or special occasion (e.g. birthday, holiday, etc.). Note, to view the emotes, the viewer will need to install the BTTV plug-in to their browser.


The broadcaster will need to link BTTV to their Twitch account and then add the mod as an editor.

To link, the broadcaster can visit betterttv.com. Click Login (upper right), enter the Twitch credentials or Authorize BetterTTV to access your Twitch account.

To add the mod as editor, the broadcaster can go to the Editors tab on the left. Then enter the Twitch userid of the mod and submit. Easy!

Now, both the broadcast and the mod should be able to add or remove emotes to the broadcaster’s BTTV palette.

Get rid of old commands

Ideally, the viewers will be able to discover commands at your bot’s command page. It is not a good experience if someone is browsing your long list of commands and sees something like, “Check out DJ x performing with DJ y this weekend!” when that weekend was months ago.


If you are the mod, ask the broadcaster if you can go through and clean up outdated commands and get it done!

Ensure there is a reason for each bot

Photo by Rock'n Roll Monkey on Unsplash


Having extra bots around has the potential for things to go wrong. Extra bots also make it harder for a newbie to come on board as a mod. Also, Extra bots can lead to conflicting bots. You might have the same command enabled on multiple bots, which can be confusing for the viewer.


If you have more than 2 bots, discuss with the broadcaster why they are needed? It is pretty common to require 2 bots, perhaps one for collecting tips and another for creating commands. It would be interesting to discuss why someone would need 3 or more.

Make it easy and unobtrusive for mods to manage commands.

Topical and timely commands make the chat experience better. The broadcaster may not have the time or attention to do this while they are broadcasting. Ideally, the mods can help do this during the broadcast, so they need to be enabled to add/modify/delete commands.


There are many articles on bot features and comparisons (Example). Or, you may already have a certain bot that holds all your commands. If you have a lot, you probably need to stick with that bot. As a mod, I recommend using NightBot. NightBot has a great web interface that allows the broadcaster and anyone they designate (e.g. a mod) to add/modify/delete commands. I like using the web interface because it doesn’t clog up the chat stream. For example, StreamElements allows mods to add/modify/delete commands, but they have to do it via text in the Twitch chat interface.

If/when you do enable NightBot, it is a good idea to turn off all the Spam Protection they enable by default. You can do that on this page.

Manage all (or most) commands with a single bot.

The best way to get viewers familiar with your commands is to direct them to the command listing page associated with the bot. This is impossible if you have your commands spread between multiple bots. Also, having commands spread across multiple bots makes them more difficult to manage. There is also the potential for the same command on multiple bots, which is confusing.


Discuss with the broadcaster which bot they’d like to host commands. Personally, I prefer NightBot, but I don’t have a ton of experience. Once you pick one, make sure new commands are done there and try to move over popular commands, if they are on another bot. It is possible that some command needs to be on a different bot… exceptions are always ok. 

Encourage your broadcaster to add Rewards & Challenges redeemable with points

Photo by Giorgio Trovato on Unsplash


Frequent viewers have a ton of points and it would be great if they had a reason to use them. Rewards that are interactive improve the experience and solidify the connection between the viewer and broadcaster.


This task needs to be done by the Broadcaster. You can find more info here.

Use Polls

Polls are another great way to get interaction with the viewers. Polls have the additional benefit that you can enable people to use their points to have extra votes.


To create a poll, enter “/poll” in the chat. This will launch a dialog to create the poll. Broadcasters or Mods can create polls. I recommend “Allow Additional Votes” using points in the UI.

Use Commands

I’ve already talked so much about commands, without ever saying why! Commands are a great way to increase interaction with the viewers. Commands also help build the channel’s personality. Commands, also persist and help with viewer retention, rewarding repeat visitors.


As I’ve mentioned above, it is important that commands are easy to manage for mods, as well as the broadcaster. NightBot makes it easy to add the mod as a Manager and mods can use the website to manage commands.

To setup NightBot, the broadcaster will need to link it to their Twitch account and then add the mod(s) as Managers.

To link, click the [Login] button at https://nightbot.tv/. If needed, click the “Login using Twitch” button. After this step, the moderator will need to add NightBot as a Mod to their channel.

Once linked, the broadcaster can click their icon, top right, and go to Settings. In Settings, click “New Manager” and enter the NightBot User ID. This is something the mod will need to provide to the Broadcaster. It is in their NightBot settings page (top right) and looks something like: 7abcd1234b7f7452e46b19b7

Some cool !commands


$(weather Austin)


$(user) just sent a drink to $(touser)! HSCheers


$(channel) accidentally wrote the wrong command $(count) times. Oops.


StreamElements: !command add !hosts Thanks to all the users currently hosting: $(customapi.https://api.crunchprank.net/twitch/hosts/${channel}?implode)


bttv: Sooooo … Are you confused why everyone keeps talking about PepePls … PepoDance … SadgeRain … ABDULpls … CouldYouNot … and catJAM ?? It’s a browser add-on required to see special gif-emotes here on twitch, download and install them from https://betterttv.com/ and https://www.frankerfacez.com/ Mobile phone users can use MChat for Android or PogChat for iPhone!


The broadcaster can use a free app, Radr.dj, to tweet the latest track played. Once posted, you can use StreamElements to pull that tweet into the chat (command below).

An issue may arise if the broadcaster queues up the next track for a long time. When this happens, the next track, not the current track, might appear in the chat. I created an API to get the last tweet before the last to work around this scenario. Ping me if you are interested.

To keep it simple, here is how you can get the last tweet from StreamElements.

StreamElements: ${lasttweet.TWITTER_ID}


$(1) tweeted: $(urlfetch https://decapi.me/twitter/latest?name=$(1)&no_rts&howlong)


Acknowledgments: Thanks to the following Twitch users who helped inspire me to dig into these details: @tantra_thursdays, @rockyYVR, @Just_Jeremiah, @djTaylorNorris, & @kevinfargason.

Photo by Priscilla Du Preez on Unsplash

Program Director of Product Management in the computer software industry. Skilled in delivering data driven product content using Agile and Lean methods.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store