← Back to blog

How to Set Up Multi-Language Support

· 8 min read · Heedback Team


If you serve customers across different countries or language communities, a single-language support experience leaves people behind. Studies consistently show that customers prefer to interact with products and support content in their native language — and that preference directly impacts satisfaction and retention. Heedback’s multi-language support lets you translate your knowledge base, changelog, portal, and widget so every customer feels at home.

Prerequisites

Before you begin, make sure you have:

  • A Heedback account on the Pro plan (multi-language support is a Pro feature)
  • A clear idea of which languages your customer base needs — you can always add more later
  • Content ready to translate, or team members who can handle translations

Step 1: Configure Supported Locales

Navigate to Settings → General in your Heedback dashboard. Under the Localization section, you’ll find the Supported Locales configuration.

Click Add Locale and select from the list of available languages. Heedback supports any BCP-47 locale code, so you can add broad locales like fr (French) or specific regional variants like pt-BR (Brazilian Portuguese).

Your default locale is the fallback language — content that hasn’t been translated yet will display in this locale. Choose the language most of your customers speak. For most teams, this is English (en).

Save your changes. The locales you’ve added will now appear as tabs in every content editor across the platform.

Step 2: Translate Knowledge Base Articles

Open any article in your knowledge base editor. You’ll see a row of locale tabs at the top — one for each supported locale you configured in Step 1.

For each locale:

  1. Click the locale tab (e.g., FR for French).
  2. Enter the translated title and body content. The editor supports the same rich formatting as the default locale.
  3. If a translation isn’t ready yet, leave the tab empty. Heedback will fall back to the default locale for that article.

The fallback chain works as follows: if a customer requests content in fr-CA (Canadian French), Heedback first looks for a fr-CA translation, then falls back to fr, then to your default locale. This means you don’t need to translate content for every regional variant — a single fr translation covers all French-speaking users.

Tip: Start by translating your most-viewed articles. Check your dashboard analytics to identify which articles get the most traffic, and prioritize those.

Step 3: Translate Changelog Entries

Your changelog keeps customers informed about product updates, and localized release notes show you care about your international audience.

Open any changelog entry and use the same locale tabs to provide translations. Each entry supports translated title, body, and summary fields.

When a customer views the changelog — whether on the portal or inside the widget — Heedback serves the version matching their locale preference, falling back to the default if no translation exists.

Step 4: Configure Portal Locale Detection

The public customer portal supports URL-based locale routing. When a customer visits your portal, the locale is determined by the URL path:

  • https://portal.yoursite.com/en/help → English
  • https://portal.yoursite.com/fr/help → French
  • https://portal.yoursite.com/es/help → Spanish

If a customer visits the root URL without a locale prefix, Heedback detects their preferred language from the browser’s Accept-Language header and redirects them to the best matching locale.

You can also link directly to specific locale versions from your main website — for example, if your marketing site is already localized, link each version to the corresponding portal locale.

Step 5: Set the Widget Locale

The embeddable widget adapts its language based on configuration. You can set it explicitly via the embed settings:

<script>
  window.heedbackSettings = {
    locale: "fr",
  };
</script>

This tells the widget to display its UI and knowledge base content in French. If you don’t specify a locale, the widget defaults to the browser’s language.

For dynamic locale switching (e.g., if your app has a language picker), update the setting and reinitialize the widget when the user changes their preference.

Step 6: Manage Translations at Scale

As your content library grows, keeping translations in sync becomes a real challenge. Here are strategies that work well:

  • Track translation coverage: Heedback shows which articles have translations for each locale. Regularly review the gaps and prioritize high-traffic content.
  • Use a consistent glossary: Agree on translated terms for your product’s key concepts (feature names, UI labels, etc.) so translations feel coherent.
  • Assign locale owners: If you have team members who are native speakers, assign each person as the owner of a locale. They review and approve translations before publishing.
  • Batch your translation work: Rather than translating one article at a time, batch new content and translate in sessions. It’s more efficient and produces more consistent results.

Tips and Best Practices

  • Don’t machine-translate and forget. Automated translation is a great starting point, but always have a native speaker review the output. Awkward phrasing erodes trust.
  • Keep your default locale complete. Since it’s the ultimate fallback, every piece of content should exist in your default locale. Gaps there mean gaps everywhere.
  • Test the fallback chain. Switch your browser language to a locale you haven’t fully translated and verify that content falls back gracefully instead of showing blank pages.
  • Localize beyond words. Consider date formats, currency symbols, and cultural references in your articles. “Last Thursday” means nothing to someone in a different timezone.
  • Knowledge Base — The primary content you’ll be translating. A strong information architecture makes multi-language management much easier.
  • Embeddable Widget — Serves localized content directly in your app, so customers get help in their language without leaving your site.
  • Changelog — Translated release notes keep your entire user base informed, not just the English speakers.
  • Customer Portal — The public-facing hub where locale detection and URL-based routing deliver a seamless localized experience.