How to Add a Translator Bot to Discord: A Step-by-Step Guide
A step-by-step guide to adding a translator bot to a Discord server: admin prerequisites, finding the bot, authorizing it through Discord OAuth, configuring translation channels, and testing.
How to Add a Translator Bot to Discord: A Step-by-Step Guide
Adding a translator bot to a Discord server is a five-minute job for whoever already holds Manage Server or Administrator on the server. The bot is invited through Discord’s own authorization screen, dropped into a server you administer, and then configured either with slash commands or in a web dashboard. The flow below walks through every step, using Interaction Bot, a translation bot active in more than 55,000 Discord servers (homepage figure, retrieved 2026-07-31), as the worked example, because the same flow applies to any translator bot that exposes a public invite link.

What you need before you start
Two things, both on your side rather than the bot’s:
- A Discord account that is a member of the server you want the bot to join. The Discord authorization screen will only let you add a bot to a server where you already have a role.
- A role with the Manage Server permission (also called Manage Guild in Discord’s permission list, see Discord developer docs, “Permissions”) on that server, or the Administrator permission. Without one of these, the “Add to Server” dropdown on the OAuth screen will appear greyed out and the invite will fail with an “insufficient permissions” error. The “Administrator” permission is a shortcut that grants every other permission, including Manage Server; for most setups, Manage Server alone is enough.
A third, optional prerequisite: a quiet channel in the server where you can test translations without spamming the rest of the community. Most translation bots only act in channels they can see, so this is a matter of politeness, not configuration.
How to find a translator bot to add
Discord does not host a built-in bot directory inside the desktop client. Bots are discovered through:
- The bot’s own website. Every legitimate bot publishes an “Add to Discord” button on its homepage. For Interaction Bot, the button is at interaction-bot.com and the invite link itself is
https://invite.interaction-bot.com/. - Public bot directories. Third-party listings like top.gg index Discord bots by category, votes, and server count. The bot’s
/voteand/inviteslash commands, once it is in your server, return its own listing and invite links respectively, per the Interaction Bot general commands list.
A good rule of thumb: search the bot’s name plus “discord bot” in any search engine, then look for an interaction-bot.com, discord.com/oauth2/authorize?client_id=..., or a top.gg URL that points at a real bot page, not a download.
Invite the bot and authorize it
The “add” step itself is the Discord OAuth screen. Clicking the Add to Discord button on interaction-bot.com takes you to an authorization URL of the form:
https://discord.com/oauth2/authorize?client_id=893494390142697493&permissions=1072235544144&scope=bot%20applications.commands
The interesting part is the permissions= value. For Interaction Bot, that is 1072235544144, which decodes to 21 individual Discord permissions, including:
| Permission | Why a translator bot needs it |
|---|---|
| View Channels | See messages to translate. |
| Send Messages | Post the translated message. |
| Manage Messages | Delete the original, or its own translation, per your configuration. |
| Manage Webhooks | Post translations under a custom username and avatar per source language. |
| Use Slash Commands | Register /translate, /help, /languages, etc. |
| Connect (voice) and Send TTS Messages | Read translations aloud in a voice channel. |
| Manage Channels | Optional; used for some advanced configurations. |
The full list of what each bit means lives in the Discord developer permissions reference. You do not need to understand all of them; the important thing is that you can untick the ones you do not want before clicking Authorize, and that the bot will explicitly tell you in its setup documentation which permissions it actually relies on.
After you pick a server from the dropdown and click Continue, Discord shows the final confirmation screen. One more click and the bot appears in your member list, usually online within a few seconds.
Log into the dashboard and pick your server
Most non-trivial configuration is done in the bot’s web dashboard, not in Discord. For Interaction Bot the dashboard lives at interaction-bot.com/servers; the homepage Login button redirects there.
When you click Login, you are sent through Discord’s own OAuth flow. You will see a screen asking you to scan a QR code with the Discord mobile app, or to log in with a passkey, or with email and password. Discord does not share your password with the bot, and the bot does not gain access to your account beyond what you see on the consent screen.
Once you are in, you land on a server-pick page. Select the server you just invited the bot to, click Configure, and the dashboard for that server opens in the left-hand navigation bar.
Configure a translation channel
The first thing to set up is at least one translation channel. In the Interaction Bot dashboard, this lives under Translation → Channel Translation. Click Add a Configuration and a popup asks for three required parameters:
- Channel: the source channel, where messages in other languages will be picked up.
- Sending Channel: where the translation will be posted. This can be the same channel, or a separate “translations” channel you create for the purpose.
- Language: the target language for the translation.
Clicking Options on the same popup exposes five more useful toggles, which the Channel Translation documentation describes in full:
- Style: send translations as a Discord
embed, as awebhook(so the translation appears to come from the original author), or as a plainmessage. - Delete Message: delete the original message if it was not in the target language.
- Delete Translation: auto-delete the translation after roughly 0.13 seconds per character of translation length, which is useful in busy channels.
- Translate Bot: also translate messages written by other bots (premium only).
- Always Send: send a translation even if the message was already in the target language.
A practical first setup is to pick a single source channel, a single target language, embed style, and leave the rest at their defaults. Click Save on the popup, then Save again at the top of the page to push the configuration to Discord. (The dashboard stages changes locally; until you click the top-level Save, your server still runs the previous configuration.)

Pick the translation mode that fits your server
Interaction Bot ships with three translation modes, each configured in its own section of the dashboard:
| Mode | What it translates | When to use it |
|---|---|---|
| Channel Translation | Every message in the source channel that is not in the target language. | Public channels, announcements, support rooms. |
| Role Translation | Every message sent by a user or bot holding the configured role. | A team channel where multilingual staff need to follow each other. |
| Flag Translation | Any message the reader marks with a flag emoji. | A general channel where you want translation to be opt-in, not automatic. |
The Flag Translation page describes the configuration: enable it per channel, choose a sending mode (Every time re-sends on every reaction, Once only sends if the message has not been translated yet by the flag feature), and optionally auto-delete the translation. The /translate command and the Flag Translation mode are independent; you can use both at once.
Test the bot
Open a non-#general channel and try each of these:
/helplists the commands the bot exposes on your server. Per the Translation commands page, the core set is/translate <message> <language>,/detect <message>,/languages,/config get <option>, and/config detector <char>./translate Hello, how are you? frenchwill return a translation into the named language (use/languagesfirst if you are unsure of the exact name the bot expects)./languagesprints the full list of supported languages. The homepage claims over 100; the command itself is the source of truth if you need a precise number.- Send a message in a configured channel with a flag emoji reaction. The bot should reply in the same channel with the translation.
If anything fails, the first thing to check is the Interaction Bot status page. If the bot is up, the next stop is troubleshooting.
Troubleshooting common issues
A few problems account for most “the bot is not working” reports, and the Interaction Bot FAQ covers two of them explicitly:
- The bot is offline. Check interaction-bot.com/status first. A red incident banner means the bot’s translation cluster is down across all servers, not just yours.
- A message is detected in the wrong language. The bot supports more than 100 languages and occasionally mis-classifies short messages or messages heavy in emojis. The fix is on the dashboard: raise the minimum message length under the detector setting, or ban the language it is being confused with. The same threshold is exposed as a slash command:
/config detector <char>. - The translation is wrong. The free tier uses a less expensive translation model, which can produce lower-quality output, per the Interaction Bot FAQ. The premium tier, paid through the bot’s Patreon, routes translations through Google Translate’s character pool.
- The bot joined but never speaks. The OAuth screen defaults to a long permissions list. The most common cause is that you unticked a permission the bot actually needs (typically Send Messages or Use Slash Commands), or that a channel-level overwrite is blocking it. Re-invite the bot from the homepage, leave the default permissions in place, and double-check the specific channel’s permission overwrites in Discord’s channel settings.
- Translations are not appearing automatically. You have configured them in the dashboard popup, but the dashboard’s top-level Save button has not been clicked. The popup saves the configuration to the dashboard; the top-level Save publishes it to Discord.
A short walkthrough of the same flow, in case you would rather watch it once, is in the video below. It is recorded by the Roduz channel and uses the Interaction Bot icon and Discord icon on its thumbnail, so the match with this guide is exact.
Next steps
The full reference for every command, every dashboard panel, and every option on the configuration popups lives in the Interaction Bot documentation. Start at Getting started if you have not yet used the bot, and at the Dashboard page if you are returning to a server you have already configured. For any question the docs do not cover, the in-server /support command returns an invite to the support Discord.
Published by interaction-bot.com.
Visit interaction-bot.comMade with AI.