🎉 Launch offer: the next 5 servers get 30 days free. Claim a spot →
All topics & search

Guide/Protect your server/AutoMod, heat & panic mode

Discord AutoMod Bot: Stop Spam, Scams & Bad Words

Spam, mentions, words, content shape and nicknames; heat, thresholds and strikes; auto-lock and panic.

Quick answer

Heat that escalates

!automod enable
!automod heat on decay:5
!automod threshold 50 delete
!automod threshold 70 timeout timeout:600
!automod threshold 100 ban
!automod exempt #bot-commands
!automod reset @user

Ask the guide

Step by step

Rules

RuleDefaultCommand
spam10 messages in 5 s → timeout!automod spam 10 5 timeout
mentionsmore than 8 mentions, @everyone counts → delete!automod mentions 8 everyone:true delete
linksoff; allow/block domain lists; block Discord invites!automod links on block_invites:true allow:youtube.com,twitter.com
wordsoff; comma-separated terms, whole-word option!automod words on terms:badword1,badword2 whole_word:true delete
ghost pingReposts a note when someone mentions and deletesdashboard toggle
nicknameRegex / max length / blocked terms → reset or set a nicknamedashboard
invite deleteDeletes invite links to other serversdashboard

Exempt a role or channel from all AutoMod rules with !automod exempt @Staff or !automod exempt #bot-commands (add remove:true to undo). The links role permission (!permission grant @Trusted links) lets a role post links while the rule blocks them for everyone else.

Edits are re-scanned: "hi" edited into an invite link ten seconds later is caught like a new message. Links, invites and words are also matched after stripping zero-width characters and normalising look-alike letters, so disc​ord.gg and fullwidth spellings do not slip past.

Heat

Each risky thing a member does adds heat: message rate, repetition, spam, advertising, suspicious / malicious / NSFW links, IP-grabber domains, emoji or character volume, newlines, walls of text, mentions and mass mentions, attachments, embeds. Heat decays every minute (default 5 per minute). Thresholds decide the response:

HeatDefault action
25warn
50delete
70timeout 10 min
90quarantine
100ban
!automod heat on decay:5
!automod heat on factor:massMention weight:40      re-weight one factor
!automod threshold 70 timeout timeout:600
!automod threshold 90 none                          remove a threshold
!automod reset @user                                clear someone's heat

Strikes make repeat offenders escalate: each punishment within the reset window multiplies the next timeout (base × multiplier, capped). Releasing a punishment (!unmute, !unquarantine, !unban, or removing the quarantine role by hand) pardons the member: heat and strikes are reset so the same punishment does not fire again immediately.

Auto-lock and panic

!automod autolock on mentions:30 window:10 duration:600     mass-mention flood locks the channel
!automod panic on users:5 window:60                        5 suspicious members in 60 s → panic
!panic start "raid in progress" 30m · !panic end · !panic status

Panic mode locks the configured channels (or all), blocks joins, takes an emergency snapshot and pings the alert role. It ends after the duration or with !panic end.

Copy and try

Heat that escalates

!automod enable
!automod heat on decay:5
!automod threshold 50 delete
!automod threshold 70 timeout timeout:600
!automod threshold 100 ban
!automod exempt #bot-commands
!automod reset @user

Stricter in one channel, relaxed in another

!automod channel #general spamMessages 5
!automod channel #memes linksEnabled off
!automod channel #general mentionsMax reset

Good to know

  • The bot & webhook spam guard skips whitelisted channels and whitelisted webhooks: !whitelist add channel #logs automod, or !whitelist add bot <webhookId> automod. Whitelist your own logging webhooks before they post in bursts, or the guard deletes them.
  • Staff with Manage Messages are never scanned.
  • Edited messages are re-scanned; rate and repetition are not counted twice.

If it does not work

  • Someone keeps getting timed out right after release. Release with !unmute / !unquarantine (a pardon) rather than by hand; the pardon resets heat and strikes.

Still stuck? Ask in the support server.

Discord AutoMod Bot: Stop Spam, Scams & Bad Words · Sweet