interaction-bot.com Blog

Discord Channel Translation: Auto-Translate a Single Channel

How to auto-translate a single Discord channel into one target language while the rest of the server stays as-is, with Interaction Bot as the working example.

Pastel speech bubbles in several colours on a light turquoise background, illustrating a multilingual chat
HamzaSamadh, Pexels License, via https://www.pexels.com/photo/colorful-speech-bubbles-on-blue-background-31418370/

If you search for Discord channel translation, this is the thing you are asking for: one channel on your server is auto-translated into one target language, and nothing else in the server changes. You choose the source channel, the destination channel and the language, and the bot turns every new message there into that language within a second or two, for everyone watching. The rest of the server keeps working exactly as it did before. Discord itself still does not ship this as of 2026: it has a per-reader, on-demand translate option for individual messages, but no setting that watches a channel and translates for the whole community. That is a job for a translation bot, and Interaction Bot is a good working example, active in more than 55,000 servers and translating into over 100 languages.

What “channel translation” actually means

In channel mode, the bot reads each new message that lands in one specific channel you have configured. If the message is already in the target language, it is left alone. If not, it is translated and posted back, either directly under the original message (an inline multilingual chat) or into a separate feed channel such as #translations. Every other text and voice channel on the server is untouched until you add a rule for it.

Two details matter before you configure anything. First, the translated result is written once, for everyone who can see the output channel. This is different from Discord’s own per-message translator, which shows a private copy to one reader and changes nothing for anyone else. Channel mode is a server-level broadcast: every member sees the same translation. Second, the original message stays visible by default, and that is deliberate. Machine translation still misses idioms, names and technical terms, so readers should always be able to check the source. You can switch on Delete Message in the options, but most servers prefer to keep the original with the translation beside it.

Why a server would want exactly one translated channel

Three setups come up again and again.

Announcements. You post once in #announcements in your home language, and a translated feed lets members who do not speak it keep up. One rule, hardly any noise.

A shared public channel. A community hub where several language groups need to meet in the same room. With channel mode, a Spanish speaker writes in Spanish and an English speaker reads the English translation directly under it, in real time, without asking.

An onboarding channel. New members arrive in different languages. A translated #welcome channel means everyone can read the rules before they have learned the server’s conventions.

That is the core advantage of channel mode: it isolates translation to one room, keeps the noise down, and lets you control exactly where machine translation appears. If half your server needs it, you are looking at category or role mode instead, covered below.

Two hands reaching toward each other holding speech bubble cut-outs against a blue sky, a conversation being bridged between two people
Credit: cup-of-couple, Pexels License, via https://www.pexels.com/photo/close-up-of-man-holding-paper-cutouts-in-the-shape-of-conversational-clouds-8015694/

Step by step: configuring channel translation in the dashboard

Using Interaction Bot as the working example. You need the Manage Server permission on your server and the bot already invited; the setup guide on this site walks through the invite flow step by step.

  1. Log in at interaction-bot.com with Discord, approve the OAuth screen for your server list and identity, pick the server, and click Configure.
  2. In the left navigation, open Translation, then Channel Translation.
  3. Click Add a configuration. Three fields matter:
    – Channel: the channel the bot watches for new messages.
    – Sending Channel: where the translation is posted. Pick the same channel for an inline multilingual conversation, or a separate channel for a clean, quieter feed.
    – Language: the target language. Run /languages in Discord first if you want to confirm a language is supported before building the rule.
  4. Open Options only when you need different behavior: Style (embed, webhook or plain message), Delete Message, Delete Translation, Translate Bot, and Always Send (also translate messages that already match the target language).
  5. Save the popup. Then use the page-level Save control at the bottom of the page. Two separate saves, and the second is the one that trips people up: the rule is not live until the page is saved.

Roduz’s six-minute walkthrough of Interaction Bot shows that dashboard flow and the slash commands side by side, so you can see what each step looks like in a real server:

Whichever bot you pick, know up front whether channel rules are configured in a dashboard or by slash command. On Interaction Bot the persistent rules live in the dashboard, and the slash commands are the on-demand and testing tools, covered next.

The slash commands you will actually use

Three commands matter inside a translated channel:

  • /translate translates any single message on the spot, useful in channels that are not auto-configured.
  • /detect tells you which language a message is written in, which is exactly what the bot’s detector has to decide for every message.
  • /languages lists everything the bot supports, so you can confirm you typed the target language correctly.

Two configuration commands are worth knowing. /config get

Channel mode versus category, role and flag translation

Channel, category, role and flag are the four scopes a translation bot can work at, and they answer different questions about your server.

Mode What it covers When translation happens Best fit
Channel One channel Every new message, into one target language A single room with a single audience: #announcements, an onboarding channel
Category Every channel inside one Discord category Same as channel, and new channels inherit the rule A whole section in one language, like a “Spanish Support” category
Role Messages from members holding a role Every message from those members One language group inside a larger community
Flag Any channel you enable it in Only when a member reacts with a flag emoji Open channels where most people already share a language
A smartphone screen showing a grid of country flag emojis, the reactions members use to request a flag-based translation
Credit: Tim Witzdam, Pexels License, via https://www.pexels.com/photo/smartphone-display-with-world-flags-emojis-31995462/

The short version: channel mode is the default and the right call for exactly one room with exactly one audience. Upgrade to category mode when every channel under a section shares the same audience, because new channels in that category inherit the rule and you stop chasing configuration. Role mode fits a group that speaks one extra language. Flag mode is the lowest-noise option: nothing is translated until someone asks, which suits a busy public channel where auto-translating everything would be noise. The best-practices article on this site walks through all four modes and the type of server each one fits.

How to test before you announce

Do not announce the new translated channel on the strength of a configuration that looks right. Test it in this order:

  1. Use a quiet, preferably private channel for the first run.
  2. Post a message in a language different from the target. Within a second or two the translation should appear in the sending channel you chose. Check the style: a reply beside the original, an embed, or a webhook feed.
  3. Post a very short message like “ok”. With a detector threshold set, it should stay untranslated. Adjust /config detector if needed.
  4. Post a message already in the target language. By default nothing happens; if you enabled Always Send, you should see a translation anyway.
  5. If you used a separate sending channel, confirm both the original channel and the translated feed look the way you want.
  6. Check it as a plain member, not just as admin: you can see the source channel and the output channel, and the bot has send rights in that output channel.
  7. Confirm the target language exists with /languages, and if a translation looks suspicious, check what /detect thinks your test message is.

Only when a fresh member account passes all seven steps should you flip the switch in public. The guide to connecting Discord to translate has more testing detail and shows the four connection methods side by side.

The short version

Channel translation is one channel, one target language, everything else untouched. Configure it in the dashboard, learn the three on-demand commands, choose it over category, role and flag modes when you genuinely have a single room with a single audience, and test with a plain member account before announcing it. Keep the originals visible, expect machine translation to stumble on slang and names, and you end up with a channel that everyone can read.

Published by interaction-bot.com.

Visit interaction-bot.com

Made with AI.