Main menu

Translation states explained

In the simplest case, every localised version of an asset is either Translated or Untranslated:

  • Untranslated
    This is the translation status before any value has been entered. Empty translations in this state don't contribute to language completion, and are coloured GREY in progress reports.

  • Translated
    This is the default translation status when you enter any text. Such translations contribute to language completion, and are coloured GREEN in progress reports.

Flagged translations

Sometimes an asset may be translated, but the work may not be finished or it may have a problem. Flagged translations don't contribute to language completion, and are coloured RED in progress reports.

The following flags are built-in defaults that you may find useful. You can rename these, or remove them and add your own:

  • Incorrect
    The translation is marked as being wrong in some way. This might be used when reviewing someone else's work.
  • Incomplete
    The translation is still being worked on. You may do this if you want to save your changes, but haven't finished.
  • Provisional
    The translation isn't final, but not necessary in error either. You may just want to improve it.
  • Rejected
    The translation has been reviewed in an unapproved state, but was not approved.
  • Unapproved
    The translation requires someone to approve it. Approval can be done simply by removing the flag.

Note that a translation cannot have multiple flags. It's status is either Untranslated (grey), Translated (green), or Flagged (red).


The Fuzzy flag is a special case, and shows up as a :cloud icon:. It can't be renamed or deleted.

Fuzzy states are recognized by other localisation platforms (such as Gettext). You can employ it however you wish, but it's commonly used to indicate that a translation should be reviewed for accuracy against its source text.

  • Translations can be automatically flagged as Fuzzy when the source text changes. This option can be enabled from your project settings, and is used to alert translators to review their work after an update.

  • If a Fuzzy flag was automatically applied, then it will be automatically cleared when the translation is saved via the editor. It can also be toggled from the editor with the Ctrl U keyboard shortcut.

  • Empty strings cannot be flagged as Fuzzy. By its very nature a value cannot be fuzzy if it has no content. This does not apply to user-defined flags.

Flagging empty translations

Flags are usually applied to non-empty translations, but (with the exception of fuzzy) empty strings can be flagged if need be. This may not always make sense, but it isn't prohibited.

In most cases empty strings will either be left "untranslated" or marked with one of the special redundant states as shown below.

Redundant states

Sometimes an asset doesn't need translating into a particular language, but should still be regarded as complete:

  • Blank translation
    This saves an intentionally blank translation. It tells Loco that the translation doesn't have a value, and will be exported as an empty string; but it will still be considered "translated".

  • Same as source
    This option is similar to "blank translation", except the source text (from your default language) will be exported instead of an empty string.

Redundant translations don't appear in the Translate tab, because they're not editable. You can only assign redundant states from the Manage tab.

How do flags differ from tags?

When you tag an asset, it applies across all locales. This allows translatable items to be grouped together. In contrast, a flagged state only applies to individual translations of an asset. This makes it useful for identifying work that needs to be done in a specific locale.

See also