Skip to main content

AI Message Translation

Better Messages can automatically translate incoming chat messages to each user's preferred language using AI — in real time, with no third-party API keys to manage. Each user picks their language from a list of 69 supported languages. Messages arrive translated. A toggle reveals the original. The bridge for multilingual communities, international marketplaces, and cross-border support chats.

WebSocket version

AI message translation is a WebSocket-version feature and is powered by Better Messages Cloud AI. Translation API access is included with the WebSocket license — no separate OpenAI / Anthropic API keys needed for this specific feature.

What it adds#

  • Real-time translation of incoming messages to the recipient's selected language
  • Works in private conversations, group conversations and chat rooms — each surface has its own switch
  • 69 supported languages spanning Europe, Asia, Middle East, and Africa
  • Automatic source-language detection — no need for senders to specify their language
  • HTML formatting (bold, italic, links) preserved in the translated output
  • Translation toggle — users can switch between translated and original text
  • Reliable delivery — failed translations retry in the background
  • Admin-controllable language list (restrict to a curated subset if desired)
  • Restrict translation to chosen WordPress roles
  • Privacy-respectful — translations happen via HTTPS and content isn't stored

How it works#

  1. Admin enables Message Translation in the plugin settings and chooses where it is offered
  2. Each user selects their preferred language in the messenger settings panel
  3. Translation is then switched on per conversation, from the conversation info panel or its menu. If Conversations start translated is on, a member who has picked a language gets every eligible conversation translated until they switch one off
  4. When a message arrives, it is sent to Better Messages Cloud AI for translation into the reader's language
  5. The user sees the translated message with a toggle icon to switch to the original
ActionOutcome
User in Spain sets language to SpanishReads messages in Spanish — in every eligible conversation if Conversations start translated is on, otherwise in the ones they switch on
Friend in Germany sets language to GermanSame conversation, friend sees German
User toggles to show originalSees the sender's original text
Sender edits a messageTranslated version updates automatically
Translation API is slow / temporarily failsMessage arrives in original language. Retry runs in background

Supported languages (69)#

RegionLanguages
Western EuropeCatalan, Danish, German, English, Spanish, Basque, Finnish, French, Irish, Galician, Icelandic, Italian, Dutch, Norwegian, Portuguese, Swedish
Eastern EuropeBulgarian, Bosnian, Czech, Welsh, Greek, Estonian, Croatian, Hungarian, Lithuanian, Latvian, Macedonian, Polish, Romanian, Slovak, Slovenian, Serbian
CIS & Central AsiaAzerbaijani, Belarusian, Armenian, Georgian, Kazakh, Russian, Ukrainian, Uzbek
Middle East & AfricaAfrikaans, Arabic, Persian, Hebrew, Swahili, Turkish
South AsiaBengali, Gujarati, Hindi, Kannada, Malayalam, Marathi, Nepali, Punjabi, Sinhala, Tamil, Telugu, Urdu
East & Southeast AsiaIndonesian, Japanese, Khmer, Korean, Lao, Malay, Burmese, Thai, Tagalog, Vietnamese, Chinese

Admins can restrict which languages are available to users in the settings — useful for sites targeting a specific region (e.g., only EU languages).

When AI translation matters most#

Use caseWhy it's transformative
International marketplace (Etsy-style)Buyers and vendors communicate in their own language — purchase rates rise
Cross-border support chatCustomer asks in Vietnamese, support replies in English, both see their language
Multilingual communityDiscussion threads include users from 5 countries naturally
Dating siteMatch conversations across language barriers
LMS with international studentsCourse discussions in students' native languages

How to enable#

Navigate to WP Admin → Better Messages → Settings → Translation.

  1. Turn on Enable Translation
  2. Under Where Translation Is Offered, pick the surfaces it applies to:
    • Conversations start translated — when on, every eligible conversation is translated for a member who has picked a language, until they switch one off. When off, they switch each conversation on themselves
    • Private conversations — one-to-one conversations
    • Group conversations — three or more members, including groups and courses
    • Chat rooms — note that a room's every message is translated once per language its members read
    • Bot posts — translate what chat bots post in groups and rooms. A conversation with a bot is never translated
    • Roles allowed to translate — leave every role unchecked to allow everyone. Administrators can always translate
  3. Optionally restrict the Available Languages to a curated set — the picker groups them by region, with Select all / Deselect all
  4. Users select their preferred language in the messenger settings panel inside the chat interface

Frequently asked questions#

Does the AI store my message content?#

No — Better Messages Cloud AI translates messages in real time over HTTPS and immediately discards the content. No retention, no training data, no logs of message bodies. See Privacy & GDPR for the full data-handling picture.

Will translation work in group chats?#

Yes. Group conversations and Chat rooms each have their own switch under Where Translation Is Offered, alongside Private conversations — every participant reads the thread in their own language regardless of who is speaking. Bot posts is a separate switch for what chat bots write in groups and rooms. A one-to-one conversation with a bot is never translated.

Chat rooms are the one place to think before switching it on: a room's every message is translated once per language its members read, so a busy room in a community with many languages does noticeably more translation work than a set of private threads.

How accurate is the translation?#

The plugin uses state-of-the-art neural translation models. Quality is comparable to Google Translate / DeepL for major languages. For technical or specialized content, the original is always one tap away via the toggle.

Does this work with the bad-words filter?#

Yes — the bad-words filter applies to the ORIGINAL sender's text (before translation). Translated views don't bypass moderation.

How much does this feature cost?#

It's included with the WebSocket-version license. No per-message charges, no separate translation API key needed.

See also#