I have about 30 campaigns and want to translate into 8 language. any shortest way to do that instead of cloning campaign each time and edit the text?
How to translate My campaign into multiple language?
Best answer by zacfromson
Hi
1. Use Klaviyo’s Campaign Duplication + Dynamic Language Logic
-
Duplicate the base campaign once and keep the layout/design intact.
-
Replace text areas with dynamic variables that pull in the correct language from profile properties or segments.
-
Example:
{% if person.language == 'fr' %}
Bonjour {{ first_name }}
{% elseif person.language == 'es' %}
Hola {{ first_name }}
{% else %}
Hello {{ first_name }}
{% endif %}
-
This lets you send one campaign to multiple languages without creating entirely separate campaigns
2. Build One Campaign, Send to Segments by Language
-
Create language-based segments in Klaviyo:
-
Language = French
-
Language = Spanish
-
etc.
-
-
Then, duplicate just once per segment, not per text edit.
-
Swap in the right language text for each segment copy.
-
This is still manual but much faster than full rebuilds for each campaign.
3. Use the Klaviyo API for Bulk Creation
-
If you have many campaigns to translate (e.g., for ongoing automations), the Klaviyo API can:
-
Duplicate a campaign programmatically.
-
Insert the translated content in the right spots automatically.
-
-
You could export all translations to a CSV/JSON, then have a script loop through and update each campaign.
4. External Translation & Import
-
If you’re already using a translation management tool, export your Klaviyo email HTML to them, translate, and re-import into clones via the API or Klaviyo’s template editor.
-
This cuts down the copy-paste time drastically.
Log in to the Community
Use your Klaviyo credentials
Log in with Klaviyo
Use your Klaviyo credentials
Log in with KlaviyoEnter your E-mail address. We'll send you an e-mail with instructions to reset your password.

