Localization / Internationalization (i18n) for Chameleon Experiences is currently in BETA. If you are currently a Chameleon customer, have existing translation workflows in your product, and want to join the beta, please email us to join!

Internationalization / Localization / Translation are often used interchangeably but refer to different parts of the same goal. Your customers who speak different languages are more engaged with content in their preferred language.

💡 Learn about other ways to personalize your content.


Quick access

  1. Setting the Language property and Supported Languages

  2. Downloading Translation files

  3. Translating the content

  4. Preview and Publish

  5. Analytics, Reporting, and Data Exports

  6. Giving feedback, Reporting issues, and Best Practices

    The need for extra spaces

    Fallbacks and alternative languages


1. Setting the Language property and Supported Languages

To deliver a Chameleon Experience with the right content we need to know which language your end-user prefers. During the BETA we will ask you for this information. This info will be available on the Translations page.


2. Downloading Translation files

On the Experiences pages for Microsurveys, Tours, Launchers, and Tooltips select one or several Experiences and use the Bulk actions menu to 'Get Translations'.

You can also download the Translation files via REST API. Please see the developer docs for this.


3. Translating the Content

Open the resulting .yaml file and follow the included instructions for translating the content. For context, each Experience includes a preview.url where you can see the 'thing' you're translating. When your translations are complete upload the results on the Translations page.

To upload Translation files via REST API, please see the developer docs.


4. Preview and Publish

Each Internationalized experience can be previewed in the various languages you have translated into. For any Experiences that you have Translated, the Builder will show a dropdown of the different languages you have added for that Experience.


5. Analytics, Reporting, and Data Exports

All data will continue to be reported as the default language (the content added directly to the Experience). Data and analytics regarding Experiences (Tour Started, Survey Completed, etc.) will include a language property that will take the value of the currently "translated into" language for any translated Experiences. It will only be sent when the Experience is actually translated for your end-user.

6. Giving Feedback, Reporting Issues, and Best Practices

Please give us feedback on the workflow, visibility, and functionality of Translating Chameleon Experiences. You can reply directly to us on the email thread or Slack channel we have set up.😉


The need for extra spaces

For certain languages, extra spaces can give your translators more control over the final output; in these cases, you can add   (non-breaking space) directly into the translated content. The below example will show as "Extra space needed".


Fallbacks and Alternative languages

Let's imagine that you've translated only es-ES and es.

  1. For a user, the browser reports a language preference of es-ES which matches exactly and the es-ES version is displayed.

  2. For a different user, the browser reports es-AR (Argentina), Chameleon will check for exactly es-AR and, when it does not find a match, will try next to find a match for "just" es without the country code; it will find and display the es translations.

  3. For a different user, the browser reports nl-BE and you have not translated nl-BE nor nl, the default version will be displayed.


Go further

Did this answer your question?