Quick answer: open Server Settings → Roles, select Create Role, give it a name and colour, set its permissions in the Permissions tab and press Save Changes. Assign it to people from the Members tab. Then drag roles into the right order, because a member (or bot) can only manage roles that sit below their own highest role.
Create and assign a role
- Select the server name in the top-left and open Server Settings.
- Go to Roles and select Create Role. New roles are added at the bottom of the list, just above
@everyone. - Name the role and pick a Role Color. A member shows the colour of their highest role.
- Open the Permissions tab and switch on only what the role needs. New roles start from the same permissions as
@everyone, so check what@everyonealready allows first. - Press Save Changes.
- Assign it in Server Settings → Members by selecting the + next to a member, or from a member's profile.
- Drag the role up or down the Roles list to set its place in the hierarchy.
The steps are the same in the mobile app, but a few bulk tools are desktop-only. For example, the Clear Role Permissions button doesn't exist on mobile, so you untick permissions one by one there.
How the role hierarchy works
Roles run top-down. Discord's rules for who can do what:
- Members can only affect people whose highest role is lower than theirs. A moderator can't kick, ban or rename someone with an equal or higher role, even with the permission switched on.
- With Manage Roles, a member can create and edit roles below their own, and can only grant permissions they have themselves.
- Administrator grants every permission and ignores all channel restrictions. Give it to as few people as possible, and to bots only if the bot truly needs it.
A starting structure that works for most community servers, top to bottom:
Owner (you, not a role) Admin – trusted co-owners. Avoid the Administrator permission if you can. Moderator – timeouts, kicks, bans, message management Support – sees and answers tickets Bots – sits above every role a bot needs to hand out Event Host – can manage events and post in event channels Verified – full member access after verification Ping roles – Announcements, Events, Giveaways (no permissions at all) @everyone – unverified: sees welcome, rules and verify only
Which permissions each role needs
Server-wide permissions are the sum of everything a member's roles allow, plus @everyone. Keep the risky ones on as few roles as possible.
| Permission | @everyone (unverified) | Verified | Support | Moderator | Admin |
|---|---|---|---|---|---|
| View Channels | Only start-here channels | ✓ | ✓ | ✓ | ✓ |
| Send Messages | Verify channel only | ✓ | ✓ | ✓ | ✓ |
| Embed links / attach files | ✗ | ✓ | ✓ | ✓ | ✓ |
| Mention @everyone | ✗ | ✗ | ✗ | ✗ | ✓ |
| Manage Messages | ✗ | ✗ | Ticket channels | ✓ | ✓ |
| Timeout Members | ✗ | ✗ | ✗ | ✓ | ✓ |
| Kick / Ban Members | ✗ | ✗ | ✗ | ✓ | ✓ |
| Manage Channels | ✗ | ✗ | ✗ | ✗ | ✓ |
| Manage Roles | ✗ | ✗ | ✗ | ✗ | ✓ |
| Manage Server | ✗ | ✗ | ✗ | ✗ | ✓ |
| Administrator | ✗ | ✗ | ✗ | ✗ | Owner's call |
Ping roles (Announcements, Events, Giveaways) get no permissions. They exist only so people can be mentioned.
Channel permissions and private channels
Channel settings start from the server-wide permissions and then apply overrides in this order. Later steps win:
| Order | What Discord applies |
|---|---|
| 1 | Denies for @everyone on the channel |
| 2 | Allows for @everyone on the channel |
| 3 | All denies from the member's roles, at once |
| 4 | All allows from the member's roles, at once |
| 5 | Denies set for that specific member |
| 6 | Allows set for that specific member |
That's why one role allowing View Channel beats another role denying it: role allows are applied after role denies.
Make a channel visible to one role only
- Right-click the channel and choose Edit Channel → Permissions.
- Turn on Private Channel. Discord removes View Channel from
@everyonefor you. - Select Add members or roles and add the roles that should see it, for example Moderator and Admin for a staff chat.
To lock a whole server so new joiners see nothing until they get a role, clear the @everyone permissions and give access through a member role. The setup guide covers that.
Mistakes that break permissions
- Bot role too low. Bots follow the same hierarchy as people.
- Channel out of sync with its category. A channel you edited separately stops following the category's permissions. Check both when something looks wrong.
- Too much on
@everyone. Every new role inherits those defaults, and every unverified joiner has them. - Administrator handed out casually. It bypasses every channel lock, including staff and log channels.
- Ping roles with permissions. Self-assignable roles should never grant anything except a mention.
Check it before members arrive
Discord has a View Server As Role option in role settings that shows the server as a given role sees it. I still finish every build by joining with a fresh alt account, because that also catches verification and onboarding steps a role preview skips.
Sources
Checked on 12 November 2026. Discord changes menus from time to time, so if a step looks different, the linked article is the reference.