Back to Blog

How to Set Up Carl-bot Automod (and Why Rules Don't Fire)

PeakBot Team·How we write these·November 10, 2026·7 min read
By the PeakBot Team — powering 10000+ Discord communities
Key Takeaways
  • Carl-bot can only do what Discord allows it to do.
  • Go through these in order:
  • We make PeakBot, so keep that in mind as you read this section.
  • Check whether the poster is an admin or the owner, whether they have an ignored role, and whether the channel denies Carl-bot the Manage Messages permission.

To set up Carl-bot automod, first give Carl-bot the permissions it needs and move its role above your members' roles in Server Settings > Roles. Then open the Carl-bot dashboard at carl.gg, pick your server, open Automod and turn on each filter you want (spam, mentions, links, invites, censored words). Give each one a punishment and a list of ignored roles and channels. If a rule doesn't fire, check three things first: whether the poster is an admin, whether they have an ignored role, and whether their role sits above the bot's.

Checked on each bot's own site or docs on 3 November 2026. We make PeakBot. Nobody paid to be in this post.

This guide is about Carl-bot, the Discord bot at carl.gg. It is not about Reddit's AutoModerator, which uses YAML rules and has nothing to do with Discord. If a dashboard label below doesn't match your screen exactly, look for the closest one. Carl-bot's official automod documentation, which its developers publish on GitHub, is the full reference for every option.

Before you start: the Discord side

Carl-bot can only do what Discord allows it to do. If you skip this part, your automod rules can look fine on the dashboard and still never fire.

  1. Check the bot's permissions. Open Server Settings > Roles, click Carl-bot's role and turn on the permissions it needs. Each one under General Server Permissions has its own on/off toggle. For automod, that means:
    • Manage Messages, which "allows for deletion of other users messages." Without it the bot can't remove a message that breaks a rule.
    • Timeout Members, if you want timeouts as a punishment.
    • Kick Members and Ban Members, if you plan to use those.
    • Manage Roles, if you use a mute role.
  2. Move the bot's role up. Still in Server Settings > Roles, drag Carl-bot's role above the roles of everyone it should punish. Discord's permission docs say a bot can only kick, ban or change nicknames for users whose highest role is lower than the bot's highest role. It can also only give out roles that sit below its own.
  3. Check channel overrides. A channel can deny Manage Messages to Carl-bot even when its role allows it. In any channel where rules don't fire, open Edit Channel > Permissions and look at Carl-bot's entry.
  4. Know who can't be punished. Administrator "allows all permissions and bypasses channel permission overwrites." Server owners and members with Administrator also can't be timed out. So your own admin account can't tell you whether a rule works.

Setting up Carl-bot automod, step by step

  1. Open the dashboard. Go to carl.gg, log in with Discord, choose your server and open Automod from the moderation section of the sidebar.

  2. Set up spam. Turn on the spam filter and set its rate: how many messages in how many seconds counts as spam. A loose rate lets a raid through. A tight one catches ordinary members during a busy event. Start somewhere in the middle and adjust once you've seen how your chat behaves.

  3. Set up mention spam. Turn on the mention filter and choose how many user or role mentions in one message count as abuse. This filter catches mass-ping raids, so give it a real punishment, not just a delete.

  4. Set up link filtering. Decide whether you want to block every link or only some. If you block links in general chat, you can still allow them in a few channels with the ignored-channels list (step 8). If Carl-bot's link settings offer an allow list, add trusted domains such as your own site.

  5. Set up invite filtering. Turn on the invite filter to stop people advertising other servers. To keep your own invites working, look for an option to allow your own server's invites. If there isn't one, ignore the channel where you share partner invites.

  6. Build your censor list. Add the words and phrases you want removed. A common mistake is a short entry that matches inside longer, normal words: a censored "ass" can catch "class" or "assistant." Read the matching options in Carl-bot's docs before you add short entries. If you want pattern-based blocking, Discord's native tool supports regex. See how to create custom AutoMod keyword and regex rules.

  7. Choose punishments. For each filter, pick what happens: delete the message, warn, time out, kick or ban. You can go easy on minor filters (a single censored word) and be strict on raid filters (mass mentions, invite spam). Discord's built-in timeout lengths are 60 seconds, 5 minutes, 10 minutes, 1 hour, 1 day and 1 week. A timed-out member can't send messages, react or join voice.

  8. Add ignored roles and channels. Put your staff, moderator and bot roles on the ignored list so mods don't get punished while they clean up. Ignore channels where a rule makes no sense, like a links channel for the link filter or a partners channel for the invite filter. Keep this list short, because automod never acts on anyone with an ignored role.

  9. Set a log channel. Send automod's logs to a private staff channel so you can see what was removed and why. When a member says a punishment was unfair, this is where you check.

  10. Save, then check it with a second account. Save every section. Then post something that breaks a rule from an account with no staff role and no ignored role. If nothing happens, go through the checklist below.

Carl-bot also has automod commands you can run in Discord instead of using the dashboard. Its official docs list the current syntax.

Why your Carl-bot automod rule isn't firing

Go through these in order:

  • You're posting as an admin or the owner. Administrator bypasses channel overwrites, and Discord won't let anyone time out an owner or admin. Use an ordinary account.
  • One of your roles is ignored. A member with even one ignored role is skipped, for example a "Booster" or level role that was added by mistake.
  • The bot's role is too low. If the member's highest role is above Carl-bot's, the bot can't kick, ban or give them a mute role.
  • The filter has no punishment, or it wasn't saved. A filter that's switched on with no action may do nothing you can see.
  • The spam rate was never set, or it's too loose. If the threshold is higher than anyone actually types, it never trips.
  • The channel is ignored, or it denies Manage Messages. Check both the automod ignored channels and the channel's own permission overrides.
  • Discord's own AutoMod got there first. If Discord's built-in AutoMod blocks a message, the message never posts and Carl-bot never sees it. That's fine, but it can look as if Carl-bot did nothing.
  • The bot is offline or was removed. Check that Carl-bot shows as online in the member list.

How PeakBot does it

We make PeakBot, so keep that in mind as you read this section. If you're staying with Carl-bot, everything above still applies. If you're comparing options, here's how PeakBot handles the same job.

In the PeakBot dashboard at peakbot.pro, open Auto Moderation in the sidebar. It has six filters: anti-spam, invite filter, link filter with an allow list, word filter, caps filter and mention spam. Each filter has its own action, threshold and time window, plus its own exempt roles and channels. That means your links channel can be exempt from the link filter and still be covered by anti-spam. The caps filter needs a paid plan. The other five are on the Free plan, which has no time limit.

Logging is set on the same page. It covers message edits and deletes, joins and leaves, voice activity and every manual mod action. Voice activity logs need a paid plan. AI Moderation is on Pro ($8.25/month or $69/year per server). It reads what a message means instead of matching a word list, so it catches things like coded slurs and arguments escalating, and it covers images too. Anti-nuke and anti-raid live on a separate Security page, with join-rate and account-age limits and a quarantine role.

The Discord-side rules above apply to PeakBot too. Its role has to sit above the members it acts on, and it needs Manage Messages and the permissions for whichever actions you choose. New to PeakBot? Start with getting started. The moderation docs explain each filter.

Frequently Asked Questions

Why isn't Carl-bot automod deleting messages?

Check whether the poster is an admin or the owner, whether they have an ignored role, and whether the channel denies Carl-bot the Manage Messages permission. Then confirm the filter has an action set and that you saved it.

How do I make Carl-bot automod ignore my mods?

Add your staff and moderator roles to the ignored roles in every automod section you've turned on. Don't add broad roles like "Member" or level roles, or most of your server will slip past the filters.

Turn on the invite filter, then look in its options for a way to allow your own server's invites, or ignore the channel where you post invites. Check carl.gg for the current setting name.

How do I make Carl-bot time out people for spamming?

Set the spam filter's punishment to timeout and pick a length. Carl-bot's role needs Timeout Members and has to sit above the member's highest role. Admins and the owner can't be timed out.

Can Carl-bot automod and Discord's built-in AutoMod run together?

Yes. They work separately. Discord's AutoMod can block a message before it posts, and Carl-bot acts on whatever gets through. You could use Discord's tool to block keywords and scam links and use Carl-bot for spam rates and punishments. For the Discord side, see our guide to setting up Discord AutoMod to block spam and scam links.

Why does my censor word catch normal words?

A short entry is matching inside longer words. Replace it with the exact phrases you want gone, or use whole-word matching if Carl-bot's options offer it. For precise control, a regex rule in Discord's own AutoMod is often a cleaner fix.

Try PeakBot free on your server

Setup takes 30 seconds.

Free forever · Setup in 30 seconds

Ready to level up your server?

30+ features included free. Moderation, welcome messages, XP & leveling, tickets, reaction roles, and more.

See All Features