Chatonio

This is taking longer than usual.

Chatonio

Web chat widget: languages and translations

October 26, 2026 2 viewsChannels & Integrations

The widget adapts to each visitor automatically. When someone opens the chat, Chatonio shows it in your page's language — it reads the page's standard <html lang> attribute, so a visitor browsing the Russian version of your site sees a Russian widget even if their browser is set to another language. The title, subtitle, greeting, offline message and launcher text you set, your AI assistant's display name, and your help center (knowledge base and FAQ) articles all appear in that language whenever a version exists. If the page doesn't declare a language, the widget falls back to the visitor's browser language.

The widget's own buttons and labels ship in English, German, Spanish, Russian and Ukrainian, but everything you and your AI write can be offered in as many languages as you translate. The language a visitor sees before typing follows the page (with the browser as a fallback); once they start writing, the AI simply replies in whatever language they actually use — its first reply follows the page language too.

Adding your own translations

On the Web channel settings page, open the Languages & translations section and find the Text translations block. Pick a language from Add language — a tab appears for it, holding the five visitor-facing strings: Title, Subtitle, Greeting Message, Offline Message and Launcher text. Leave a field empty and it falls back to your channel's default-language wording. Add as many languages as you like; each gets its own tab. To make your knowledge base and FAQ appear in another language, add translations to those articles as usual — the widget picks them up automatically.

The Languages and translations section with the Text translations block and a German tab

Forcing a specific language

If your site doesn't set the standard <html lang> attribute — or you want a specific embed to always use one language — add a data-lang attribute to the embed snippet. Its value takes priority over automatic detection:

<script async src="https://chatonio.com/widget/loader.js" data-channel-id="YOUR-CHANNEL-ID" data-lang="ru"></script>

Was this article helpful?