When you create a private thread in a Discord server, the default behavior notifies all members who can see the thread. This can result in unwanted @everyone or @here pings and clutter for users who are not interested. The root cause is that thread creation permissions and notification settings are linked to the server’s role configuration. This article explains how to set up private threads so that only invited members receive notifications and the @everyone role is never pinged.
Key Takeaways: Silent Private Thread Creation
- Server Settings > Roles > @everyone > Permissions > Mention @everyone, @here, and All Roles: Disabling this permission prevents the @everyone role from being pinged when a thread is created.
- Thread-Specific Permission Overwrites: Set the @everyone role to No Access in the thread’s permission overwrites to stop notifications entirely.
- Private Thread Invite Only: Only members manually added to the thread will see it and receive notifications, bypassing the @everyone ping.
Why Private Threads Still Send @everyone Notifications
Discord’s thread system is built on the same permission model as channels. When you create a private thread, the server’s @everyone role permissions apply by default. If the @everyone role has the Mention @everyone, @here, and All Roles permission enabled, any thread creation that includes a ping to @everyone will notify every member who can see the thread. This happens even if the thread is private and only visible to a subset of members.
The key is that the @everyone role’s thread permission overwrites are inherited from the parent channel. If the parent channel allows @everyone to read messages and mention everyone, then any thread created in that channel inherits those same settings. To stop @everyone notifications, you need to modify either the role’s global permissions or the thread’s specific permission overwrites.
How Thread Inheritance Works
When you create a private thread, Discord copies the permission overwrites from the parent channel. The @everyone role’s permissions in the parent channel are applied to the thread. If the parent channel gives @everyone the Read Messages and Send Messages permissions, the thread will also grant those permissions to @everyone. This means any member who can see the parent channel can also see the private thread, defeating the purpose of privacy and causing unwanted notifications.
Steps to Create Private Threads Without @everyone Notifications
You must be a server administrator or have the Manage Server and Manage Channels permissions to follow these steps.
- Open Server Settings
Click the server name in the top-left corner of the Discord window. Select Server Settings from the dropdown menu. - Navigate to Roles
In the left sidebar, click Roles. You will see a list of all roles in the server. - Edit the @everyone Role
Click the @everyone role. This role applies to every member of the server. Scroll down to the Mention @everyone, @here, and All Roles permission. Toggle it to the red position (disabled). - Save Changes
Click the Save Changes button at the bottom of the page. Now, no member can use @everyone or @here in any channel or thread, including private threads. - Create a Private Thread
Go to any text channel. Right-click a message or click the # icon at the top of the channel. Select Create Thread. In the thread creation window, toggle Private Thread on. Only members you manually add will see the thread. - Add Members Manually
After the thread is created, click the Add Members button in the thread header. Type the names of the members you want to invite. Only these members will receive a notification about the thread. No @everyone ping is sent.
Alternative Method: Use Thread Permission Overwrites
If you want to keep the @everyone role’s global mention permission enabled for other channels, you can override permissions on the thread itself.
- Open Thread Settings
While inside the private thread, click the thread name at the top of the message area. Then click Edit Thread. - Go to Permissions
In the left sidebar, click Permissions. You will see a list of roles and members with overwrites. - Add @everyone Overwrite
Click the + icon next to Roles/Members. Select @everyone from the list. - Set @everyone to No Access
For the Read Messages permission, click the red X (No Access). This removes the @everyone role’s ability to see the thread. Click Save Changes. - Add Specific Members
Now add the members you want to invite. Click the + icon again and select each member individually. Give them Read Messages and Send Messages permissions. Only those members will see the thread and receive notifications.
If Members Still Get Notified After the Fix
Thread Shows Up in the Channel List
If the private thread appears in the channel list for members who were not invited, you missed the permission overwrite step. Go back to the thread’s permissions and ensure @everyone has No Access for Read Messages. Also check that the parent channel’s permissions do not give @everyone the Read Message History permission, which can reveal the thread.
Members Receive a Notification When the Thread Is Created
This happens when you manually add members to the thread. Discord sends a notification to each added member. To avoid this, do not add members immediately. Instead, create the thread as private, then set the permission overwrites. After that, add members. The notification will still be sent, but it will be a direct thread invitation, not an @everyone ping. There is no way to suppress the direct notification to invited members.
Bot Creates a Thread and Pings @everyone
If a bot creates a private thread and uses @everyone, the bot’s role may have the Mention @everyone, @here, and All Roles permission. Edit the bot’s role to disable that permission. Alternatively, restrict which roles can use @everyone by going to Server Settings > Roles and editing each role individually.
| Item | Disable @everyone Globally | Override Thread Permissions |
|---|---|---|
| Effect on all channels | Prevents @everyone in every channel and thread | Only affects the specific thread |
| Complexity | One setting change | Multiple overwrites per thread |
| Best for | Servers where @everyone should never be used | Servers that still want @everyone in public channels |
| Maintenance | Low | High for many threads |
You can now create private threads in Discord without triggering @everyone notifications. Use the global role disable method if your server does not need @everyone at all. Use thread permission overwrites if you need @everyone in public channels but not in private threads. For maximum control, combine both methods and always verify the thread’s permission list before adding members.