Discord permissions decide what each member can see and do. A member's permissions start from @everyone, add every permission their roles grant, and are then adjusted per channel by role overrides and member-specific overrides; Administrator and the server owner skip all of that. Role order doesn't add permissions, but it decides who can manage whom. This guide walks through exactly how Discord's roles and permissions system resolves, straight to the point, with worked examples for the parts that usually cause confusion.
Discord calls a server a guild internally. This guide uses "server" throughout, matching Discord's own app, but the two terms mean the same thing.
How do Discord role permissions work?
- @everyone role: when the
@everyonerole has a permission, every member in the server has it, unless a channel override denies it for them.
For example: @everyone having View Channels gives every member the ability to see the server's channels by default.
- Per-role permissions: work the same way as
@everyone. If@everyonealready has a permission, you don't need to also grant it to another role. Though granting it anyway wouldn't cause any harm. - A member has a given permission as long as at least one of their roles grants it.
Role hierarchy
Role hierarchy, also known as role position, plays a crucial part in Discord permissions. See Discord's own permission hierarchy explainer for the short version. Here's the long version, with an example.
- If any of Member A's roles has Ban Members permission, and their highest role is above Member B's highest role, Member A can ban Member B.
- It doesn't matter which specific role grants the permission. Only whether Member A's highest role outranks Member B's highest role.
- Example:
- Server roles, ranked from highest to lowest:
0.
Developer(Permissions: Ban Members only)Admin(Permissions: Administrator)Normal(Permissions: no permissions, or anything except Ban Members)Moderator(Permissions: no permissions)Support(Permissions: Ban Members)Member(Permissions: no permissions)@everyone(Permissions: no permissions)
- Member A has the
Supportrole. - Member B has the
Moderatorrole. - Even though
Supporthas the ban permission andModeratordoesn't, Member A cannot ban Member B, becauseSupportis ranked lower thanModerator. - Now flip it: if Member B only had the
Memberrole instead ofModerator, Member A could ban them, becauseSupport(Member A's highest role) now outranksMember(Member B's highest role). The permission still comes fromSupport. What changed is just where each member's highest role sits in the ranking. - Now if Member B had the
Moderatorrole and Member A hadSupportandNormal, even thoughNormaldoesn't have Ban Members permission, Member A can still ban Member B, because their highest role is above Member B's. - This shows the permission and the highest role don't need to be the same role. Discord only checks Member A's highest role position, not which specific role granted the permission.
- Hierarchy also applies to Administrator. If Member A had the
Developerrole and Member B had theAdminrole, Member A would be able to ban Member B, but not the other way around.
- Server roles, ranked from highest to lowest:
0.
How do Discord channel permissions and overrides work?
Discord has two types of channel overrides: role overrides and member overrides. This section covers both, plus how they interact with role hierarchy and @everyone. See Discord's own permissions setup FAQ for their version.
Role overrides
- Role overrides: as covered above, a role with View Channels can see every channel by default, unless a specific channel overrides that.
- Channel permissions: a member with View Channels in a given channel will be able to view that channel.
- Channel and role overrides: if a role has View Channels allowed, but that role's channel override denies it for a specific channel, members with only that role can't view that channel. With a few exceptions covered below.
- Channel permissions hierarchy: if a member has two roles, and one role has View Channels denied for that channel while the other has it allowed, the member can view that channel. Allow wins over deny when comparing role overrides against each other.
- This does not mean allow always wins overall. Role overrides take priority over
@everyone's setting, regardless of which way they go:- If
@everyoneis denied View Channels, but one of the member's roles allows it, the member can view the channel. The role's allow overrides@everyone's deny. - If
@everyoneis allowed View Channels, but one of the member's roles denies it (and no other role explicitly allows it), the member cannot view the channel. The role's deny overrides@everyone's allow.
- If
- Neutral permissions: each permission in a channel override can be set to one of three states. Allow (green check), Deny (red X), or Neutral (grey slash). Neutral means this role or member has no explicit setting for that permission in this channel. It simply falls through to the next layer in the hierarchy (role override → role's base permission →
@everyone, same as a role's base permission) instead of forcing an allow or deny.- Neutral is the default state for every permission on every channel override, until someone explicitly clicks Allow or Deny.
- Because neutral doesn't "win" or "lose" against anything, only explicit Allow/Deny settings affect the outcome. A neutral role override is effectively invisible in the hierarchy chain.
- Member-management permissions can't be set per channel: permissions that manage members at the server level, like Kick Members, Ban Members, Manage Nicknames, Manage Roles, Manage Server, and View Audit Log, don't appear in the channel permissions editor at all. These only exist as role-level permissions and always apply server-wide. They can't be allowed or denied for a specific channel, since actions like kicking or banning aren't tied to any single channel.
Member overrides
- Member overrides: as covered above for roles and channels, permissions for a channel are checked in this order: channel overrides for the member → channel overrides for the member's roles → the member's role permissions. Discord checks each layer in turn and stops at the first one with an explicit Allow or Deny set for that permission.
- A member override is a permission set directly on one specific member for one specific channel, separate from any role. Since it's checked first, it overrides everything below it, including channel overrides for roles.
- If a member has an explicit Deny set on a permission for a channel, they will not have that permission there, even if a channel override for one of their roles allows it.
- If a member has an explicit Allow set on a permission for a channel, they will have that permission there, even if a channel override for one of their roles denies it.
- Like role overrides, a member override can also be left Neutral for any permission it doesn't need to touch. Discord then moves on to check the next layer down (channel overrides for roles).
- Example: Member A has the
Supportrole, which is allowed View Channel in#staff-chatvia a channel override for that role. But#staff-chatalso has a channel override for Member A specifically that denies View Channel. Member A will not be able to view#staff-chat, because Discord checks the member override first and stops there.
The Administrator permission
- Administrator: the most powerful permission in Discord. A member with Administrator on any of their roles bypasses every permission check entirely. Channel overrides, role overrides, and even
@everyonedenies don't matter at all.- Administrator overrides the entire hierarchy just covered. It doesn't just win at the top like a member override, it skips the check completely. Discord doesn't even look at channel overrides for a member with Administrator.
- This means a channel override that denies Administrator members View Channel (whether a role override or a member override) has no effect. Administrators can see and access every channel, always.
- Administrator also implicitly grants every other permission (Ban Members, Kick Members, Manage Roles, Manage Server, etc.), even if none of those are individually enabled on the role.
- What Administrator does not bypass: role position/hierarchy still applies for actions between members. An Administrator role still needs to be positioned above a target member's highest role to kick, ban, or manage that member. Administrator doesn't let you act on someone with an equal or higher role than yours.
- The same applies role-to-role: an Administrator role can't edit, delete, or reorder a role positioned above it. Even though it technically "has" every permission, hierarchy position still gates management actions.
- Practical note: because Administrator can't be restricted by channel overrides, it should only be given to fully trusted roles/members. There's no way to hide a specific channel from an Administrator, even by accident-proofing it with overrides. The only way to limit an Administrator is to remove the permission itself.
Server owner permissions
The server owner sits above the entire permission system, including Administrator. Ownership isn't granted by any role or permission, it's a separate, single flag on the server itself.
- The owner bypasses every permission check, the same as Administrator, but also bypasses role hierarchy itself. There's no role position "above" the owner, because the owner isn't ranked in the hierarchy at all.
- The owner can be managed by no one, regardless of roles or permissions. Even a member whose highest role sits above the owner's highest role cannot kick, ban, timeout, or change the nickname of the owner. Role position comparisons simply don't apply to the owner.
- The owner is the only member who can delete the entire server, and the only action requiring ownership specifically (not just Administrator) is transferring ownership to another member.
- Ownership can only change by the current owner explicitly transferring it to someone else. It cannot be taken, voted away, or reassigned by any permission, bot, or role setup.
Every Discord permission explained
Role permissions:
| Permission | Action |
|---|---|
| Administrator | Grants every single permission to the user and bypasses all channel-specific permissions or restrictions. |
| View Audit Log | Allows viewing a record of who made which changes in the server. |
| Manage Server | Allows changing the server's name, switching regions, viewing all invites, adding apps, and creating/updating AutoMod rules. |
| Manage Roles | Allows creating new roles and editing or deleting roles lower than the member's highest role. Also allows changing permissions of individual channels the member has access to. This is shown as "Manage Permissions" in a channel's permission list. A member can only grant, on a role they create or edit, permissions that they themselves already have. They cannot hand out a permission they don't hold. |
| Manage Channels | Allows creating, editing, or deleting channels. |
| Create Expressions | Allows adding custom emoji, stickers, and sounds to the server. |
| Manage Expressions | Allows editing or removing custom emoji, stickers, and sounds in the server. |
| Manage Webhooks | Allows creating, editing, or deleting webhooks, which can post messages from other apps or sites into the server. |
| Create Invite | Allows inviting new people to the server. |
| Change Nickname | Allows the member to change their own nickname, a custom name for just this server. |
| Manage Nicknames | Allows changing the nicknames of other members. |
| Kick, Approve, and Reject Members | Allows removing other members from the server. Kicked members can rejoin if they have another invite; if the server enables Member Requirements, this permission also covers approving/rejecting join requests. |
| Ban Members | Allows permanently banning members and deleting their message history from the server. |
| Timeout Members | Allows putting a member in timeout. They can't send messages, reply in threads, react to messages, or speak in voice/Stage channels. |
| Send Messages and Create Posts | Allows sending messages in text channels and creating posts in forum channels. |
| Send Messages in Threads and Posts | Allows sending messages in threads and in posts on forum channels. |
| Create Public Threads | Allows creating threads that everyone in a channel can view. |
| Create Private Threads | Allows creating invite-only threads. |
| Embed Links | Allows links shared by the member to show embedded content in text channels. |
| Attach Files | Allows uploading files or media in text channels. |
| Add Reactions | Allows adding new emoji reactions to a message. If disabled, members can still react using existing reactions already on a message. |
| Use External Emoji | Allows using emoji from other servers, if the member is a Discord Nitro member. |
| Use External Stickers | Allows using stickers from other servers, if the member is a Discord Nitro member. |
| Mention @everyone, @here, and All Roles | Allows using @everyone or @here, and mentioning all roles, even if a role's "Allow anyone to mention this role" setting is disabled. |
| Manage Messages | Allows deleting other members' messages, or removing embeds from messages sent by others. |
| Pin Messages | Allows pinning or unpinning any message. |
| Bypass Slowmode | Allows sending messages without being affected by slowmode. |
| Manage Threads and Posts | Allows renaming, deleting, closing, and setting slowmode for threads and posts. Also allows viewing private threads. |
| Read Message History | Allows reading messages sent before the member was online/joined. If disabled, members only see messages sent while they're online (doesn't fully apply to threads and forum posts). |
| Send Text-to-Speech Messages | Allows sending TTS messages via /tts; these can be heard by anyone focused on the channel. |
| Send Voice Messages | Allows sending voice messages. |
| Create Polls | Allows creating polls. |
| Connect | Allows joining voice channels and hearing others. |
| Speak | Allows talking in voice channels. If disabled, members are muted by default until someone with Mute Members unmutes them. |
| Video | Allows sharing video, screen share, or streaming a game in the server. |
| Use Soundboard | Allows sending sounds from the server soundboard. |
| Use External Sounds | Allows using sounds from other servers, if the member is a Discord Nitro member. |
| Use Voice Activity | Allows speaking just by talking, without push-to-talk. If disabled, members must use push-to-talk. Useful for controlling background/noisy input. |
| Priority Speaker | Automatically lowers the volume of others without this permission when the member speaks. Activated via the Push to Talk (Priority) keybind. |
| Mute Members | Allows muting other members in voice channels, for everyone. |
| Deafen Members | Allows deafening other members in voice channels, so they can't speak or hear others. |
| Move Members | Allows disconnecting or moving members between voice channels the mover has access to. |
| Set Voice Channel Status | Allows creating and editing a voice channel's status. |
| Use Application Commands | Allows using commands from applications, including slash commands and context menu commands. |
| Use Activities | Allows using Activities. |
| Use External Apps | Allows apps a member has added to their own account to post messages; if disabled, those messages are private to the member. |
| Create Events | Allows creating scheduled events. |
| Manage Events | Allows editing and canceling scheduled events. |
- Manage Permissions (channel-level): in a channel's permission editor, this appears as its own toggle (separate from the server-wide Manage Roles). It lets a member change that specific channel's permissions, but it can only ever be granted to a role or member by an Administrator or the server owner. It cannot be granted by someone who merely has Manage Roles or Manage Channels without also being an Administrator or the owner.
Permissions in Better Tickets
Better Tickets builds on Discord's permissions rather than replacing them. Ticket channels are created with permission overwrites for the member, staff roles and @everyone, which you can fine-tune per category on the Permissions tab. On top of that, each ticket button (claim, unclaim, close, voice requests and more) has its own allowed and blocked roles, and command permissions can limit any command by role, channel or Discord permission.
Frequently asked questions
Why can a member still see a channel I hid from their role?
Another role they have, or @everyone, probably allows View Channel in that channel. Channel overrides from all of a member's roles are combined, and any allow beats a deny at the role level. A member-specific override beats both.
Does role order change permissions?
Role order doesn't change which permissions a member has; allows from all roles are added together. Order decides who can manage whom: you can only edit, assign or moderate roles and members below your highest role. It also decides name color.
What does the Administrator permission do?
Administrator grants every permission and ignores all channel overrides. Give it only to people you'd trust with the whole server, and use specific permissions for everyone else.
Can the server owner be restricted?
No. The owner always has every permission, no matter their roles or channel overrides.
How do I give staff permissions for a bot without Administrator?
Most bots have their own permission settings on top of Discord's. In Better Tickets, ticket actions follow each category's staff roles, and command permissions can limit any command by role, channel or Discord permission.