Why Discord Webhook Mentions Don’t Trigger Notifications for @everyone
🔍 WiseChecker

Why Discord Webhook Mentions Don’t Trigger Notifications for @everyone

You set up a Discord webhook to automatically post announcements in your server. The message includes @everyone, but members report they never received a notification. This happens because webhooks require explicit permission to mention @everyone and @here, and the default settings do not grant that permission. This article explains why webhook @everyone mentions fail to trigger notifications, how to enable the permission, and what other factors can block these alerts.

Key Takeaways: Discord Webhook @everyone Notification Fix

  • Server Settings > Integrations > Webhooks > Manage Webhook > Permission Override: Turn on the “Mention @everyone, @here, and All Roles” toggle for the webhook.
  • Channel-specific permission override: The channel where the webhook posts must also allow the webhook to mention @everyone.
  • Rate limits and bot interaction: Webhooks are subject to rate limits and cannot trigger other bots, including the built-in Discord bot, for @everyone.

ADVERTISEMENT

Why Discord Webhooks Cannot Notify @everyone by Default

Discord webhooks are designed as simple HTTP-based tools that post messages to a channel. They do not have the same permissions as a regular user or a bot. When you create a webhook, it receives a default permission set that explicitly denies the ability to mention @everyone and @here. This is a security measure to prevent abuse. If any webhook could mention @everyone without restriction, a single misconfigured integration could spam every member in the server.

The permission system for webhooks works through two layers. First, the webhook itself has a permission override stored in the server’s integration settings. Second, the channel where the webhook posts has its own permission overrides. Both layers must grant the Mention @everyone, @here, and All Roles permission for the notification to fire. If either layer blocks it, the mention is silently downgraded to plain text — the @everyone text appears in the message, but no notification is sent.

The Role of the Webhook’s Permission Override

Every webhook you create has a hidden permission override that is separate from the channel’s permission settings. By default, this override sets Mention @everyone to OFF. You must manually toggle it on from the webhook management screen. This override is not visible in the channel’s regular permission list; it only appears when you edit the specific webhook.

Channel-Level Permission Overrides

Even if the webhook’s override allows @everyone mentions, the channel itself might block it. If the channel’s permission settings for the webhook role or the @everyone role have Mention @everyone set to OFF or NEUTRAL, the notification will not be sent. The channel permission always takes precedence when it denies a permission that the webhook override grants.

Steps to Enable @everyone Notifications for a Discord Webhook

Follow these steps to allow a specific webhook to trigger @everyone notifications. You need the Manage Webhooks permission on the server to make these changes.

  1. Open Server Settings
    Click the server name at the top-left of the Discord window. Select Server Settings from the dropdown menu.
  2. Go to Integrations
    In the left sidebar, click Integrations. This page lists all webhooks and bots added to the server.
  3. Select the webhook
    Under the Webhooks section, find the webhook you want to modify. Click its name or the Manage button next to it.
  4. Enable the @everyone permission
    On the webhook detail page, look for the Mention @everyone, @here, and All Roles toggle. Turn it ON. This changes the webhook’s internal permission override.
  5. Save changes
    Click the Save Changes button at the bottom of the page. The webhook now has permission to mention @everyone.
  6. Verify channel permissions
    Go to the channel where the webhook posts messages. Click the gear icon to open Channel Settings. Select Permissions from the left sidebar. Look for the webhook’s role or the @everyone role. Ensure that Mention @everyone is set to ON or ALLOWED. If it is set to OFF or NEUTRAL, change it to ON.
  7. Test the webhook
    Send a test message that includes @everyone. You can use a tool like curl or a Discord webhook testing site. Check that the message triggers a notification on a test account.

ADVERTISEMENT

If Discord Webhook Still Does Not Notify @everyone

Webhook Rate Limits Are Blocking the Message

Discord enforces rate limits on webhook requests. A single webhook can send up to 30 messages per minute. If your automation sends messages faster than that, Discord may silently drop the @everyone mention or the entire message. Check your webhook script for rate limit handling. Add a delay between messages or use a queue system to stay under the limit.

The Message Content Does Not Actually Contain @everyone

Webhooks accept the content field in JSON. If you write the literal text @everyone in the content, Discord treats it as a mention only if the permission override is enabled. However, if you use the allowed_mentions object in the webhook payload and set parse: [] or omit everyone from the parse array, the mention is suppressed. Ensure your webhook payload includes "allowed_mentions": { "parse": ["everyone", "roles", "users"] } or remove the allowed_mentions field entirely.

The Server Has @everyone Notifications Disabled

Each Discord user can mute @everyone notifications in their own notification settings. If a member has set the server’s notification settings to Only @mentions and then manually disabled @everyone pings, they will not receive any @everyone notification from any source, including webhooks. This is a client-side setting and cannot be overridden by the server admin.

The Webhook Is Posting in a Thread

Discord webhooks can post messages inside threads. However, @everyone mentions inside a thread do not trigger notifications for members who have not joined that thread. If your webhook posts into a thread, only members who have explicitly joined the thread will receive the @everyone notification. To reach the entire server, post the webhook message directly into the main channel, not a thread.

Item Webhook @everyone Enabled Webhook @everyone Disabled
Text shown in message @everyone appears as a clickable mention @everyone appears as plain text
Notification sent to members Yes, if channel permissions also allow No notification is triggered
Mobile push notification Sent if user has not muted @everyone Not sent
Permission override required Webhook override AND channel override must be ON Default OFF state

You can now enable @everyone notifications for any Discord webhook by adjusting the webhook’s permission override and verifying the channel permissions. Start by toggling the Mention @everyone option in the webhook’s integration settings, then test with a message that includes the @everyone tag. If notifications still fail, check the allowed_mentions parameter in your webhook payload and ensure the message is not being posted inside a thread. For advanced control, consider using a Discord bot instead of a webhook — bots have more granular permission management and can mention @everyone based on custom logic.

ADVERTISEMENT