# Auto-translate Slack announcements into regional channels

> When you post in your main announcements channel, we instantly translate it and share it in each regional Slack channel, so your whole team stays aligned.

- Workflow type: agent
- Services: DeepL, Slack Bot
- Categories: Operations
- Published: 2026-07-17

## What it does

- Watches your main announcements channel and springs into action the moment a new message is posted.
- Translates each announcement into every language your team speaks, keeping bold text, links, and formatting intact.
- Posts each translation into its matching regional channel, like #announcements-de, #announcements-fr, and #announcements-es.
- Skips the language the message was already written in and labels every post as an automated translation.

## What you'll need

- A Slack workspace with a bot added to your announcements channel and to each regional channel.
- A DeepL account for the translations (the free plan works too).
- The list of languages your team speaks and which regional channel each one maps to.

## Prompt

Whenever a new message is posted in our designated #announcements Slack channel, run automatically. Use a Slack message webhook event on that channel as the trigger, and treat each new top-level message as an announcement to translate and broadcast to our regional channels.

Take the announcement text and translate it into each of our team's languages using DeepL's Translate Text operation. Omit source_lang so DeepL auto-detects the original language of the message. Each target language maps to a regional Slack channel, for example German to #announcements-de, French to #announcements-fr, and Spanish to #announcements-es. target_lang accepts regional variants like EN-GB, PT-BR, and ZH-HANS when we need them, so use the variant that matches the channel.

Skip any target language whose code matches the language DeepL detected for the original message, so we never post a translation that just echoes the original in the same language. If a message is already in one of our team languages, that channel simply does not receive a duplicate.

Preserve Slack formatting and links in every translation. Keep mrkdwn like *bold*, _italic_, and <url|text> links intact so each localized post reads just like the original, and clean up the formatting per language so it looks native rather than machine-dumped. Post each translation into its matching regional channel using Slack Bot's Send a Message operation. The bot must be a member of both the source announcements channel and each regional channel it posts to.

Prefix every localized post with a short note, written in that target language, saying it is an automated translation of the original announcement (for example, an English source would read "Automated translation of the original announcement posted in #announcements."). If DeepL returns nothing usable for a language, skip that channel rather than posting an empty message.

Setup nuance: DeepL free-plan API keys end in ':fx' and call api-free.deepl.com, while paid keys call api.deepl.com; the right host is chosen automatically from the key. Keep the channel-to-language mapping easy to edit so we can add or remove languages and regional channels over time.

## How to customize

- Choose which channel is the source and which regional channels receive each language.
- Add or remove languages, including regional variants like British English or Brazilian Portuguese.
- Reword the short automated-translation note that appears at the top of every localized post.

## FAQ

### Will it re-post the message in the language it was already written in?

No. It detects the original language and skips that one, so nobody sees a pointless copy of the original.

### Does it keep Slack formatting and links?

Yes. Bold text, italics, and links are preserved so each translated post reads just like the original announcement.

### Which languages can it translate into?

DeepL supports dozens of languages, including regional variants like British English, US English, and Brazilian Portuguese. You pick the ones your team needs.

### Do I need a paid DeepL plan?

No. It works with both the free and paid DeepL plans. The free plan covers a generous number of characters each month.

### How quickly do the translations appear?

Almost immediately. Each time someone posts in the announcements channel, the translated versions land in the regional channels within moments.

Use this prompt in General Input: https://www.generalinput.com/prompts/auto-translate-slack-announcements-into-regional-channels