Discord Intents Calculator

Choose which gateway events your bot should receive. You get the intents value, the events each intent unlocks, and ready-made code for discord.js and discord.py.

Runs entirely in your browser

Pick intents

Presets
  • Servers, roles, channels and threads. Almost every bot needs it – without it the cache is empty.

    21 events
    • GUILD_CREATE
    • GUILD_UPDATE
    • GUILD_DELETE
    • GUILD_ROLE_CREATE
    • GUILD_ROLE_UPDATE
    • GUILD_ROLE_DELETE
    • CHANNEL_CREATE
    • CHANNEL_UPDATE
    • CHANNEL_DELETE
    • CHANNEL_PINS_UPDATE
    • THREAD_CREATE
    • THREAD_UPDATE
    • THREAD_DELETE
    • THREAD_LIST_SYNC
    • THREAD_MEMBER_UPDATE
    • THREAD_MEMBERS_UPDATE
    • STAGE_INSTANCE_CREATE
    • STAGE_INSTANCE_UPDATE
    • STAGE_INSTANCE_DELETE
    • VOICE_CHANNEL_STATUS_UPDATE
    • VOICE_CHANNEL_START_TIME_UPDATE
  • Joins, leaves and member updates, plus the full member list. For welcome messages and auto roles.

    4 events
    • GUILD_MEMBER_ADD
    • GUILD_MEMBER_UPDATE
    • GUILD_MEMBER_REMOVE
    • THREAD_MEMBERS_UPDATE
  • Bans, unbans and new audit log entries (formerly GUILD_BANS).

    3 events
    • GUILD_AUDIT_LOG_ENTRY_CREATE
    • GUILD_BAN_ADD
    • GUILD_BAN_REMOVE
  • Changes to emojis, stickers and soundboard sounds (formerly GUILD_EMOJIS_AND_STICKERS).

    6 events
    • GUILD_EMOJIS_UPDATE
    • GUILD_STICKERS_UPDATE
    • GUILD_SOUNDBOARD_SOUND_CREATE
    • GUILD_SOUNDBOARD_SOUND_UPDATE
    • GUILD_SOUNDBOARD_SOUND_DELETE
    • GUILD_SOUNDBOARD_SOUNDS_UPDATE
  • When bots, Twitch or YouTube integrations are added or changed.

    4 events
    • GUILD_INTEGRATIONS_UPDATE
    • INTEGRATION_CREATE
    • INTEGRATION_UPDATE
    • INTEGRATION_DELETE
  • Fires when a channel's webhooks change.

    1 event
    • WEBHOOKS_UPDATE
  • Created and deleted invites – for invite trackers.

    2 events
    • INVITE_CREATE
    • INVITE_DELETE
  • Who is in which voice channel. Required for music bots, otherwise the bot can't join.

    2 events
    • VOICE_CHANNEL_EFFECT_SEND
    • VOICE_STATE_UPDATE
  • Online status, activities (“Playing …”) and devices of all members. Creates a lot of traffic.

    1 event
    • PRESENCE_UPDATE
  • Messages in servers. Without MESSAGE_CONTENT the text, embeds and attachments are empty.

    4 events
    • MESSAGE_CREATE
    • MESSAGE_UPDATE
    • MESSAGE_DELETE
    • MESSAGE_DELETE_BULK
  • Reactions in servers – for reaction roles.

    4 events
    • MESSAGE_REACTION_ADD
    • MESSAGE_REACTION_REMOVE
    • MESSAGE_REACTION_REMOVE_ALL
    • MESSAGE_REACTION_REMOVE_EMOJI
  • “… is typing” in server channels.

    1 event
    • TYPING_START
  • Messages in DMs with the bot. Content arrives here even without MESSAGE_CONTENT.

    4 events
    • MESSAGE_CREATE
    • MESSAGE_UPDATE
    • MESSAGE_DELETE
    • CHANNEL_PINS_UPDATE
  • Reactions in DMs with the bot.

    4 events
    • MESSAGE_REACTION_ADD
    • MESSAGE_REACTION_REMOVE
    • MESSAGE_REACTION_REMOVE_ALL
    • MESSAGE_REACTION_REMOVE_EMOJI
  • “… is typing” in DMs with the bot.

    1 event
    • TYPING_START
  • No events of its own: fills content, embeds, attachments, components and poll in messages. Needed for prefix commands like !help – slash commands don't need it.

    No events of its own
  • Server events and who is interested in them.

    5 events
    • GUILD_SCHEDULED_EVENT_CREATE
    • GUILD_SCHEDULED_EVENT_UPDATE
    • GUILD_SCHEDULED_EVENT_DELETE
    • GUILD_SCHEDULED_EVENT_USER_ADD
    • GUILD_SCHEDULED_EVENT_USER_REMOVE
  • When AutoMod rules are created, updated or deleted.

    3 events
    • AUTO_MODERATION_RULE_CREATE
    • AUTO_MODERATION_RULE_UPDATE
    • AUTO_MODERATION_RULE_DELETE
  • When AutoMod takes action, e.g. blocks a message.

    1 event
    • AUTO_MODERATION_ACTION_EXECUTION
  • Poll votes in servers.

    2 events
    • MESSAGE_POLL_VOTE_ADD
    • MESSAGE_POLL_VOTE_REMOVE
  • Poll votes in DMs.

    2 events
    • MESSAGE_POLL_VOTE_ADD
    • MESSAGE_POLL_VOTE_REMOVE
Intents value33281

Result

Paste a number to decode it (decimal, hex or binary).
Hexadecimal
0x8201
3 intents1 privileged

Privileged intents must be switched on in the Developer Portal under “Bot → Privileged Gateway Intents”, otherwise Discord closes the connection with code 4014. Up to 10,000 users the toggle is enough. Above that you have to apply for access and reapply every year – this applies since June 10, 2026; before, the limit was 100 servers.

Code

import { Client, GatewayIntentBits } from "discord.js";

const client = new Client({
  intents: [
    GatewayIntentBits.Guilds,
    GatewayIntentBits.GuildMessages,
    GatewayIntentBits.MessageContent,
  ],
});
// = 33281

How it works

  1. Start with a preset, e.g. “Slash commands only” or “Prefix commands”.
  2. Tick more intents. Search also finds event names like MESSAGE_CREATE or GUILD_MEMBER_ADD.
  3. Check the notes: privileged intents must be enabled in the Developer Portal.
  4. Copy the code for your library or the number for the IDENTIFY payload.

FAQ

Which intents are privileged?

Three: GUILD_MEMBERS (bit 1), GUILD_PRESENCES (bit 8) and MESSAGE_CONTENT (bit 15). Enable them in the Developer Portal under “Bot → Privileged Gateway Intents”, otherwise Discord closes the connection with code 4014.

When do I have to apply for privileged intents?

Since June 10, 2026 the number of users your app reaches across all servers counts: under 10,000 the toggle in the portal is enough. Above that you have to apply for access and reapply every year. The old 100-server limit no longer applies.

Why is message.content empty for my bot?

Without the MESSAGE_CONTENT intent, content, embeds, attachments, components and poll are empty – except in DMs, when the bot is mentioned, and for its own messages. Slash commands don't need the intent.

Do I need intents for slash commands?

Barely. INTERACTION_CREATE is always sent. Usually GUILDS is enough so the bot has servers and channels in its cache. Bots that only use HTTP interactions need no gateway connection at all.

What does error 4013 mean?

“Invalid intents”: the value contains bits that belong to no intent. The calculator shows such bits as “unknown”.