# Language setting

Set source language, control respondent language selection, and understand locale fallback behavior.

## Language setting

Choose the source language for a form, decide how respondents land in a language, and understand how locale fallback works.

<h2 id="source-language">Source language</h2>
<p>
  Set the source language under <strong>Form language</strong> in <strong>Form settings → General</strong>. This is the language you author
  the form in and the fallback respondents see when no published translation matches.
</p>
<p>
  Source language controls formbase's built-in respondent UI: buttons, validation messages, progress text, default success messages, default
  respondent emails, date/time formatting, and number formatting.
</p>

> ℹ️ **Source language is not translation**
> <p>
>     Changing source language localizes built-in UI. It does not rewrite your question labels, help text, options, content blocks, custom
>     thank-you pages, or custom emails. Use <a href="/building-forms/translating-form-content">Translating form content</a> for custom
>     content.
>   </p>

<h2 id="supported-languages">Supported languages</h2>
<p>
  formbase offers 65 languages, and the built-in respondent UI is translated into every one of them. The list runs from Afrikaans, Amharic,
  Arabic, Bengali, Bulgarian, Burmese, Catalan, Croatian, Czech and Danish through to Ukrainian, Urdu, Uzbek, Vietnamese, Chinese
  (Simplified) and Chinese (Traditional), and it includes the regional variants <code>en-GB</code>, <code>es-MX</code>, <code>fr-CA</code>{' '}
  and <code>pt-BR</code>. The picker in <strong>Form settings → General</strong> is searchable — type a name or a code to find one.
</p>

<h2 id="respondent-language">Respondent language</h2>
<p>
  Respondents see the source language unless the form has published translations. Once at least one translation is published, formbase
  resolves the content language in this order, highest priority first:
</p>

> ℹ️ **The language screen**
> <p>
>     A respondent who arrives with none of the first three — no stored pick, no <code>?lang=</code>, no share-link default — sees{' '}
>     <strong>"Pick your language to start"</strong> before the questions, whatever their browser prefers. That screen is skipped as soon as
>     one of the three is present, which is why a share-link default or a <code>?lang=</code> link is the shortest path for a campaign.
>   </p>

<h2 id="language-links">Localized links</h2>
<p>
  Use <code>?lang=</code> when you want to send people directly to one language. For example, send French respondents a link ending in{' '}
  <code>?lang=fr</code>. If the requested language is not published, formbase falls back to the normal resolution order.
</p>
<p>
  Share-link defaults are useful when one campaign, QR code, embed, or partner link should open in a specific language without forcing that
  language forever. Respondents can still switch if more published languages are available.
</p>

<h2 id="rtl">Right-to-left layout</h2>
<p>
  Respondent forms and generated PDFs lay out right-to-left when the active language is written that way — Arabic, Hebrew, Persian, Urdu,
  and the other RTL scripts in the list. Direction follows the active respondent language, so one form can serve both directions.
</p>

<h2 id="what-language-affects">What language affects</h2>

<h2 id="tips">Language setup tips</h2>
<ul>
  <li>Pick the source language before writing lots of copy; source text becomes the baseline for translation status.</li>
  <li>
    Pick a regional variant when wording or tone differs by market. Four are available: <code>en-GB</code>, <code>es-MX</code>,{' '}
    <code>fr-CA</code>, and <code>pt-BR</code>.
  </li>
  <li>
    Preview localized links before sending campaigns: open the public form with <code>?lang=xx</code>.
  </li>
  <li>Submit one test response per important language when emails or attached PDFs are enabled.</li>
</ul>

<h2 id="next-steps">Next steps</h2>
<div class="not-prose grid gap-3 sm:grid-cols-2">
  - [Translating form content](/building-forms/translating-form-content) — Translate questions, content blocks, emails, and PDFs
  - [Form settings](/building-forms/form-settings) — Set source language, emails, PDFs, and reminders
  - [Share links](/sharing-publishing/sharing-embedding) — Create links, embeds, and QR codes for localized campaigns
  - [Respondent emails](/submissions-analytics/respondent-notifications) — Send localized confirmations
</div>
