Apple XLIFF is the format generated by Xcode.

Starting with Xcode 10 it is stored in Localized Contents directory of Xcode Localization Catalog (XCLOC) that is generated instead of XLIFF files.

Apple XLIFF is based on standard 1.2 XLIFF specifications and includes support for plural translations (starting with Xcode 9) and variable width translations (starting with Xcode 10).

Plural translations are supported by Lokalise.

Variable width translations are not supported by Lokalise.

When generating an XLIFF file, Xcode aggregates translations for all  .strings and .stringsdict files as well as localizable resources that use .strings file type for localization (.storyboard, .xib and Info.plist files).


While XLIFF is an industry standard, for iOS projects we recommend using .strings and .stringsdict files directly. XLIFF has its benefits (like the ability to generate keys for new elements in .storyboard files) but comes with a drawback that limits Lokalise as Translation Management platform.

When importing an XLIFF to Xcode it is required that every key has the same base (source) language value in Xcode project and in XLIFF document
In case of mismatch updates to these keys are ignored. This means that it's not possible to use Lokalise to update base (source) language values.

Translation for non-base (non-source) languages will be ignored if value for base (source) language was also changed.

Process of generating, importing and exporting XLIFF is outlined in XCLOC documentation.

Details on generic XLIFF support.

Did this answer your question?