A survey doesn't choose its own languages — it inherits exactly the locales configured on its domain. Add or change a domain's locales from Domains; every survey attached to that domain then needs its text filled in for each one.
Every piece of text a survey shows — field labels, answer options, the messages shown when a validation rule rejects an answer, and the survey's own copy (titles, button text, thank-you message) — needs a value for every locale the domain supports. This is enforced at publish time: a survey can't go live while any locale is missing a translation anywhere in it.
Every translatable field has an AI translate button under it. Open it, pick which language to translate from, choose all the domain's other languages or just some, and press translate. The results drop straight into the fields, where you can edit them like anything you typed yourself.
Languages that already have text are marked in the list and left unticked by default. If a non-empty one is selected anyway, you are asked before the request goes out: overwrite, fill only the empty ones, or cancel. Nothing is replaced silently.
A translation is a draft, not finished copy — the model does not know your product and can miss the tone or a term. Read it over before publishing.
Every translatable field has a limit: 1,000 characters for plain text and 10,000 for rich-text fields. It is a limit on the field, not on translation — it applies the same way to what you typed, what you pasted, and what an AI translation put there.
A counter under the field shows how much is used. A plain field simply will not accept more than the limit; a rich-text field will let you type past it, but the survey will not publish until you are back under.
By default a survey renders in whichever language it was opened in, and the visitor has no say. Turn on Language switcher in the survey's Settings and it grows a picker in its header, offering exactly the locales configured on the domain.
Choose how the picker looks: the language names written in themselves (English, Deutsch), short codes (EN, DE), or a globe icon. The list always spells the names out in full whichever you pick — a code is enough to recognise the language you are already in, not enough to find one you are not.
Changing language mid-answer is safe: everything already filled in stays exactly where it was, and only the wording around it changes. Nothing is remembered between visits — the next person to open the link starts from the language the page asked for, which is what you want on a shared device.
The language each visitor actually answered in is stored with their response, next to the survey version that served it. That is a different thing from the language their browser is set to, and the response's technical details show both.