> ## Documentation Index
> Fetch the complete documentation index at: https://documents.xobito.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Localization & Languages

> Switch your workspace language, install new languages, and edit translations.

Xobito supports many languages out of the box, and administrators can add new languages or edit translations to match their brand voice.

<Note>
  Anyone can change **their own** display language from their profile. Adding new languages or editing translations requires **Admin** permission.
</Note>

## Supported languages

Out of the box, Xobito ships with the following languages:

<CardGroup cols={3}>
  <Card title="English">Default. Complete coverage.</Card>
  <Card title="Spanish">Español</Card>
  <Card title="French">Français</Card>
  <Card title="German">Deutsch</Card>
  <Card title="Portuguese">Português</Card>
  <Card title="Italian">Italiano</Card>
  <Card title="Dutch">Nederlands</Card>
  <Card title="Arabic">العربية (RTL)</Card>
  <Card title="Hindi">हिन्दी</Card>
  <Card title="Turkish">Türkçe</Card>
  <Card title="Russian">Русский</Card>
  <Card title="Chinese (Simplified)">简体中文</Card>
</CardGroup>

<Tip>
  More languages may appear in your workspace depending on your plan. If you don't see the language you want, an administrator can add it — see below.
</Tip>

## Change your own language

Every staff member can pick their own display language.

<Steps>
  <Step title="Open your profile">
    Click your avatar in the top-right corner → **My Profile**.
  </Step>

  <Step title="Find the 'Language' field">
    It's under **Preferences**. Pick a language from the dropdown.
  </Step>

  <Step title="Save">
    Click **Save**. The interface reloads in your new language.
  </Step>
</Steps>

<Note>
  Your language choice only affects what **you** see. Other staff keep their own language settings.
</Note>

## Change the workspace default language

The workspace default is what newly invited staff see the first time they log in. To change it:

<Steps>
  <Step title="Go to General Settings">
    Sidebar → **Settings → General**.
  </Step>

  <Step title="Pick 'Default language'">
    Select from the dropdown.
  </Step>

  <Step title="Save changes">
    Existing staff keep their personal choice; new invitees get the new default.
  </Step>
</Steps>

## Managing languages (admins)

Admins can install new languages, rename labels inside existing languages, or disable languages you don't use.

<Steps>
  <Step title="Open the Languages page">
    Sidebar → **Settings → Languages**.
  </Step>

  <Step title="See the full list">
    Each language shows a name, code (e.g. `en`, `es`), status (Active / Disabled), and completion percentage.
  </Step>
</Steps>

### Add a new language

<Steps>
  <Step title="Click 'Add Language'">
    The top-right button on the Languages page.
  </Step>

  <Step title="Enter the details">
    Provide the language name (e.g. "Swedish"), ISO code (e.g. `sv`), and choose the text direction (LTR or RTL).
  </Step>

  <Step title="Save">
    The new language appears in the list with 0% translation coverage. Next, edit translations to populate the labels.
  </Step>
</Steps>

### Edit translations

<Steps>
  <Step title="Click the language name">
    This opens the **Translations** editor.
  </Step>

  <Step title="Find the label to translate">
    Use the search box to jump to a specific phrase (e.g. "Contacts").
  </Step>

  <Step title="Type the translation">
    Enter your translated text on the right. Changes auto-save as you type.
  </Step>

  <Step title="Refresh your browser">
    Log out and back in — or hard-refresh — to see the updated label.
  </Step>
</Steps>

<Tip>
  You don't need to translate every single label. Any label you leave blank falls back to English.
</Tip>

### Disable a language

If you don't want users to see a language option, open the language and toggle **Active** off. It disappears from the profile picker without deleting your translations.

## Right-to-left (RTL) support

Xobito supports RTL languages like **Arabic** and **Hebrew**. When a staff member picks an RTL language:

* The sidebar flips to the right.
* Tables, buttons, and chat bubbles mirror automatically.
* Emojis and phone numbers stay in their natural direction.

<Warning>
  Some custom labels you add may need manual adjustment for RTL. If a label looks wrong, open **Settings → Languages → (your RTL language)** and edit it directly.
</Warning>

## Translations for templates vs. interface

There are two different kinds of translation in Xobito — they are **separate**:

| What                                                       | Where                                  |
| ---------------------------------------------------------- | -------------------------------------- |
| **Interface labels** (buttons, menus, error messages)      | Settings → Languages                   |
| **WhatsApp template content** (the text sent to customers) | Templates → Create Template → Language |

Changing one does not change the other. A template's language is picked per template and must match an approved Meta language code.

## Troubleshooting

<AccordionGroup>
  <Accordion title="I changed my language but the sidebar is still in English.">
    Log out and log back in. Some labels are cached until you refresh.
  </Accordion>

  <Accordion title="A label shows as 'contacts.button.add' instead of a real word.">
    That translation key is missing. Ask an admin to add it under **Settings → Languages → (language) → Translations**.
  </Accordion>

  <Accordion title="My Arabic text is left-aligned.">
    Open **Settings → Languages → Arabic** and verify the direction is set to **RTL**. Then hard-refresh your browser.
  </Accordion>
</AccordionGroup>

## Related

<CardGroup cols={2}>
  <Card title="General Settings" icon="sliders" href="/settings/general">
    Timezone, date format, and workspace language.
  </Card>

  <Card title="Email Templates" icon="envelope" href="/settings/email-templates">
    Customise system emails in your language.
  </Card>
</CardGroup>
