Skip to main content

AI Message Translation for WordPress Chat

· 5 min read
Creator of Better Messages

WordPress communities that span multiple countries hit the same wall: the chat feed becomes a polyglot mess where half the members cannot read what the other half wrote. Static translation plugins (WPML, Polylang) translate site content but not user-generated message bodies. Better Messages handles this with AI message translation: each member sets their preferred display language; messages from other members are auto-translated by an AI provider on the fly. The sender writes in their language, the recipient reads in theirs — both sides see the original on hover.

How AI message translation works

  1. Each user picks a preferred language in their profile — one of dozens of supported languages.
  2. Messages from other users get translated to the recipient's preferred language at render time.
  3. The original is preserved; a "show original" hover or tap reveals the original-language text.
  4. The sender sees their own messages in the original language — no double-translation round-trip.
  5. Translation runs through your configured AI provider — OpenAI, Anthropic Claude, or Google Gemini — using the same API keys you set up for AI Chat Bots.

The translation is per-recipient, per-message — a Spanish-speaking member reading a thread sees every message translated to Spanish; an English-speaking member sees the same thread in English.

When to enable per-thread vs site-wide

Translation has a real cost (AI tokens) and a real UX trade-off (translated text loses nuance). Most sites enable it as an opt-in per thread:

  • A multilingual cohort chat — turn on for the thread, every member reads in their language.
  • An international vendor ↔ buyer chat — turn on once a language gap is noticed.
  • A community AMA with international audience — turn on for the AMA group.

For sites where most threads are multilingual, the global toggle in Better Messages → Settings → AI Translation enables it by default for every new thread.

Cost control

AI translation tokens are charged to the configured provider. Better Messages tracks usage:

  • Per-thread token tracking — see token spend per thread in the admin.
  • Per-role rate limiting — restrict translation to specific roles (e.g. only paid members).
  • Points charging — combine with the MyCred or GamiPress integration to charge points per translation, controlling cost without disabling the feature.

For most communities the token cost is small (translations are short), but a high-traffic public site should configure rate limits before going live.

Languages supported

The AI providers (OpenAI / Claude / Gemini) support 50+ languages between them, with Claude and GPT-4 family covering the broadest set. Specific accuracy varies by language pair — major Western languages, CJK languages, and Indic languages are all well-supported.

Installing AI message translation

  1. Install Better Messages from WordPress.org (WebSocket version recommended).
  2. Install the Better Messages AI add-on (same add-on that powers AI Chat Bots) and configure at least one AI provider's API key.
  3. Open WP Admin → Better Messages → Settings → AI Translation and enable the feature.
  4. (Optional) Configure per-role permissions and rate limits.
  5. (Optional) Combine with MyCred or GamiPress points charging.

Members then pick their preferred language in their account settings.

Free vs WebSocket version

AI message translation runs on the WebSocket version — the same constraint as AI Chat Bots, because translations are dispatched off the WebSocket event fan-out.

Frequently asked questions

Does this work with WPML or Polylang?

Yes — WPML / Polylang translate site content (posts, pages, menus). AI message translation handles user-generated chat content. They are complementary, not competing.

What happens with technical jargon or code in messages?

AI translation generally preserves code blocks and technical terms verbatim (they look like proper nouns to the model). For pure code chat, set the thread's translation to off — the original is always preserved underneath the translation, so members can toggle.

Can I rely on it for legally-binding translations?

No — AI translation is suitable for casual conversation, not for legally-binding text. For legal documents, use a certified human translator.

Does it work with end-to-end encrypted threads?

No — E2E messages are decrypted only in the participants' browsers, so the server-side AI cannot see them. Choose between E2E and AI translation per thread.

What happens if the AI provider is down?

Translation fails gracefully — the message is shown in its original language with a "translation unavailable" indicator. The thread does not break.

Can I exclude specific languages from translation?

Yes — per-thread configuration. A member who chose "auto-translate to French" sees a thread participant writing in Italian translated to French, but a thread set to "no translation" shows everything in original.

See also

Install Better Messages from WordPress.org →