Lokalise is a project-based translation management system. We recommend to keep all platform keys in the same project. Upload iOS, Android, frontend, backend and API language files – everything that relates to a certain app or website – to the same project. We provide you with key merging or referencing options, that let you avoid recurring work for translators – save time and money.


Each phrase that is used in your app or website must be identified by a key and have values that represent translations to various languages. For example key index.welcome would have values of Welcome in English and Benvenuto in Italian. Keys can be assigned to one or multiple platforms. Once a key is assigned to a platform, it would be included in the export for file formats related to this platform.


Lokalise automatically adjusts placeholders (format specifiers like %s, %d) when exporting to different file formats in case you are using universal placeholders. As you upload files to Lokalise, the placeholders are automatically replaced with the universal ones.


We extract key-value pairs from the files you upload (some are with comments and some contain extra attributes) and store them in the Lokalise database. Keys are assigned to a file on per-platform basis (e.g. key main_title can be assigned to file index.json at Web platform and Localizable.strings at iOS platform). As you download files, you may choose to split keys by previously assigned files or just group to a file per language. Latter is the preferred option, as once you start using a translation management platform like Lokalise, the most optimal workflow is to perform all operations related to keys and translations using the platform and keep language file structure to the minimum.

Project ID

Each project has unique ID (you can see it in project settings), that is used when referring to a project over API or CLI. Here is what it looks like:


Anyone who has access to the project can access it by the simple link:

Did this answer your question?