Translation memory

Learn how to take advantage of translation memory and manage translation memory entries.

Ilya Krukowski avatar
Written by Ilya Krukowski
Updated over a week ago

Translation memory is available from the Essential plan and above. Translation memory management is available from the Pro plan and above.

Lokalise has a powerful built-in translation memory that is shared between all team projects and members. Everything that you (or any other team members) type in the editor, upload, or set via the API is being saved automatically into the translation memory for future use.

Getting started

What is translation memory?

While working on your projects, you may find yourself translating the same words and phrases over and over again. Wouldn't it be more convenient to somehow rely on translations that were done previously? In Lokalise, every translation that you and other collaborators add via text editor, upload, or set via API is automatically saved to a special translation memory. For example, once a translator has completed translating a key from English into French, Lokalise will automatically save this translation option to the TM (translation memory).

Later, when you are translating the same phrase for the same language, Lokalise will provide you with a handful of inline suggestions from the translation memory. This way, you’ll be able to use the translation right away, without the need to type everything by hand. This is a very convenient feature that could save you quite a bit of time. Even if the phrase is not identical, the Lokalise engine will try to search for a similar phrase and display its match percentage.

By default, each project inside a team shares the same translation memory, but that may be adjusted as needed. Admins may create and assign as many memory storages as needed.

Technical limits

  • 1000 chars maximum for a single TM inline suggestion. Longer texts won’t be shown as a suggestion.

  • TMX files larger than 100MB cannot be uploaded.

  • The number of translation memory entries per TM storage is not limited.

Translation memory

Translation memory feature is available from the Essential plan and above.

Inline suggestions

Inline suggestions are automatically fetched from the translation memory storage and displayed in the editor for you. Inline suggestions are shown in cases when the source text matches the target by 50% and above.

Suggestions with match percentages lower than 50% won't be displayed.

Also, for each suggestion you can see:

  • Text in the source language (English in this case). Moreover, you can see the difference between the current source text and the source text fetched from the translation memory. The difference in the translation memory is highlighted with green, whereas the current source text difference is striked out with a red line.

  • Translation in the target language (French in this case).

  • The name of the translation memory storage that the entry was fetched from (Lokalise Translation Memory in this case).

  • When this entry was added to the translation memory and who performed this action.

  • To the right you can see a "trash bin" icon. Click on it to delete a translation memory entry. Please note that this action can only be performed by team admins and it is available from the Pro plan and above.

You can control how many inline TM suggestions are displayed in the editor by opening your personal profile and adjusting the Translation memory setting under the General tab:

Populating TM entries in your translations in bulk

When uploading translation files, you can enable the Pre-translate with 100% TM matches option. When this option is enabled, Lokalise will fetch each base language value from the uploaded file and try to find a matching entry in the translation memory. If a 100% match is found, the corresponding translation will be populated for the given key (provided that this key does not have a translation yet).

Also, you can apply TM to multiple keys in bulk. To achieve that, simply select one or more translation keys and then choose Apply TM to from the bulk menu. Adjust the match percentage, choose a language, and click Apply.

Please note that this percentage is the minimum match and Lokalise will try to fetch the highest match it can find in TM. For example, if you enter 98% it means that first Lokalise will try to find a 100% match, then (if the previous attempt failed) it will look for 99% match, and finally it'll try to find 98% match.

Translation memory management

All translation memory management features are available from the Pro plan and above. TM search feature is available from the Essential plan.

Translation memory management is the process of modifying or deleting TM entries as well as creating, downloading, uploading, modifying, and deleting TM storages (TMX files).

Translation memory widget

This widget allows you to find, browse, and delete translation memory suggestions from your storages. Using the widget allows concordance search.

Simply switch to the Translation memory tab or use Ctrl+G key combination and enter a search term:

You can enable the following options:

  • Exact match (displayed as the "quotation marks" icon) — restricts the search results to 100% matches (off by default).

  • Case sensitive search (displayed as the "Aa" icon) — make search case sensitive (off by default).

  • Search in all target languages — by default, you’re searching in the base language. You can search all target languages of the project instead by checking this option.

TM entries that will appear in this widget are:

  • Only from the TMs selected in the project settings of the current project.

  • Are not restricted to any file uploaded to Lokalise but are language pair related.

Please note that search will not be performed on the placeholders content to reduce noise in the results.

Click on the trash bin icon to delete a translation memory entry. Please note that only team admins (as well as billers and owners) can delete translation memory entries.

TM search on highlight

You can easily search any phrase in translation memory by highlighting it. To achieve that:

  • Start editing your translation as usual and highlight a word or a phrase.

  • Open translation memory widget by pressing Ctrl+G or by using the corresponding icon in the top menu.

  • The search box will be automatically populated for you!

The above feature works for both source and target languages.

TMX files management

Team administrators are able to manage translation memory (.tmx) files in the team settings under the Translation memory tab. These files are the actual storages for your translation memory entries.


The following actions can be performed: 

  • Upload a .tmx file into the TM.

  • Create a new TM file.

  • Download a TM as a .tmx file.

  • Delete or clear existing TM files.

After clicking the Download as TMX file button you'll see the following dialog box:

Here you can choose to download entries for all languages or choose a specific language pair.

To upload a translation memory file, click Upload TMX file. Please note that currently, we have a 100 MB limit on TMX upload. If your file is larger, please split it into separate files. To merge entries from a TMX file with an existing TM, name the TMX file exactly like the existing TM and upload this TMX file. The entries will be added to the TM with the same name.

Also note that translation units in the downloaded TMX file feature timestamps based on the latest TMX 1.4b standard. Make sure that you provide the tuv tag both for the source and the target languages. If the tuv tag is missing for one of the languages, you'll see an error when uploading the file.

Here's an example of a valid TMX file:

<tu srclang="en">
<tuv xml:lang="en">
<seg>Created on GitHub</seg>
</tuv>

<tuv xml:lang="pl-pl" creationdate="20240122T110101Z">
<seg>Utworzony w GitHub</seg>
</tuv>
</tu>

Setting up TM in the project settings

Project administrators can select an exact translation memory to be used in the project. If the project requires more than one translation memory storage they can adjust Translation memory priority by dragging the corresponding boxes into the necessary order. Also, team admins have to select which translation memory will be populated with the new translations from the project by adjusting the Translation memory target setting.

  • Translation memory priority — here you can choose which TM storages will be used to read values from. In the example above the values will be firstly fetched from the Lokalise Translation Memory, and then from Custom TM.

  • Translation memory target — choose a TM storage to save new entries to. Alternatively, you can choose not to save anything for the current project. Please note that it's not possible to save entries to multiple storages.

Did this answer your question?