Back to announcements
Joris
·company

One Form, Every Language

Your forms now speak 30+ languages. Built-in locale packs, a side-by-side translation editor, and AI-powered translation with one click.

You build a form for your German website. You write every label in German. The dropdown says "Branche." The submit button says "Absenden." It looks right. Then someone leaves a required field empty and the error message says "This field is required."

Your German form just spoke English.

Validation messages are the ugly truth about "multilingual" forms

Most form builders let you type labels in any language. That's not localization. That's a text input. The real problem is everything you don't control: the 40+ validation messages, the datepicker strings, the file upload prompts, the button text. All hardcoded in English.

So your form looks multilingual until someone hits "Submit" with an empty required field. Then it breaks character.

We fixed this. MagicForm now supports full localization: 30+ languages, covering every string your end-user sees.

Everything translatable. No exceptions.

Labels, placeholders, help text, error messages, consent text, option lists, step titles, button text, success screens. All of it. Even the system-level strings that other form builders hardcode: validation errors, datepicker months, file upload prompts.

111 system strings per language, pre-translated and ready to go.

Three ways to translate

Built-in locale packs. Add a language and all system strings (validation errors, UI chrome, datepicker labels) are pre-filled. 30+ languages out of the box. No manual work for the boring parts.

Side-by-side editor. Your default language on the left, translation fields on the right. Navigate step by step, track your progress, filter to show only missing translations. It auto-saves as you type.

AI translation (Pro). One click and the entire form is translated using Claude. You pick a tone (professional, casual, or playful) and the AI translates every field, every option label, every success screen variant. It preserves HTML tags and placeholder tokens like {min} or {email}. And it never overwrites your manual edits unless you tell it to.

Your visitor's browser decides the language

When someone loads your form, MagicForm resolves the language automatically:

  1. If you set data-locale="es" on the embed, that wins
  2. Otherwise, it reads the page's <html lang> attribute
  3. Falls back to your form's default language
  4. Falls back to English

The matching is strict on purpose. nl-BE matches your Dutch (nl) translation because Belgian Dutch is still Dutch. But pt won't match pt-BR because Brazilian Portuguese is its own thing. And if a visitor's browser language isn't one you've enabled, the form stays in your default. No surprises.

Zero performance cost for single-language forms

If your form only has one language, nothing changes. No extra data loaded, no extra API calls, no performance hit. Translations are merged server-side into the existing form response, so even multilingual forms don't make additional requests.

The widget bundle only includes English system strings. Every other language comes from the server, pre-merged with your manual translations. Built-in pack provides the defaults, your edits override them.

Submissions stay consistent

Here's a detail that matters for anyone with integrations: submissions always store field labels in your default language, regardless of which language the visitor saw.

If someone fills out the Italian version of your form, the submission data still says "Company name," not "Nome dell'azienda." Your HubSpot mappings, Slack notifications, and CSV exports all keep working. Language is a display concern. Your data stays clean.

Pricing

  • Free: your default language only
  • Basic: up to 5 languages
  • Pro: unlimited languages + AI translation

Localization is live now. If you have forms embedded on multilingual sites, you no longer need to create separate forms per language. One form. Every language your audience speaks.

Add your first language to a form.