Localization (Multi-language support)

Overview

Required plan

This feature or setting is available to all customers on any Recurly Engage subscription plan.

Prerequisites & limitations

Node.js >= 14

ReadMe CLI installed

Not supported on IE11

Requires internet connection

Definition

Prompt localization uses a CSV of translations to serve prompt copy in multiple languages, automatically matching your user’s locale without creating separate prompts.

Key benefits

  • Single-prompt maintenance: Manage all languages in one place—no need for multiple prompt copies.
  • Automatic matching: Detects user locale and serves the correct translation.
  • Fallback support: Default language ensures coverage when no match is found.

Key details

Setup

  1. Prepare a CSV with one row per language, using ISO 639-1 codes. Columns correspond to prompt fields (headline, body, button labels).
  2. Use the sample CSV as a template.
  3. Upload the CSV in Pulse under your prompt’s Localization section.
🚧

Important

Do not delete columns in the CSV—all columns are required. Leave unused fields blank.

Exactly one row must have default=true; this language serves as the fallback.

Desktop preview


Mobile preview


After saving, a language selector appears in the preview area. Choose a language to verify translations, then use Live preview to test on your site.

Technical elements

Recurly Engage determines the end user’s language from three sources (in priority order):

  1. Value passed by Redfast.setLanguage() in your web snippet
  2. User’s language trait
  3. Browser Accept-Language HTTP header

Matching logic:

  • Exact match on 2-letter or 4-letter code (e.g., en-US).
  • If no exact match, attempts generic 2-letter match (en for en-GB).
  • If still no match, serves the row with default=true from your CSV.