Building formsLanguages

Languages

Copy page

Show a form in the visitor's storefront language: the main language, added languages, the translate view and how a language is matched.

A form has one main language and any number of added languages, up to 30. Visitors see the form in their storefront language when you have added it, and in the main language otherwise.

The main language

The Main language is the language the form and its fields are written in. A new form uses your store's language. Change it on the General tab of Form settings.

Visitors in a language you have not added see the main language.

Add a language

  1. In the form editor, open the language select above the preview and choose Add language.
  2. Pick the Language to add and confirm.

A new language starts empty: translate the texts you want, the rest stays in the main language. Layout, fields and settings are shared by all languages; only texts differ.

The translate view

Choose an added language in the language select. The preview switches to that language and the left panel becomes Translate: (language).

  • With no field selected, translate the form's own texts: title, description, button label, the message after sending, the page to go to after sending (empty = the page of the main language) and the popup teaser text.
  • Select a field in the preview to translate its label, placeholder, help text and options.

Leave a text empty to show the main language. Translations are saved with the form's one Save.

To remove a language, open it and select Delete (language).

Field translations: shared and per form

Fields are shared between forms, and so are their translations:

  • In the field itself - on the Fields page, open a field and its Translations tab to translate its texts per language. That translation applies on every form that uses the field, so you translate "Email" or "Message" once.
  • Per form - in the form editor's translate view, you can override a field's translation for that one form.

A field's translation is only used in languages the form has. Add the language to the form first.

Liquid and HTML in translations

A translation can contain Liquid and simple HTML like the text it translates. When a text carries a link, such as the label of the Privacy consent field, repeat the link in the translation and translate only the words around and inside it. A translation with broken Liquid cannot be saved. See Liquid and HTML in your texts.

How the storefront language is matched

The form looks at the visitor's storefront language and picks, in this order:

  1. The exact language, for example pt-br for a Brazilian Portuguese storefront.
  2. The base language: de serves a visitor on de-ch.
  3. A regional variant of the same language: pt-br serves a visitor on pt.
  4. Otherwise the main language.

A visitor whose language is the main language, or a regional variant of it, sees the form's own texts.

What is not translated by you

Validation messages and fixed words (for example "This field is required.", Next, Back, Close) ship with the app in English, German, French, Spanish, Italian and Dutch. Other languages show them in English. The validation messages come from our server, which checks the form and answers in the visitor's language.

Good to know

  • Translations are typed by hand. There is no automatic translation.
  • The main language cannot be swapped with an added language afterwards; change the Main language only if the form's own texts really are in that language.
  • A redirect to a page of your shop, such as /pages/thank-you, opens in the visitor's language.
  • Translations of forms and fields can also be written over the API. See Developer API and MCP.

Next steps