How to set up Smart Translations
Only Owners, Admins, and Managers, or custom roles with permission to edit account settings, can change Smart Translations settings. Analysts, Campaign Coordinators, and Content Creators can view these settings but can't change them. You must have a paid Klaviyo account.
Smart Translations lets you send campaigns and flows in each recipient's preferred language, so more of your audience can read your messages. Before you translate your first message, turn the feature on and set your account defaults.
This article walks through each setting under Settings > Translations: turning on Smart Translations, choosing the language property, adding languages, choosing a translation engine, mapping catalog locales, and adding glossary and do-not-translate terms.
Smart Translations uses machine translation and AI to generate translated content, which may contain errors. Review all translations before you send your message.
New to Smart Translations? Check out About Smart Translations to learn what it can translate and how it works.
Before you begin
To set up Smart Translations, make sure:
- Your profiles have language data. Smart Translations reads each recipient's language from a profile property. Shopify (through Shopify Markets) and PrestaShop fill in the Locale property for you. For other sources, collect language through forms, consent pages, CSV import, profile links, or the API. Learn more in How Smart Translations picks the recipient's language.
- Language values are BCP-47 codes where possible. A BCP-47 code, also called an IETF language tag, starts with a language (e.g.,
enfor English) and can add a region after a hyphen (e.g.,en-GBfor British English ores-MXfor Mexican Spanish). For every supported language and its code, see Supported languages and locale codes.
Turn on Smart Translations
You turn on Smart Translations once for your whole account. Turning it on doesn't translate any messages. You choose languages and translate each message from its editor.
To turn on Smart Translations:
- Navigate to Settings > Translations in your account. The Enable translations page opens.
- Turn on Turn on Smart Translation.
- Click Save.

Each section of the Enable translations page has its own Save button. Save each section before you move to the next one. The other Smart Translations settings are in the left-hand menu of the same tab: Do not translate, Catalog locale mapping, and Glossary.
Choose the language property
Klaviyo uses a single profile property to decide each recipient's language. Locale is the default.
To choose the language property:
- In the How to determine preferred language section, select a property from the dropdown. You can select any profile property. Language-related properties, such as Language and Country, appear at the top of the list.
- (Optional) Select or clear Use default profile locale when no property has a value. When it's selected, profiles with no value in your chosen property use their Locale property instead. When it's cleared, those profiles get the message's default language.
- Click Save.
Klaviyo matches property values to your languages as follows:
- BCP-47 codes - Always match. For example,
frandfr-FRboth match French. - Language and country names - Matched on a best-effort basis, so they may not always match as expected (e.g., french matches French). We recommend using BCP-47 codes where you can.
- Regional codes - Fall back to the base language (e.g.,
fr-BEgets French). - No recognized value - The profile gets the default language.
To check your data before you send, review Preview recognized languages. Select a property's tab to see each value, the language it matches, and how many profiles have that value.

For the full matching rules, see How Smart Translations picks the recipient's language.
Add languages and a default language
Add the languages you send in, then choose the language recipients see when theirs isn't one of them.
To add languages:
- On the Enable translations page, scroll to Languages. Your account language is listed first, marked Account language.
- Open the Select additional language dropdown and select a language. Repeat for each language you want to add.
- In the Default language dropdown, select the language recipients see when their preferred language isn't one you added, or is unknown.
- Click Save.

These languages are account defaults. When you translate a message, you can still change its target languages, and Klaviyo suggests languages based on the message's audience.
Choose a translation engine
The translation engine generates the translations for your account. The standard engine is the default, and you can switch engines at any time.
- Standard engine - Translates each piece of text on its own.
- Enhanced - Uses a newer model that translates with the context of the whole message. It keeps links, codes, and template tags intact, adapts tone, and checks the result. Its output can differ from the standard engine's.
To choose an engine:
- On the Enable translations page, scroll to Machine translation engine.
- In the Translation engine dropdown, select an engine.
- Click Save.
Switching engines doesn't change existing translations. To use the new engine for a message you've already translated, retranslate that message manually.
Learn more in How to enable the Smart Translations beta engine.
Match your brand voice
If you use the Enhanced engine, translations can follow the brand voice saved in your Brand Library. This setting has no effect on the Standard engine.
To use your brand voice in translations:
- In the Brand voice section, turn on Use my brand voice in translations.
- Click Save.
To check the brand voice the engine follows, click Review your brand voice.
Turn on the translations page
The translations page lists every translation for a message in a single place, along with its status.
To turn on the translations page:
- On the Enable translations page, scroll to Translations page.
- Turn on Use the new translations page.
- Click Save.
Learn more in How to review and edit translations.
Map catalog locales for Shopify Markets
If you use Shopify Markets, map each language to a catalog locale. Product blocks then show the right product details, currency, and pricing for each language. If you don't use Shopify Markets, skip this section.
To map catalog locales:
- Navigate to Settings > Translations > Catalog locale mapping.
- Click Add mapping. A new row opens with the first language and the first catalog locale already selected.
- In the left dropdown, select a language. The list includes regional variants (e.g., Australian English, Austrian German).
- In the right dropdown, select the catalog locale for that language (e.g.,
en-GBfor English). Catalog locales come from your Shopify store. Each one shows its code with its language and country (e.g.,de-ATfor German - Austria). - Repeat steps 2–4 for each language, then click Save.

These mappings are account defaults. You can change the catalog locale for a single message on its translation page.
Product blocks use the mapping as follows:
- Dynamic product blocks - Localize from the recipient's catalog locale. Profiles without a Country property get the catalog locale you mapped here.
- Static product blocks - Localize when you turn on Localize for recipient in the block.
Learn more in How to localize product blocks.
Add glossary and do-not-translate terms
Tell Klaviyo how to handle your brand's own words. Both lists apply to every translation in your account, including text inside images.
Add glossary terms
A glossary term sets the approved translation of a word or phrase for a pair of languages.
To add a glossary term:
- Navigate to Settings > Translations > Glossary.
- Select a Source Language and a Target Language.
- Click Add term.
- In the row that opens, enter the Source term and its Translation.
- Click Save.
You can use 1 * as a wildcard to match a pattern instead of listing every variation. For example, www.example.fr/* → www.example.co.uk/* sends every French link to the matching UK page. Each term can have only 1 *, and the term must also include some fixed text. Learn more about wildcards in How to use the Translation Settings Glossary, or click Learn how wildcards work in your glossary under the add-term row.
Add do-not-translate terms
Do-not-translate terms stay in the source language in every translation. Use them for brand names, product names, and technical terms.
To add a do-not-translate term:
- Navigate to Settings > Translations > Do not translate.
- Click Add term, then enter the term.
- Repeat step 2 for each term, then click Save.
Import and export terms
The Glossary and Do not translate pages both have Import CSV and Export buttons. Use them to add terms in bulk or to edit your terms outside Klaviyo. Learn more in How to import glossary terms in bulk with CSV.
What happens after you set up Smart Translations
Your settings apply to every message you translate. Next, open a message and translate it:
- How to translate campaigns
- How to translate flows
- How to translate email templates and Universal Content
- How to translate consent pages into different languages
Frequently asked questions
Does turning on Smart Translations translate my existing messages? No. You choose languages and translate each message from its editor.
What do recipients see if their language isn't one I added? They see the default language you set in the Languages section.
Can I translate sign-up forms? No. To collect language at sign-up, create a form for each language and set the language property from each one. Support for sign-up forms is coming in future releases.