Contents
- How Discord calculates permissions in a channel
- Role overwrites or member overwrites?
- 1. Make a Discord channel private
- 2. Control several channels through the category
- Syncing: pros and cons
- 3. Read-only channels for announcements and rules
- 4. Lock channels in emergencies with /channel lock
- 5. Permissions right from the start: server templates
- 6. Check overwrites with the role preview
- Checklist
- Common mistakes
- FAQ
A staff channel that suddenly everyone can see, a rules channel where newcomers happily post, or a private area your own mod role can't get into: almost all of these mishaps have the same cause. Channel permissions, also called permission overwrites in Discord, behave differently than you'd expect at first glance.
In this guide you'll learn how Discord calculates a channel's permissions, how to make a Discord channel private and visible to one role only, when syncing with the category pays off and how to build read-only channels for announcements and rules. Finally you'll check everything with the role preview and the Lizbot server check.
How Discord calculates permissions in a channel
Every channel starts with the server-wide permissions. You set those under Server Settings, Roles: if any of a member's roles has a permission, the member initially has it everywhere. Then the channel's overwrites come in. Each permission can have three states there: allow (green check), neutral (slash) or deny (red X). Neutral means the channel uses whatever applies server-wide.
Discord applies the overwrites in a fixed order:
- @everyone in the channel: this overwrite applies to everyone and is applied first.
- Role overwrites: next, all of the member's roles are combined. If one role denies a permission and another allows it, the allow wins.
- Member overwrites: overwrites for individual people come last. They have the final say, even against all roles.
Two exceptions stand above everything: anyone with the Administrator permission isn't affected by channel overwrites, and the server owner sees everything anyway. So a private channel never protects against admins.
Role overwrites or member overwrites?
| Situation | Better | Why |
|---|---|---|
| Staff area, player groups, departments | Role overwrite | New members get the role, done. No channel needs to be touched. |
| A single guest in the staff chat for a week | Member overwrite | Quick to set and easy to remove again. |
| One person should no longer post in a channel | Member overwrite with deny | Takes effect even if their roles allow the permission. |
| Many individuals in many channels | Create a dedicated role | Nobody can keep track of member overwrites in bulk for long. |
Rule of thumb: overwrites for individual members are the exception, roles are the rule. How to build the roles themselves cleanly is covered in the guide Set up Discord roles.
1. Make a Discord channel private
Here's how to make an existing channel private so only a specific role can see it:
- Hover over the channel and click the gear icon (Edit Channel).
- Open Permissions on the left.
- Turn on Private Channel. Discord then denies @everyone the View Channel permission.
- Click Add members or roles and pick the role that should see the channel, for example "Moderator".
- Save your changes.
When you create a new channel, the same toggle is right there in the dialog. For finer control, open Advanced permissions under Permissions. On the left you'll see every role and member with their own overwrite, on the right every single permission with check, slash and X.
The same applies to a private voice channel: without View Channel, nobody can Connect. You only need a separate deny on Connect if the channel should stay visible but locked.
Don't forget the bots. If Lizbot should write logs, open tickets or moderate messages in a private channel, the Lizbot role needs View Channel and Send Messages there too. A bot with Administrator gets in everywhere, but that's exactly the permission you shouldn't give bots without good reason.
2. Control several channels through the category
If several private channels belong together, such as staff chat, mod log and applications, don't set the permissions in each channel individually. Make the category private instead: click the gear icon next to the category name, open Permissions and set it up there just like above. All channels synced with the category take on the permissions automatically.
At the top of a channel's permissions, Discord shows whether it's synced with its category. As soon as you change a permission in the channel itself, the sync is broken. Sync Now restores it, but it replaces the channel's own overwrites with the category's. If you move a channel into another category, check its permissions afterwards to see whether it's synced with the new category.
Syncing: pros and cons
In favour:
- One change to the category affects all channels. New staff role? Add it once, done.
- New channels in the category inherit the permissions and are set up correctly right away.
- You can see at a glance where there are deviations.
Against:
- A single channel with special permissions, such as a read-only channel in the public area, can't stay synced.
- Clicking Sync Now by accident wipes that channel's exceptions.
How to decide: sync everything that should behave the same. Leave channels with exceptions unsynced on purpose and keep their overwrites as small as possible: only the permissions that actually differ.
3. Read-only channels for announcements and rules
In #rules, #announcements or #info, everyone should read but only staff should post. Here's how to set that up:
- Open Edit Channel, then Permissions, then the advanced view.
- Select @everyone and set these to deny: Send Messages, Create Public Threads, Create Private Threads and Send Messages in Threads.
- Optional: also deny Add Reactions if you don't want emojis piling up under your rules.
- Add your staff role and set Send Messages to allow.
- Make sure the bot role can post if a bot posts messages there.
Leave View Channel and Read Message History neutral so everyone can read along. On Community servers you can also create a channel as an announcement channel. Other servers can then follow it and receive your posts automatically. You handle posting permissions there with overwrites in exactly the same way. Who may mention @everyone and @here in these channels is also controlled by permissions, see Disabling @everyone on Discord.
4. Lock channels in emergencies with /channel lock
Sometimes a normal chat channel just needs to be closed for a moment: during an argument, a spam wave or an announcement. You don't have to dig into the settings for that. Lizbot's Moderation module comes with the /channel lock and /channel unlock commands, included in the Free plan:
- /channel lock locks the current or a chosen text channel. Lizbot denies @everyone Send Messages as well as creating public and private threads, and posts a notice with the optional reason in the channel.
- /channel unlock sets exactly those three permissions back to neutral. The channel's other overwrites stay unchanged.
- /channel lockall locks all text channels after a confirmation, /channel unlockall reverses it. These two require the Manage Server permission, /channel lock and /channel unlock require Manage Channels.
- /channel slowmode sets a slow mode from 0 to 21600 seconds, in case locking would be too harsh.
Every lock is recorded in Lizbot's audit log with the moderator and reason. For raids where the whole server has to shut down, read the guide Raid protection. If a channel should stay closed for good but remain readable, see Archiving a Discord channel instead of deleting it.
5. Permissions right from the start: server templates
If you're building a server from scratch or reorganising an existing one, Lizbot can set the overwrites for you. In the dashboard you'll find the Server templates page in the sidebar under Server. In a template's editor, these options are available for categories and channels (Read only is per channel):
- Visible to staff only: @everyone is denied View Channel, the staff roles can view, write and speak.
- Read only (only staff can write): @everyone can neither post nor create threads, staff can. In staff channels such as logs, staff read along and only Lizbot writes.
- Visible even without verification: with the With verification option, new members otherwise only see the public areas until they're verified. More on this in the guide on verification.
When applying, you choose Add to existing (existing items stay, missing ones are added) or Rebuild. Rebuild deletes channels and roles that aren't in the template; Lizbot automatically creates a safety backup first. Lizbot doesn't change the permissions of roles that already exist, so an admin role, for instance, doesn't lose its permission, and channels that already exist keep their overwrites when you add to existing. With Save current server you save your current structure, including channel permissions, as your own template. The Free plan includes all ready-made templates and one custom template, Pro up to 10 custom templates plus building from a description, Studio unlimited custom templates. Details on choosing one are in the guide Server template and on the Templates page.
6. Check overwrites with the role preview
Before you open up a private area, test it from the perspective of a role. Discord offers View Server As Role for this: open Server Settings, Roles, and start the preview via the three dots next to the role name. The bar that then appears at the top lets you combine several roles and end the preview again. You'll see the server exactly as a member with that role sees it, including the channels that are missing. Test at least three perspectives:
- @everyone or unverified: does a newcomer see only what they should?
- Member: are staff channels invisible and rules read-only?
- Moderator: can staff get into every area they need?
The preview shows roles, not member overwrites. If a person has their own overwrite, check it in the channel's advanced permissions.
For Lizbot's side, the dashboard has the Server check in the sidebar, visible to admins. It reports things like "Missing permissions in #channel" when Lizbot lacks permissions a module needs in a channel, such as View Channel or Send Messages. With Set permissions, Lizbot adds the missing permissions in the channel itself, as an overwrite for itself as a member. Under Daily check you can have new errors reported to the mod log once a day. Important: the server check checks Lizbot's permissions, not your members'. For the member view, the role preview remains the right tool. What else the server check finds is covered in Checking your Discord server.
Checklist
- Server-wide permissions for @everyone kept lean, exceptions via overwrite
- Private areas set up as a category, channels synced
- Staff role and bot role explicitly allowed in the private area
- Rules and announcements: @everyone can't post or create threads
- Channels with exceptions deliberately unsynced and kept minimal
- Tested with View Server As Role from the perspective of newcomer, member and staff
- Server check in the dashboard without errors
Common mistakes
- Made private, role forgotten: then only administrators can see the channel. Add the role you want.
- Allow on the member role: if the "Member" role explicitly allows Send Messages in the channel, that cancels a deny on @everyone. A /channel lock then doesn't affect that role either. Leave such permissions neutral on member roles.
- Synced by accident: Sync Now replaces the channel's overwrites. After one click too many you have to set the exceptions again, or restore them from a backup.
- Threads overlooked: if people can create threads in a read-only channel, they'll discuss under every announcement. Deny the thread permissions too.
- Administrator for moderators: that opens every private channel to them and makes all overwrites useless. Give moderators only the permissions they need, see Build a moderation team.
- Bot locked out: a log channel the bot role can't see stays empty. The server check finds cases like this.
FAQ
How do I make a Discord channel visible to only one role?
Open Edit Channel, then Permissions, turn on Private Channel and add the role you want via Add members or roles. For several channels, set this up on the category and sync the channels.
Why can a member still see the private channel?
Usually they have a role with Administrator, another role that allows View Channel, or their own member overwrite. Check the channel's advanced permissions and test with View Server As Role.
Does allow or deny win?
Among role overwrites, allow wins. An overwrite for an individual member, however, stands above all roles, and Administrator bypasses overwrites completely.
What happens when I sync a channel with its category?
The channel takes on all of the category's overwrites, and its own deviations are lost. From then on, every change to the category also applies to this channel.
Does /channel lock change my existing channel permissions?
No. /channel lock only sets Send Messages and thread creation to deny for @everyone, and /channel unlock sets exactly those permissions back to neutral. All other overwrites stay as they were.
Can Lizbot set up the permissions for me?
Yes, with the Server templates in the dashboard: there you mark areas as visible to staff only or read-only, and Lizbot sets the overwrites when applying. The Server check fixes Lizbot's own missing permissions with one click.
Matching Lizbot features
- Server templates for Discord12 templates with role hierarchy, channels, permissions and starter messages. Or describe your server in your own words.
- Moderation and AutoMod for DiscordEvery warning, timeout and ban gets a case number and a reason. Your team sees at a glance what has already happened with a member.
More guides
- Setup7 min read
Create a Discord server: set up categories, channels, roles and permissions properly
Create a Discord server and structure it properly: categories, channels, roles and permissions step by step, with Community features and a template.
Read more - Setup7 min read
Discord server template: build roles, channels and permissions in minutes
A Discord server template creates roles, channels, permissions and rules for you automatically: check the preview, apply it, and undo it if needed.
Read more - Setup7 min read
Set up Discord roles: hierarchy, permissions and a self-assign role menu
Set up Discord roles properly: role hierarchy, permissions, channel overwrites and a role menu that lets members assign roles to themselves.
Read more
Let Liz handle it for you
Invite Lizbot, set it up in the dashboard, done. The Free plan stays free.
Rather ask first? In the support Discord

