User Guide

How to use Loco

A plain-language guide to finding, editing and managing translations — no technical knowledge required.

What is Loco?

Loco is a tool your team uses to manage the text content of your apps and websites in multiple languages. Think of it as a shared workspace where every word, label, button and message in your product lives — organised, searchable, and always up to date.

Instead of sending spreadsheets back and forth or editing files by hand, everyone works from the same place. Translators and editors make changes directly in the browser — no installation required.

Edit in your browser

Click any text to update it. Changes are saved instantly — no files to send.

Multiple languages

Each piece of text can exist in every language your product supports. Loco shows you what is still missing.

Team access

Invite colleagues and give them exactly the right level of access — from read-only reviewers to full editors.

Full history

Every change is recorded with who made it and when. Nothing gets lost.

Signing In

Loco uses your company's existing sign-in system. You do not need a separate Loco password — just the same credentials you use for other internal tools.

1
Go to the Loco address your team uses.
2
Click Sign In on the homepage.
3
Enter your usual username and password on the login page.
4
After logging in you land on your Dashboard.

Cannot log in?

Contact your team administrator. They manage user accounts and can check whether your account has been created and that you have been added to the right applications.

Your Dashboard

The Dashboard is your home screen — an overview of everything happening across your applications.

What you see

  • Applications — the projects you have access to. Each card shows the name and your role.
  • Unedited translations — texts that have been added but not yet reviewed. This is your work queue.
  • Recent activity — the latest changes made by you and your team, with timestamps.
  • Language coverage — how complete each language is across your apps.

Finding and Editing Translations

This is where you will spend most of your time.

How to find a translation

1
Click the application that contains the text you want to change.
2
Select the language you want to edit from the sidebar.
3
Use the search bar to search by the text you see in the product. For example, type the word on the button you want to change.
4
You can also filter by namespace (a group like “checkout” or “common”) to narrow the list.
Each row shows a key (an internal identifier like button.submit) and a value (the actual text shown to users, like Submit). You only ever edit the value.

How to edit

1
Click the row you want to edit.
2
Type your new translation. The reference text from the default language is shown for comparison.
3
Click Save. The change is recorded immediately.

Keyboard shortcut

Press Ctrl+Enter (or Cmd+Enter on Mac) to save without reaching for the mouse.

What are unedited translations?

When new keys are added by the development team, they start as unedited. Loco flags them so you can review and confirm (or improve) the value before the next release. Use the Unedited filter to see only those that need attention.

Uploading translations from a file

If you have a large number of translations to add at once — for example a new language or a full set of new keys — you can upload them as a ZIP archive instead of typing them one by one.

Only .zip files are accepted. A single .json file cannot be uploaded on its own — put it in a language folder and zip it, as shown below.

What does a translation file look like?

A translation file is a plain text file that lists every key and its translated value, one per line. It looks like this:

{
  "button.submit": "Submit",
  "button.cancel": "Cancel",
  "nav.home": "Home",
  "login.title": "Sign in to your account"
}

The part on the left of the colon (button.submit) is the key — a fixed identifier your app uses internally. Never change the key name. The part on the right (“Submit”) is the value — the text shown to users. This is what you translate.

Keys may also be written as nested groups. Loco joins them with dots, so the file below produces exactly the same keys as the one above:

{
  "button": {
    "submit": "Submit",
    "cancel": "Cancel"
  },
  "nav": {
    "home": "Home"
  }
}

.resx files are supported as well and can be mixed with .json files in the same archive.

Adding a new key to the file

To add a new translation key, add a new line inside the curly braces following the same pattern — key name in quotes, a colon, then the translated text in quotes, followed by a comma:

{
  "button.submit": "Submit",
  "button.cancel": "Cancel",
  "button.save": "Save changes"
}
The last line before the closing } should not have a trailing comma. All other lines do. If you are unsure, paste your file into jsonlint.com to check it before uploading.

Folder structure inside the ZIP

Loco takes the language from the folder name and the namespace from the file name. One folder per language, one file per namespace:

translations.zip
├── de/
│   ├── common.json
│   ├── admin.json
│   └── auth.json
├── en/
│   ├── common.json
│   ├── admin.json
│   └── auth.json
└── it/
    ├── common.json
    ├── admin.json
    └── auth.json

In this example de/admin.json is imported as language de, namespace admin. Language folders use the usual codes — de, en, it, si, or regional ones like en-US.

A wrapping folder around the language folders is fine, so this works exactly the same:

translations.zip
└── json/
    ├── de/
    │   └── common.json
    └── en/
        └── common.json

That is the structure Loco produces itself, so a ZIP you downloaded with the download button (↓) can be uploaded again unchanged. The downloaded archive contains a json/ and a resx/ copy of the same translations — you can upload the whole archive, or just one of the two folders.

Every language in the ZIP must contain the same namespace files. If de/ has an admin.json, then en/ and it/ need one too — otherwise the upload is rejected with “Invalid ZIP structure”. Only the languages inside the ZIP are compared against each other, so uploading a single language, or a single namespace, is fine. Namespaces that exist in Loco but are not in the ZIP are simply left alone.

The older flat format is still accepted. Here every key lands in the namespace common:

translations.zip
├── de.json
└── en.json

Add or overwrite, or delete and replace?

Before uploading you choose what should happen to the translations that are already in Loco:

Add or overwrite — new keys are added, existing keys get the value from the file. Nothing is ever deleted. Keys you removed from the file stay in Loco. This is the safe default.

Delete and replace — for every file in the ZIP, all keys of that language and namespace are deleted first, then the file is imported fresh. Use this when you want keys you removed from the file to disappear from Loco as well.

Delete and replace only touches the language and namespace combinations that are in the ZIP. It is not a full reset: a language or namespace that is missing from the archive keeps all of its translations. To remove a whole language, delete it in the application view instead.

How to upload the file

1
Open the application and click the upload button (↑) at the top of the translation list.
2
Under Upload mode, choose Add or overwrite or Delete and replace.
3
Drop your .zip file into the upload area, or click it to pick the file.
4
Click Upload. The languages and namespaces are taken from the folder names inside the archive — you do not select them beforehand.

Tip

After uploading, all newly added keys will appear as unedited. Review them before the next release to make sure the values are correct for your audience.

Languages

Each application can support multiple languages. For every language, Loco tracks coverage — how many keys have been translated compared to the total.

A coverage of 100% means all texts have a value in that language. Anything below means some texts will fall back to the default language in your product.

Missing a language?

Only owners and administrators can add new languages. Ask your admin if a language you need is not listed.

Your Role

Your access depends on the role assigned to you for each application.

RoleWhat you can do
GuestRead and browse translations. Cannot make changes.
EditorEdit translation values. Cannot add or delete keys.
DeveloperEdit translations and manage keys — add, rename, import, export.
OwnerFull control of the application including adding and removing users.
AdminEverything an Owner can do, across all applications on the platform.

Need a different level of access? Contact the application Owner or your Loco administrator.

Platform roles

Separately from the per-application role, every user has a platform role that controls which administration features they can access.

Platform roleWhat it unlocks
GuestAccess is restricted to applications explicitly shared with you.
UserStandard access — can work within applications they are a member of.
DeveloperCan view the Administration section scoped to their own applications.
AdminFull access to the Administration section across all applications.
SuperAdminFull access plus the ability to change other users' platform roles.

Platform roles are set by a SuperAdmin from the Users section of the Administration area. If you believe your role is incorrect, contact your administrator.

History and Changelog

Every change made in Loco is recorded — who changed what, and when. You can always look back and understand the full history.

  • Dashboard Changelog — global history across all your apps.
  • Application Changelog tab — history for that specific app only.

Filter the history by author, date, language, key name, or event type to find exactly what you are looking for.

Achievements

Loco rewards activity with achievements — small milestones that track your progress as a translator and as an application owner.

  • User achievements — earned by logging in, editing translations, and reaching translation counts.
  • Application achievements — earned when an app reaches key milestones such as full translation coverage or a high number of keys.

A toast notification appears in the bottom-right corner when you unlock an achievement. You can review all achievements from your profile page.

Tips and Shortcuts

Search by what you see

Spotted a typo in the product? Copy that exact text and paste it into the search bar — Loco finds the right entry immediately.

Ctrl+Enter saves

Save any change without reaching for the mouse. Works in every editor in Loco.

Use namespace filters

Namespaces group related keys (e.g. all login-screen texts). Filter by namespace to stay focused on one area.

Dark mode

Toggle between light and dark mode from the icon in the top navigation bar.

Change the UI language

Loco is available in English, German, Italian and Slovenian. Switch from the language selector in the top bar.

Check the changelog first

Before asking a colleague if they changed something, check the Changelog — the answer is almost always already there.

Still have questions? Check the FAQ for quick answers.