Skip to main content

Braze

Written by Ilya Krukowski

This article covers only the new Braze app for Lokalise. If you're looking for documentation covering the legacy Braze integration, you can find it in a separate article.

This article shows how to connect Lokalise with Braze using our new, streamlined integration. It covers the full workflow: connecting your Braze account, importing content, translating it, and sending translations back to Braze.

About the new Braze integration

We’ve introduced a new Braze integration built on Braze’s Multi-Language Composition API. It provides a more direct, reliable, and automated way to manage multilingual Braze content inside Lokalise.

What’s new compared to the legacy integration

  • Direct two-way sync
    You can fetch content from Braze and push updated translations back; no manual copy-paste and no export/import file handling.

  • Works with localized message variants
    The integration updates multilingual versions of Campaigns, Canvases, and Email Templates right inside Braze.

  • Supports pre-launch and post-launch work
    Useful for Push, Email, and In-App Messages (IAM) at any stage of your publishing flow.

Does this replace the old integration?

No. The new integration is added alongside the existing one.

  • Existing customers can continue using the legacy integration without changes.

  • To use the new version, you’ll need to install it separately.

  • Customers who already use the legacy integration can keep using it for as long as they need.

What you can localize with the Braze integration

The Braze integration in Lokalise lets you localize three types of content:

  • Campaigns

  • Canvases

  • Email templates

These are the sources you'll see when listing content inside the app.

Note: The examples in this guide use a single content type for clarity, but the workflow is the same for all three.


Before you begin

Lokalise project

First, create a Lokalise project with the Marketing and support type and choose Braze as the Content integration.

Braze permissions and API key

To connect Lokalise to Braze, you’ll need:

  • A Braze REST API key with permission to read and update Campaigns, Canvases, and Email Templates

  • Your Braze server region (e.g., US-01, EU-01)

View screenshot with API key permissions

Enable multilingual setup in Braze

Braze’s multi-language functionality is currently in early access. It means your team must contact your Braze account manager to have multi-language support activated for your workspace (Lokalise cannot enable it on your behalf).

For Lokalise to fetch your Braze content:

  • The message (campaign, canvas, email template) must have multilanguage support enabled in Braze

  • Every language appears in Braze as a separate language variant of the same message

  • If multilanguage isn’t enabled for a specific item, it won’t show up in the Lokalise app at all.

  • Lokalise can update the localized language variants, but it cannot modify the original base-language version of your content.

Prepare content for translation in Braze

To make content available for translation, your Braze message must use translation tags around the text you want Lokalise to capture. Each translatable block must be wrapped in Braze translation tags and include a unique ID, for example:

{% translation 1 %}Test message.{% endtranslation %}

Keep in mind:

  • The translation tags must appear at the beginning and end of each translatable content block.

  • Each translation block must use its own unique ID.

  • If translation tags are missing, Lokalise may not detect the content for import and translation.

  • You do not need to wrap every individual text element in its own translation tag.

  • In many cases, it is more practical to wrap a larger section, such as a full email or HTML document.

    • Lokalise will then parse the HTML and create smaller translation segments automatically.

    • This approach can save significant setup time and reduce manual work for marketers and translators.


Connect the Braze app

To get started, open your Lokalise project with the Marketing and support type and proceed to the Content management tab.

Choose your Braze region from the dropdown, paste your API key, and click Authorize.


Fetch your Braze catalog

After the integration is connected, Lokalise automatically fetches items from Braze.

Only content configured for multilingual use in Braze and wrapped in translation tags will be available for import.

What happens next

  • Wait for the sync to finish
    You’ll briefly see a loading state while Lokalise pulls your content.

  • Check for the success notification
    When the sync completes, a toast confirms that the refresh was successful.

  • Review the Ready for import list
    The table is now filled with your Braze items, including their ID, name, type, and timestamps.

Search and filter

  • Use the Search box to quickly find a specific campaign action, newsletter, or transactional message.

  • Use Filters to narrow the list by content type or other criteria.

Once you see the items you need, you can import them into Lokalise.


Import content from Braze to Lokalise

Important: Languages and locale codes must match in both Braze and Lokalise.

Before importing:

  • Add the required languages in Braze and Lokalise.

  • Make sure the language codes/locales are identical in both platforms (for example, en, en-US, pt-BR).

  • If you rename or change a locale code in either platform, mirror the same change in the other platform to keep them synchronized.

If languages or locale codes don’t match, the corresponding language variants may not import correctly.

Under the Ready for import tab, select one or more items. Then click Import from Braze.

You'll be presented with the import dialog:

  • Import languages — pick the languages you want to pull in now.

  • Overwrite existing keys (optional) if the item was imported earlier and you want to bring in the newest source changes, enable this.

    • Note: review status may reset when content is updated.

Start the import. It runs in the background, and once finished, your items appear under Imported tab.

Reimport updates when content changes in Braze

If something changes in Braze after the initial import (or even after you export translations), you can pull the latest version. Select the items under the Imported tab and click Reimport from Braze.

In the dialog, enable Overwrite existing keys if you want to refresh previously imported strings.


Translate in the Lokalise Editor

Once the content is imported, you can work on translations in the Editor.

  • Search, filter, and update translations as needed.

  • Open any key to edit individual language versions.

The Braze app cannot update the base language version of your content. Only localized variants can be edited.


Export translations back to Braze

When translations are ready, return to the Content management page and switch to Imported tab. Here, select items and click Export to Braze:

Choose the languages to export and confirm. You’ll see the standard in-progress state, followed by a success message when the export is complete.


Troubleshooting and tips

  • Don’t see an item?
    Click Refresh, then double-check your Filters and Search. If multilanguage isn’t enabled in Braze for that item, it will not appear.

  • Columns look unfamiliar?
    They come directly from standard Braze fields (ID, Name, Content Type, Updated) so the list stays consistent with what you see in Braze.

  • Working across all three content types?
    The workflow is exactly the same for Campaigns, Canvases, and Email Templates. Just use Filters to pick the type you need and follow the same steps.


Known limitations and caveats

  • Multi-language content may not import correctly when locales in Braze are configured using custom attributes. In such cases, the import may return empty results even if the connection is configured correctly and templates exist in Braze. Locales configured using Braze’s default locale settings are not affected.

    • This is a known limitation that we’re actively working to address. If you encounter this issue, please contact support so we can notify you once a fix becomes available.

  • Archived items. Archived items are not shown.

    • Exception: Braze does not provide an API to filter archived email templates, so those may still appear.

  • Draft items. Draft items are included and will be listed normally.

  • Missing translations. If a Braze entity (a full Campaign, Canvas, or Email Template) has no translations enabled in Braze, it will not appear in the Lokalise content list.

  • Language fallback. If Lokalise uses a general language (e.g., pt) but Braze only has a regional variant (pt_BR), Braze returns the pt_BR text.
    In Lokalise it will be shown and treated as pt.

  • Source language (base language). Source translations in Braze are read-only.

    • For example: if your base language in Lokalise is en and you edit en in Lokalise, this change cannot be pushed back to Braze — the Braze API does not allow updating the original source version.

  • Liquid tags. Liquid tags (e.g., {{first_name}}) are treated as plain text. Lokalise does not interpret or validate them.

Did this answer your question?