To get started with the project exporting, click the Download button in the main menu:
If your project has quality assurance problems, you will see a warning message. Click the QA issues link to see what problems were found. In the example below, it says that there are unreviewed translations and some grammatical errors.
You will probably want to resolve all the QA issues before proceeding, but this step can be skipped. Learn more about QA issues.
Please note that Lokalise does not keep file templates as such. Once your file is uploaded to the platform, translation keys are extracted into your project. A brand new file will be generated upon project export.
Selecting format and file structure of the downloaded data
In the Format dropdown menu, you can select file export formats. We support more than 20 file formats; please check the full list of supported formats here.
If you would like to export keys for all platforms in the specified format, tick the Include all platform keys checkbox.
You can choose which languages should be included in the download bundle. All languages are selected by default.
Just uncheck the boxes next to the unwanted languages and select the desired locales. There you can also see the overall translation progress for each language.
Also, it is possible to override language ISO codes. To do this, click the locale and enter a desired value. Learn more about ISO codes and Language settings here.
The next step is selecting the file structure. The All keys to a single file per language option means that all your translations will be separated by their language, and placed into a single file. Note that you may also modify the file structure and even provide a directory prefix using
/ (forward slash).
The following placeholders are supported when defining your file structure:
%LANG_ISO%— a placeholder that will be replaced with a specific language code.
%FORMAT%— a placeholder that will be replaced with the file format.
%LANG_NAME%— a placeholder that will be replaced with a language's name.
%PROJECT_NAME%— a placeholder that will be replaced with a project's name.
Alternatively, you may choose the Use previously assigned filenames option. Select this option when your translation keys are separated into multiple files and you would like to preserve this structure. Learn more about Filenames here.
If you have keys that are not assigned to any file, these unassigned keys will be exported to a file named
Selecting keys/translations to download
Include tags — this text field allows you to filter the translation keys by their tags. For example, if we choose “demo”, only the keys under this tag will be exported.
Exclude tags — this field is used to enter tags that you wish to exclude. All keys under the chosen tags will not be downloaded.
Filter by filename — choose one or more files to download only the keys attributed to the these files. If you leave this field empty, keys from all files, as well as unassigned keys, will be exported.
Empty translations — using this option you can choose what to do with the keys that have no translation at all. The default action is to export and assign empty strings as the translation values. You can also choose not to export these keys at all, or provide the base language as a value. Certain file formats may have additional options.
Order keys by — select how to organize your keys in the exported file.
Plural format — choose the formatting for your plural keys. The available options may change depending on the file format you have chosen.
Placeholder format — choose the output formatting of your placeholders. The available options may change depending on the file format you have chosen.
[%]is a special Lokalise placeholder. When this options is enabled it will be exported as
Indentation — how many spaces should be used to indent your nested keys. Usually, 2 spaces represent one level of indentation, but you may choose any value from one to eight. Also, it is possible to choose Tab, which means one indentation level equals to the “Tab” key being pressed once, but this is not generally recommended.
Webhooks — choose a webhook to fire once the export process is finished. Webhooks are used to perform certain actions once a specified process is completed successfully. Learn more how to download files using webhooks.
Include comments — all key comments will be exported along with the translation data. Note that this will only happen if the output format actually supports commenting.
Include description — this will export key descriptions if it is supported by the output format.
Don’t use directory prefix — this checkbox will only appear if you have selected the Use previously assigned filenames option in the File structure section. If this option is unchecked, Lokalise will place translation files inside folders named after a specific locale. For example, French translations will be placed inside the
frfolder. When this option is checked, Lokalise will strictly follow the directory structure specified in the File structure section. If you enable this option, don’t forget to provide the
%LANG_ISO%placeholder in the filenames. If you forget to do so, all files with the same names will be overwritten.
Disable referencing — when this option is enabled, all referenced translations will be exported as a raw reference (for example,
[%Key_id:12345%]) instead of the actual value. Learn more about the Key referencing here.
Replace line break with
\n— all line breaks in your translations will be replaced with a special
\ncharacter, which means “start the text after this symbol on a new line”. Note that when the translation file is being imported to Lokalise, the reverse process may happen and all
\ncharacters can be replaced with the line breaks.
Language code as the root key — this option is available for certain file formats only, for instance YAML. When this setting is enabled, your translation keys will be nested under a key represented as a language code.
Unescape forward slashes — this option will become visible when JSON formats are selected. When this setting is enabled,
/will be unescaped.
Add new line at EOF — turn this option on to add a new line at the end of your translation files (supported formats: JSON, PHP).
Data to export
All — the default value which means "export all translation keys".
Untranslated strings — download only the strings that are not translated.
Translated strings — download only the strings that have been translated.
Reviewed only strings — download only the strings that were reviewed.
Last reviewed strings — download only the previously reviewed translations. For example, suppose we have a reviewed translation “Hello World”. Then someone has changed this translation to “Hello worlds!”, and the new version has not been reviewed yet. In this case, the previously reviewed version of the translation (“Hello World”) will be exported.
Verified strings — download only the strings that were verified.
Non-hidden keys — download only the keys that were not hidden from project contributors.
In this section, you may choose one or more platforms to which the chosen translation data should be exported. Before any of these triggers can be chosen, you have to configure them properly in project settings under the Integrations tab. Learn more about available integrations here.
Include other project strings
In the Include other project strings section you can choose other project keys to include in the download bundle. The duplicating keys, however, won’t be filtered. Also, only the translations for the languages chosen above will be downloaded. If a project does not have the chosen language, it will be effectively ignored.
Starting the download process
When you have reviewed all the settings, you can build and download your files. Note that these download settings are saved on per-user basis. It means that other project contributors will have their own settings and won’t be affected by the changes you apply on this page.
Click Build and download to get an archive with all the chosen translation data. It is possible to perform Build only without downloading anything — this is very useful in cases when you would like to run the triggers (for example, GitHub or Bitbucket integration). Finally, you can click the Preview button to see your data directly inside the browser. This is very helpful for testing and debugging purposes.