Configuration and Development of Multilingual Chatbots (Copilot)

Multilingual bots (Copilot) are chatbots that can communicate with customers in different languages while keeping all the content in a single bot. In many cases, they can automatically detect the desired language and respond in the same language, providing a more personalized and engaging experience for customers.

For the list of supported languages, see our Supported Languages article.

Configuring a multilingual bot (Copilot)

When a bot is initially created, it’s created with a primary language. (See the Supported Languages article for more details on how to select the bot’s primary language).

To enable a multilingual bot:

  1. With a bot open, expand Languages (Preview) on the side navigation pane, and select Add languages.
Configuring a multilingual bot (Copilot)

2. Choose the languages you want to add to the bot.

Configuring a multilingual bot (Copilot)

3. Select Add Languages and confirm that the list of languages is correct.

Configuring a multilingual bot (Copilot)

Managing localization in a multilingual bot

To add the localization strings to your multilingual bot:

  1. With a bot open, expand Languages (Preview) on the side navigation pane, and select Update localizations for the language you want to update.
  2. On the Update localizations page, select JSON or ResX format to download the current localization file for that language.
Configuring a multilingual bot (Copilot)

      3. Open the downloaded file and replace the primary language strings with the appropriate translated text.
      4. Return to the Update localizations page, select Browse, and upload the translated file.

     5. Close the Update localizations page.

Authoring considerations for multilingual bots

When authoring, you can configure the bot to change the current spoken language in the middle of a conversation. That logic can reside in any topic in the bot.

To change the bot’s current language, you can set the User.Language variable value to one of your bot’s secondary languages. This selection changes the language spoken by your bot immediately.

Authoring considerations for multilingual bots

Testing a multilingual bot

To test a multilingual bot:

  1. Open the test bot.
  2. Open the menu at the top of the test bot, and select one of the secondary languages.
Testing a multilingual bot

     3. The test bot will reload itself, this time using the selected secondary language. The authoring canvas shows the secondary language.

     3. Enter a message in the secondary language to test the bot.

You can also set your browser language to the secondary language supported by your bot, and open the Demo bot website. The demo website opens in the secondary language, and the bot chats using the secondary language strings.

Multilingual bot behavior for languages that are not configured

If a bot user has their browser configured for a language that is not configured in the bot through the steps above, the bot will always fallback to its primary language (the language the bot was created in originally). The bot’s primary language cannot be changed after bot creation.

Multilingual bot behavior for missing translations

If the bot author makes a change to the bot in the primary language and doesn’t upload the translations, the bot will show the untranslated changes in the bot’s primary language. This leads to a confusing dual-language experience. Always make sure the translations are up-to-date after making changes to the bot in the primary language.

About the Author

Essam Shaaban


Shaaban, E., (2023), ‘Configuration and Development of Multilingual Chatbots (Copilot)’, available at:, [accessed 27th March 2024]

Share this on...

Rate this Post: