Skip to content
noadmin
All guides

For everyone · 3 min read

Channel overwrites and why Administrator ignores them

How Discord resolves a bot's effective permissions in a channel.

A bot's effective permissions in a channel are calculated in layers. Server owners use the later layers to keep bots out of places they should not be.

  1. Start with the permissions of @everyone plus every role the bot has.
  2. If the result includes Administrator, stop: the bot has everything, everywhere.
  3. Apply the channel's @everyone overwrite (deny, then allow).
  4. Apply role overwrites for the bot's roles (all denies, then all allows).
  5. Apply a member overwrite for the bot itself, if any.

Step 2 is the problem

Because Administrator is checked before overwrites, a server owner cannot hide #staff-chat or #tickets from a bot that has it.

For server owners

If you must add a bot that asks for Administrator, uncheck it on the invite screen and grant the permissions it actually uses instead. If the bot breaks, ask the developer which permission is missing.

Keep reading