If you manage a busy Discord server, you might want to slow down how often a specific member can send messages in a channel. This prevents spam, reduces clutter, and gives other members a chance to participate. Discord calls this delay a slowmode, and it applies to individual users, not the entire channel. This article explains how to set a cooldown on a per-member basis using Discord’s permission system.
By default, slowmode is set at the channel level, affecting everyone equally. However, you can override this for specific members by assigning them a role with a different slowmode value. This lets you enforce a longer wait for one user while others post freely. The key is understanding how Discord resolves permission conflicts between roles and the @everyone role.
This guide covers the exact steps to create a custom role, assign it to a target member, and configure the slowmode value. It also explains common mistakes like role hierarchy order and permission inheritance. After reading, you will be able to control message frequency for any member in any text channel.
Key Takeaways: Discord Per-Member Slowmode via Roles
- Server Settings > Roles > Create Role: Create a new role and set the slowmode permission to a specific number of seconds.
- Server Settings > Roles > Role Hierarchy: Place the new role above the @everyone role in the list so its permission overrides the channel default.
- Server Settings > Members > Assign Role: Add the custom role to the target member to apply the cooldown only to that user.
How Discord Slowmode Works for Individual Members
Discord’s slowmode feature controls how long a user must wait before sending another message in a text channel. The wait time is set in whole seconds, from 5 seconds up to 6 hours. When a user sends a message, a timer starts. Until the timer expires, the user cannot send a new message in that channel.
The standard method sets slowmode at the channel level using the channel edit panel. This applies the same cooldown to every user who can see the channel. To apply a different cooldown to a specific member, you must use role-based permissions. Discord’s permission system gives highest priority to the role with the most specific permission value, not the highest role in the hierarchy.
Permission Resolution Order
When a user has multiple roles, Discord evaluates permissions in this order:
- The @everyone role provides the baseline permissions for all members.
- Any role assigned to the user can override @everyone if the permission is set to Allow or Deny.
- If two roles conflict on the same permission, the role that appears higher in the Server Settings > Roles list wins.
The slowmode permission is called Manage Messages in Discord’s permission list. Setting it to Allow in a custom role does not grant message management rights. Instead, it removes the slowmode lock entirely for that user, allowing them to bypass the channel cooldown. To enforce a longer cooldown on a specific member, you must set the slowmode value on the channel, then create a role that denies the Manage Messages permission and assign it to the target member.
Steps to Set a Per-Member Cooldown in a Discord Channel
Follow these steps to apply a different slowmode to one member while keeping the default for everyone else. You need the Manage Server permission or the Administrator permission to complete this process.
- Open Server Settings
Click the server name in the top-left corner of the Discord window. From the drop-down menu, select Server Settings. - Create a New Role
In the left sidebar, click Roles. Then click the Create Role button. Name the role something recognizable, such as “Cooldown-User” or the member’s name. Click the Save Changes button at the bottom. - Set the Slowmode Permission
With the new role selected, scroll to the General Permissions section. Find the permission labeled Manage Messages. Set it to the red X (Deny). This prevents the role holder from bypassing the channel slowmode. Click Save Changes. - Adjust Role Hierarchy Position
In the Roles list, drag the new role so it appears above the @everyone role. If the role is below @everyone, Discord will ignore its Deny setting for Manage Messages and the member will still use the channel default. The higher role always wins in a conflict. - Set the Channel Slowmode
Go to the text channel where you want the cooldown. Right-click the channel name and select Edit Channel. Click the Slowmode field and enter the number of seconds for the default cooldown. For example, enter 30 for a 30-second wait. Click Save Changes. - Assign the Role to the Target Member
Return to Server Settings and click Members. Find the member you want to restrict. Click the + button in their Roles column and select the new role you created. The member now has a Deny on Manage Messages, which forces them to obey the channel slowmode.
After these steps, only the assigned member will see the cooldown timer. All other members who do not have the role will see no slowmode, or the channel default if you set one. If you want to apply a different cooldown value to multiple members, create separate roles with different Deny settings or reuse the same role for all targeted users.
Common Mistakes When Setting Per-Member Slowmode
Role Is Below @everyone in the Hierarchy
If the custom role is positioned below @everyone, Discord treats @everyone’s permissions as the final authority. The Deny on Manage Messages will have no effect. Always drag the custom role above @everyone in the Roles list.
Setting Slowmode on the Role Instead of the Channel
Some users try to set a slowmode value directly on the role. Discord does not have a role-level slowmode setting. The slowmode value is always set on the channel. The role only controls whether the user can bypass that value.
Using Allow Instead of Deny for Manage Messages
Setting Manage Messages to Allow on the role will let the member bypass the channel slowmode entirely. This is useful if you want to exempt a user from the cooldown. To enforce a longer cooldown, you must use Deny.
Channel Default Is Already Set to a High Value
If the channel already has a slowmode of 60 seconds and you want a specific member to wait 120 seconds, you cannot do that with a single role. The role can only Deny Manage Messages, which forces the member to obey the channel default. To increase the wait for one member, you must set the channel slowmode to 120 seconds, then create a second role with Manage Messages set to Allow and assign it to everyone else. This is more complex and requires managing two roles.
Discord Slowmode Control: Role-Based vs Channel-Based
| Item | Channel-Based Slowmode | Role-Based Slowmode (Per-Member) |
|---|---|---|
| Configuration location | Edit Channel > Slowmode field | Server Settings > Roles > Manage Messages permission |
| Applies to | All members who can see the channel | Only members assigned the custom role |
| Cooldown value | Set in seconds (5s to 6h) | Either bypass (Allow) or enforce (Deny) the channel value |
| Role hierarchy needed | No | Yes — role must be above @everyone |
| Use case | General spam prevention | Targeting a specific user with different posting limits |
You can now apply a custom cooldown to any member in your Discord server using role permissions. The key steps are creating a role with Manage Messages set to Deny, placing that role above @everyone in the hierarchy, and assigning it to the target user. For advanced control, consider using a bot like MEE6 or Dyno that supports per-user cooldown timers with custom durations. Those bots can enforce wait times that differ from the channel default without requiring extra roles.