Free tool
Discord permissions calculator
Tick what your bot needs, and get the permission integer and an invite link that asks for exactly that. Paste an existing integer to see what it grants.
Permission integer
274878024704Invite link
Enter the client ID to build the link. It never leaves your browser.
What the number means
Discord stores permissions as a single number in which every permission is one bit: View channels is 1024, Send messages is 2048, and a bot with both has 3072. The number in an invite link is the sum of every permission it asks for, which is why nobody can read one at a glance and why this calculator exists.
The invite link asks the person adding your bot to grant those permissions through a role Discord creates for it. They can untick any of them on the way in, and can change the role later, so the number is a request rather than a guarantee.
Ask for less
It is tempting to tick Administrator and be done with it. Server owners have learned to distrust bots that ask for it, and many will not add one that does. It also means that if your bot token ever leaks, whoever has it can do anything to every server your bot is in.
Ask for what your commands actually use. A bot that replies to slash commands with embeds needs very little: View channels, Send messages, Embed links, and Read message history if it looks back at earlier messages. Add moderation permissions only for moderation features.
FAQ
Questions
Why does my bot get "Missing Permissions" when it has the permission?
Usually one of three things. A bot cannot act on a member whose highest role is above or equal to its own, so move the bot's role higher in Server Settings. A channel can deny a permission the server grants, so check that channel's permission overrides. And nothing can kick, ban or time out the server owner.
What are the permissions marked 2FA?
In a server that requires two-factor authentication for moderation, Discord withholds these from a bot unless the account that owns the bot has 2FA switched on. Turn it on for your own account and the bot gets them.
What does the applications.commands scope do?
It authorises your bot's slash commands in the server it is being added to. Including it alongside the bot scope is harmless and avoids a whole category of "my commands never appeared" problems, so the link here includes it unless you untick it.
Where do I find my bot's client ID?
In the Discord Developer Portal, open your application; it is the Application ID on the General Information page. It is not secret, unlike the bot token, which you should never paste into any website, this one included.
Run your bot 24/7, free