# Translations

Objects can hold the same content in several languages. You choose the languages once for the business, then mark each property as **Translatable**.

## Choose your content languages

1. Open **Settings** and go to **Business** (`/settings/business`).
2. In the **Content languages** box ("Languages your content is written in. The default language is always included."), click a language chip to add or remove it. Suggestions are shown as chips; to add any other language, type a code such as `en-GB` in the field and click **Add language**. A code must look like `nl` or `en-GB`, otherwise you see "Use a language tag such as nl or en-GB.".
3. Click **Save** in the bar at the bottom of the screen.

The default language is the **Document language** in the **Document defaults** card. It is always on, shown with the label **Default** and cannot be switched off. Change **Document language** and the default moves with it: the old default stays in the list. You can enable up to 10 languages.

## Make a property translatable

In the type builder, when you add a property, switch on **Translatable**. A repeater's row fields have the same switch. Text, long text, rich text, select, icon, link, image, email, phone and tags can be translated. Number, money, yes/no, date, date and time, color, customer, image list, record references, repeaters and sections cannot (the fields inside a repeater or a section can). An image list is one list for all languages; its alt text and captions are entered per language on the language tabs. A property that was not translatable keeps its single value until you switch it on; it becomes the default-language value.

## Edit each language

When the business has more than one content language and the type has a translatable property, the record form shows a row of language tabs (the default one is marked **default**). Pick a tab to edit the translatable fields in that language; fields that are not translatable look the same on every tab.

- Only the default language is required. A **Required** translatable property must be filled in the default language; the other languages are optional and may stay empty. A property that is not required keeps text written in a non-default language only; it is not cleared.
- A tab shows a dot (**Needs attention**) when its language has a problem, for example a missing required value in the default language, or a server error on that language.
- An empty language is stored as nothing. Your storefront falls back to the default language for it; see [Localized values](/api/objects/index#localized-values).

Removing a language from **Content languages** does not delete anything that was written in it, but it is no longer served by the API. Add it back and the content returns.

Addresses are per language too: each language of a record has its own address and prefix. See [Publishing and addresses](/docs/objects/publishing).
