Languages
Updated 14 Nov 2026
The widget and the public portal are available in seven languages, so your users can give feedback in their own language.
Supported languages
| Language | Code |
|---|---|
| English | en |
| 日本語 (Japanese) | ja |
| Español (Spanish) | es |
| Français (French) | fr |
| Deutsch (German) | de |
| 简体中文 (Simplified Chinese) | zh |
| 한국어 (Korean) | ko |
List79 translates its own buttons, labels and messages. Requests and comments are shown as people wrote them.
How List79 picks the language
List79 checks these in order and uses the first one it finds:
- The address. Portal pages include the language, for example
https://list79.com/p/your-product/ja/roadmap. A link always opens in the language it was shared in. If an address has no language, List79 sends the visitor to the right one. - The user's own preference. If your app includes a
localein the user token (see below), the widget and portal follow it. - The language they last picked from the links at the bottom of the portal. It's remembered on that browser.
- Your product's setting (see below).
- The visitor's browser language.
- English, if none of the above is supported.
Follow the language your users chose in your app
Add a locale claim to the user token your server signs for the widget and portal, for example "ja" or "ja-JP":
const token = jwt.sign(
{ sub: user.id, email: user.email, name: user.name, locale: user.language },
process.env.LIST79_WIDGET_SECRET,
{ algorithm: "HS256", expiresIn: "1h" });
Languages List79 doesn't support yet are ignored, and the next item in the order is used.
Choose a default language for your product
On the product's Keys page, under Public portal, set Language for your users:
- Automatic (the default): visitors without a preference see their browser's language.
- A specific language: visitors without a preference see that language.
Widget
The widget has no address, so you can set its language directly on the script tag. This overrides everything else:
<script src="https://list79.com/widget.js" data-key="pk_…" data-lang="ja" async></script>
Or change it at any time from JavaScript, for example when the user switches language in your app:
List79.setLanguage("ja");
Without data-lang, the widget uses the token's locale, then your product's setting, then the browser language.
Your team
Team members can choose their own language under Preferences in the top bar. It's used when they open a portal or the help center without a language in the address. The team pages themselves are in English for now.