Skip to main content

Support multiple languages in the same bot

Overview

Communicating with your customers in their preferred language makes them feel like a VIP. Ada lets you do just that! Use your bot's multilingual functionality to provide that VIP experience to each of your customers.

There are two translation methods available to you:

  • Automatic translation – Uses the Google Translate API. This is the default translation system for your bot.

  • Custom translation – Manually add your own message translations. Adding a custom translation to an Answer overrides automatic translation for that Answer.

Supported languages

Ada’s multilingual functionality supports the following languages:

  • Albanian

  • Arabic

  • Belarusian

  • Bosnian

  • Bulgarian

  • Burmese

  • Catalan

  • Chinese (Simplified)

  • Chinese (Traditional)

  • Croatian

  • Czech

  • Danish

  • Dutch

  • English

  • Estonian

  • Filipino (Tagalog)

  • Finnish

  • French

  • German

  • Greek

  • Haitian Creole

  • Hebrew

  • Hindi

  • Hungarian

  • Icelandic

  • Indonesian

  • Italian

  • Japanese

  • Kazakh

  • Khmer

  • Korean

  • Latvian

  • Lithuanian

  • Malay

  • Norwegian

  • Polish

  • Portuguese

  • Punjabi

  • Romanian

  • Russian

  • Serbian

  • Slovak

  • Slovenian

  • Spanish

  • Swedish

  • Tamil

  • Thai

  • Turkish

  • Ukrainian

  • Vietnamese

For right-to-left languages that are supported, the chat is tailored for the best chatter experience. This includes flipped chat components such as settings, Quick Replies, loading bar, etc. The team is working on support for Widget App blocks in a future release.

Always include English Answer content

You may be thinking, "Most of my customers will speak to the bot in a language other than English. I won't even bother populating content in the default English tab." This is not recommended. English is the foundation for all Ada bots. Because of this, Ada enables English by default for all bots. You cannot disable English. It will always be an option in your bot.

As unlikely as you think it is, consider the experience of a chatter who selects English. If you haven't provided Answer content in the English tab they will have a horrible experience. Populate the English tabs for each Answer to ensure all of your customers have a delightful experience.

Turn on multiple language support

To enable multilingual functionality in your bot, follow these steps:

  1. On the Ada dashboard, go to Settings > Bot Setup > Multilingual.

  2. Select the language(s) you want your bot to support.

  3. Toggle on the Automatic Translation setting.

Enable only the languages you need

Tempted to enable all languages under the sun? Hold off! Consider the following:

  • Agents will find it difficult to provide support to chatters who are handed off in a language they don’t speak.

  • It's recommended to have people on your team who speak any of the languages you enable. They can review the bot Answers and identify opportunities to add custom translations where necessary.

Set your bot’s default language

The default language is the language your bot starts chats in. If most of your customers speak the same non-English language, you can choose to set that language as your bot’s default. Your bot will automatically begin every conversation in this default language, but of course, chatters can still change the language at any time. The default language for all new Ada bots is English.

Add the language script to Embed2

You can change the bot’s default language by making a small addition to the Ada Embed2 script. You might already be familiar with it, but if you need a refresher, check out our Embed2 documentation.

Let’s take a look at how to set up a bot’s default language to French. When defining your bot’s default language use the language format codes from the ISO 639-1 language format.

<!-- <head> -->
<script
  id="__ada"
  data-handle="yourbothandle"
  src="https://static.ada.support/embed2.js"
></script>

To set the bot language, add the following window.adaSettings snippet between the head and the script of the basic Ada Embed2 script.

 <script>
      window.adaSettings = {
        language: "fr",
      }
    </script>

Your revised Ada Embed2 script will look similar to this:

<!-- <head> -->
 <script>
      window.adaSettings = {
        language: "fr",
      }
    </script>

<script
  id="__ada"
  data-handle="yourbothandle"
  src="https://static.ada.support/embed2.js"
></script>

How automatic translations work

With automatic translation activated, your bot will:

  1. Determine the initial language of the chat.

  2. Pass the chatter’s text through the Google Translate API and translate it into English.

  3. Compare the English translation of the chatter’s text with all of the bot’s training.

  4. Identify the best Answer to provide to the chatter. If it locates an exact match, then it provides the Answer to which the exact match has been trained. If it can't find an exact match, it uses natural language processing to search further.

  5. Provide the translated Answer content to the chatter.

    • If custom translations are present, they are provided to the chatter.

    • If custom translations are not present, the bot translates the Answer’s content from English to the chat language using the Google Translate API.

You can rely on automatic translations for most scenarios; however, Answers containing brand names, idioms, slang, industry-specific terminology, etc., might result in some interesting translation results. For these Answers, it's highly recommended that you create custom translations to ensure that you get your message across as intended.

How your bot initially determines the language of the chat

Your bot adheres to an order of operations when determining the chat language. It proceeds sequentially through the following criteria to determine the opening language:

  1. Embed2 - If the Embed2 script defines a default language, the bot will always launch in that language. If the language is not set in the Embed2 script, it moves on to check the chatter’s browser language.

  2. Browser - The bot launches in the chatter’s browser language. If the bot cannot detect the chatter’s browser language, it launches in English.

  3. English - If neither a default language is defined in the Embed2 script, nor can a browser language be detected, the bot launches in English.

Important

Regardless of how the bot determines the language to use, it can use only the languages you’ve enabled in its settings. Be sure to select each language you want to make available in your bot.

How chatters can change the chat language

Chatters can change the language using one of the following methods:

  • Autodetect - If a chatter types a message of at least three words and 20 characters in an enabled language, the bot will try to identify the language and change the language of the chat.

  • Language name - If a chatter types the exact name of an enabled language (e.g., "French" or "Français") into the chat field, the bot will change the chat language accordingly. This must be an exact match — typos or the name of the language within a longer message (e.g., "Do you speak French?") will not trigger a language change.

  • Chat settings - The chatter can click the Settings icon bot-settings-icon.png to access the chat window settings. They can then click Change language and select one of the languages you have enabled in your bot.

Why didn't my bot switch languages?

In some cases, it might seem like your bot should have automatically switched languages, but didn't. Here are some reasons why that might happen:

  • The languages have a lot of overlap. Some languages are so similar that your bot can't switch back and forth between them. These language pairs include:

    • Malay and Indonesian

    • Simplified and Traditional Chinese

    • Spanish and Catalan

  • The language model has a limitation.

    • Once your bot is set to some languages, it can't automatically switch to another language. These languages include:

      • Haitian Creole

      • Filipino (Tagalog)

    • The language model isn't confident about identifying some languages, so it won't automatically switch to them. These languages include:

      • Catalan

      • Croatian

      • Haitian Creole

      • Malay

      • Norwegian

      • Slovenian

  • The chatter is using Latin characters for a language with a different writing system. For languages that have non-Latin writing systems, we do not support recognizing Latin dialects derived for those languages (e.g., Zhuyin or Pinyin for Chinese).

  • The chatter didn't use diacritics. We use training data that contains diacritics, so your bot won't understand input that doesn't also include them. For example, the model predicts that "với" is in Vietnamese. However, if the chatter writes "voi" (without diacritics), the model predicts that it's in Italian instead.

Work with custom translations

The Google Translate API may struggle with brand names, idioms, slang, and industry-specific terminology. That's where custom translations come in! Ensure your message is not lost in translation by adding custom translations.

When you include custom translations, the bot overrides the Google Translate API and provides your custom translations instead!

Add a custom translation to an Answer

To add a custom translation to an Answer:

  1. In the Answer editor, under the Answer Content heading, click Add.

  2. Select one of your bot's enabled languages to add a translation in that language. After you select the language, it's added to the Answer. The new language tab contains a duplicate of the English tab’s content.

  3. Replace each block’s content with your custom translations in your selected language.

  4. Click Save.

Remove a custom translation from an Answer

To delete a custom translation from an Answer:

  1. In the Answer editor, click the language tab you want to delete.

  2. Click Delete [Language] in the bottom right corner.

Translate quick reply buttons

You can use the Quick Replies block to add quick reply buttons to the bottom of an Answer. These buttons act as links that trigger other Answers.

You can rely on automatic translations for quick reply button text or add custom translations if you prefer. The table below shows how these button titles will be translated depending on the Answer’s settings.

Answer Label custom translation provided?

English Answer Label provided?

Quick reply button text

Yes

N/A

Answer Label custom translation

No

Yes

Answer Label automatic translation

No

No

Answer Title automatic translation

Quick reply button text is automatically translated unless a custom translation is provided. To add a custom translation for a quick reply button:

  1. In the Answer editor, click Options > Answer settings.

  2. Beside the Answer Label heading, click Add.

  3. Select the language you want to translate the Answer Label to. This list is populated from the languages that are enabled in your bot.

  4. After you select the language, an additional Answer Label field appears. Input the custom translation for this Answer’s quick reply button.

  5. Click Save.

Have any questions? Contact your Ada team—or email us at help@ada.support.