Discord moderation bots
A moderation bot enforces the rules you write, gives your moderators commands that leave a record, and handles the spam nobody wants to watch for.

How a moderation bot works
Discord already ships AutoMod, which blocks keywords, spam and mention floods without any bot. A moderation bot covers what AutoMod does not: warning counts that escalate to a timeout and then a ban, a /purge command, temporary bans that lift on their own, and a log that ties each action to the moderator who took it.
Two Discord details shape how these bots work. The first is role hierarchy: a bot can only time out, kick or ban members whose highest role sits below its own, so after inviting it you drag its role up the list. The second is that reading message text needs the Message Content intent. A bot that only runs slash commands like /warn and /ban does not need it. A bot that scans every message for invite links or banned words does. Timeouts are capped at 28 days, so anything longer is a ban.
Keep the first version small. Start with logging and manual commands, watch the log for a week, then add automatic rules for what keeps coming up. On Discord Bot Creator you write those rules in plain words and the bot is built and hosted for you.
What it usually does
- Times out, kicks and bans members through slash commands
- Tracks warnings per member and escalates after a set number
- Deletes messages with invite links, banned words or mass mentions
- Clears a burst of spam with a /purge command
- Logs every action with the moderator, member and reason to a private channel
- Skips staff roles and any channels you mark as exempt
Permissions and intents it needs
Give a bot only what it uses. These are the permissions a typical moderation bot asks for in its invite link, and why.
| Permission | Why |
|---|---|
| Timeout Members | Puts members in timeout for warnings and lifts it early when asked. |
| Kick Members | Removes a member who can rejoin with a new invite. |
| Ban Members | Bans members, and unbans them when a temporary ban runs out. |
| Manage Messages | Deletes messages that break a rule and clears spam with /purge. |
| Read Message History | Fetches recent messages so /purge knows what to delete. |
| Send Messages | Posts warnings and writes to the mod log channel. |
| Embed Links | Formats mod log entries as embeds that are easy to scan. |
Privileged intents
Message Content Intent
Needed only if the bot scans message text for links, words or spam. Slash-command moderation works without it.
Server Members Intent
Needed if the bot watches joins to spot raids or logs members who leave.
Enable them under Developer Portal → your app → Bot → Privileged Gateway Intents, and only the ones your rules use. Once a bot reaches 100 servers, Discord reviews each privileged intent during verification.
Moderation bots built here
Real bots made by describing them, running in Discord servers now.
No moderation bots are listed yet. Bots appear here once they have been online for three days and joined a server. Yours could be the first.
Describe yours like this
Name the channels, roles and commands you want. The more specific the description, the less you need to change afterwards.
Build a moderation bot for my art server. Delete Discord invite links from anyone without the @Trusted role and give them a warning; three warnings means a 1-hour timeout. Add /warn, /timeout, /ban and /purge for the @Mods role, and log everything to #mod-log.
Questions about moderation bots
Why can't my moderation bot ban someone?
Almost always role hierarchy. A bot can only act on members whose highest role is below its own, and it can never act on the server owner. Open Server Settings → Roles and drag the bot's role above the roles it should moderate. Then check that its role actually has Ban Members turned on.
Is Discord AutoMod enough, or do I need a bot?
AutoMod handles keyword filters, spam detection and mention limits well, and it keeps working when a bot is offline. A bot adds what AutoMod cannot do: warning counts, escalation from timeout to ban, temporary bans and logs in your own format. Many servers run both, with AutoMod catching the obvious cases and the bot handling the rest.
Does a moderation bot need the Message Content intent?
Only if it reads what people write. Filtering links, banned words or repeated messages means reading text, so the intent is required. Commands like /warn, /timeout and /ban arrive as interactions with their own options and work without it. If you only want manual moderation tools and a log, leave the intent off.
How long can a Discord timeout last?
Up to 28 days. During a timeout the member can read channels but cannot send messages, react or join voice. A moderation bot can apply any length within that limit, for example 10 minutes for a first warning, and remove it early with a command. Anything longer than 28 days has to be a ban, which a bot can lift on a schedule.
Other kinds of Discord bots

Describe the moderation bot your server needs
Write it in a sentence or two. You see the plan before anything is built, and your first bot runs free for 7 days.