Skip to main content

Introduction to Translation Memory

Learn about what Translation Memory is and how it works.

Written by Jacob Doulkeridis

Transifex has a built-in Translation Memory (TM). TM is a powerful tool that helps with translation quality and consistency. It can even save you money by reducing the repeat and new work a translator must do.


How Translation Memory Works

Without getting too technical, Translation Memory is a database of previously completed translations. Each time a translation is submitted, it's saved to this database. If your content contains pluralized strings, these types of strings and all their forms are also saved in your Translation Memory. You can also set only the reviewed strings to be added to this database. In the future, if a phrase similar to the original source string appears, the translation is presented to the translator as a suggestion. Let's look at an example.

Say we have one string in our file: "It is sunny and warm in California." When we translate it, the translation is automatically saved to the TM. Then, we add another string to the file: "It is sunny and warm in Greece." When the translator works on the new string, they'll see the translation for the first string as a suggestion. While the two strings are not exactly the same, they share a lot of words – both contain the phrase "It is sunny and warm in." By seeing the suggestion, the translator can translate the new string quickly while keeping it consistent with the other translation.

This concept of looking at two phrases that are similar but not exactly the same is known as fuzzy matching.

Sometimes, you may have two phrases that are exactly the same. This is known as a 100% match. Most of the time, if one of the phrases was already translated, you can reuse the translation for the other phrase.

Note 📝: Translation Memory is case-sensitive. This means differences in capitalization can affect the match score. For example:

  • Source to be translated: Insulin: < 10 UNITS

  • Already translated source: Insulin: < 10 units

This would result in a 73% match, not 100%, due to the difference in letter casing.


Translation Memory in Transifex

Each project in Transifex has its own Translation Memory (TM) instance. It is updated whenever a new translation is submitted. All these translation entries are automatically stored in your project’s TM, whether they have been marked as reviewed or translated. As an option, it is possible to update a TM Instance only when a new translation is reviewed. This option appears in the project settings under the workflow tab.

An exception is that automatically machine-translated strings or AI-automated translated strings are added to your TM only when marked as reviewed. The same is true for strings that were machine-translated in bulk (by selecting multiple strings within the Editor).

When you create a new project, Transifex automatically generates a TM.

To share a TM across multiple projects, create a TM group, as described here.

You can export and import Translation Memory suggestions in TMX format, allowing you to update your project’s TMs in bulk.


Sharing TM across locales - Suggestions

To stop TM from showing in the editor suggestions from languages with the same country code but different locales, you need to turn off the relevant option. You may find this option in your project settings, under the workflow tab, in the translation section.

For example, when translating fr_FR, you will see suggestions from the fr locale, too, unless you turn off this functionality for the specific project. Such suggestions are displayed in the editor as follows:

share_tm_across_locales_editor.png#asset:9158

As long as this setting is enabled, Transifex will show suggestions following the priorities below:

  • Similarity %

  • Context match

  • Project priority

  • Language (editor language has priority)

  • Last used

So, if we have two suggestions with 98%, both with the same context, then the editor language has priority, and this is the TM suggestion that will be shown first.


Sharing TM across locales - Fill-ups

When TM fill-ups are enabled for a project, if there is an untranslated string in a target language like fr_FR, Transifex will look in your TM entries of that language to find an identical string and automatically apply the last updated translation found. If there is no 100% match, the fill-up process for the specific string ends.

Some projects may have multiple languages with the same country code, like fr and fr_FR. A string might be translated into one language but not into the other. To allow TM fill-ups to look in similar languages too, you need to enable the respective option on your project's settings under the workflow tab in the Translation Memory Fill-up section as shown below:

Screenshot-2022-01-27-at-3.36.05-PM.png#asset:9965

So, in the scenario described above, if no 100% matches are found in the fr_FR target language, and the Translation Memory Fill-up setting across locales is also enabled, then the system, as a next step in the fill-up process, will look in the TM entries of similar locales (like fr, fr_BE, fr_CA) added to your project. Once a match is found (the most recent translation has priority), the translation in that language will be used, and the string in fr_FR will be translated automatically by TM.

This option applies to all languages by default. Sharing Translation Memory suggestions across similar locales can be highly beneficial. However, there might be cases where specific locales need to be excluded and shouldn't share the same Translation Memory suggestions with others like zh_TW and zh_CN. You may exclude one or more languages from sharing their TM by adding the desired languages as shown below:

Exclude_languages_from_sharing_TM.png#asset:10271

Excluding a locale means that the specific locale:

  • won't contribute to similar locales' fill-ups or Translation Memory suggestions

  • won't get Translation Memory suggestions from other similar locales


Save AI translations with a high Translation Quality Index (TQI) in Translation Memory (TM)

When enabled, any newly AI-generated translations with a TQI score at or above the specified threshold are automatically saved to your TM. This ensures you can efficiently reuse high-quality AI translations in future projects and workflows.

Here’s how it works in practice:

  • Automatic TM entry: Translations with a TQI score at or above the threshold are automatically stored in the TM.

  • TM updates: If you edit a stored translation, the corresponding TM entry will also update.

  • Translation Status: The string's status in Transifex remains "Unreviewed" until you manually mark it as reviewed. The translation will remain in the TM regardless of its review status.

  • Plurals: For a translation to enter the TM, all plural forms should meet the set threshold.

Important notes

  • Mutual exclusivity: You cannot activate the "Allow only reviewed translations into the TM" setting when this option is enabled.

  • Recommendation: Set the TQI threshold to 0.95 or higher to avoid inconsistencies and ensure only high-quality translations are stored in your TM.


How to only allow reviewed translations into the TM

  1. From the Dashboard, click the project you want to enable TM fill-up for.

  2. Click on Settings.

  3. In the submenu, click on Workflow.

  4. Enable "Allow only Reviewed translations" in the Translation Memory option of the Quality Assurance step.

📝 How it works: The "Allow only reviewed translations into the Translation Memory" setting will only take effect for reviewed strings after this setting is activated.

This feature is only available on the Enterprise Plus plan.

🤖 Machine Translations: Machine Translations are not affected by this setting; they must always be reviewed to enter Translation Memory.


When TM entries are kept or removed

When translations are added to or removed from the TM

A TM entry stays in the TM as long as at least one translation in the project matches it. When you delete the last matching translation, the entry is removed and is no longer suggested.

Deleting a translation

When you delete a translation, Transifex treats it as no longer valid and removes it from the TM, so it won't be suggested again. If the same translation is also used by another string, the TM entry is kept until that translation is deleted too.

Example: "Cancel order" appears in two strings, translated the same way. If you delete one translation, the TM entry stays. If you delete both, the entry is removed.

Updating a translation

When you replace a translation with a new version, the new version is added to the TM. If no other string uses the old version, it's removed from the TM and is no longer suggested in the Transifex Web Editor. If another string still uses the old version, both versions stay in the TM and are suggested.

Changing or deleting a source string

Translations stay in the TM when:

  • The source string is deleted from the resource. The translation stays available as a TM suggestion.

  • The source text is updated. The string goes back to untranslated, but the translation of the previous version stays available as a TM suggestion.

Entries uploaded via TMX

Entries you import from a TMX file stay in the TM even if no string in the project uses them, and they're shared with the project's TM group. Once a translation in the project matches an imported entry, the entry follows the same rule as any other: if all matching translations are later deleted, the entry is removed.

Deleting a language, resource or project

  • Language or resource: its translations are deleted, but their TM entries are kept and stay available as suggestions for future translations.

  • Project: the project's translations are removed from the TM, including from other projects in its TM group. Translations that other projects already received from its TM aren't affected.

  • Archived project: the project's TM suggestions are still shared with other projects in its TM group.

Removing TM entries manually

Besides the cases above, you can remove TM entries by deleting a TM suggestion in the Editor, from the Manage Translation Memory page, or by uploading a TMX file with Overwrite existing TM.


TM Leverage

The unit of storage in TM is a segment (also called a string), not a sentence. A segment might contain one, a few, or many sentences - depending on the structure of the source file.

TM compares a new segment with the segments in its database. Then, it identifies the similarity match. If the similarity match is 60% or higher, those segments will appear for a translator in the “Suggestions” tab.

Information about the TM leverage before the translation process starts is available under Reports>Export TM Leverage:

or in the pop-up window for each resource on a language level:


Export TM Leverage

That report returns Translation Memory Leverage information for already translated strings that require post-editing, as well as for untranslated strings.

This information can be extracted on a project, resource, or task level, but if you are using tags to group your content, you can also request TM leverage information for strings tagged with one or multiple tags.

That way, you can estimate the effort your translators need to put into delivering translations for the strings you are interested in and the translation cost of the work that needs to be done based on your translation agency's rates.

Generate report

You can click on the Generate CSV to download the TM leverage report for all the strings that meet your selected criteria. You will receive the file in your email to view or further edit it. The CSV file will contain TM leverage information about translated and untranslated strings.

You may click on the arrow to view two extra download options:

  • Translation leverage report: The generated CSV file will contain TM leverage information for your untranslated strings that meet your set criteria.
    ​

  • Edit leverage report: The generated CSV file will contain TM leverage information for your unreviewed content that meets your criteria to see how much your translators can rely on the Translation Memory while reviewing the specific translations.

Detailed statistics about how much TM leverage was used during the translation process can be found in the Translation Activity Report.


💡Tip

Looking for more help? Get support from our Transifex Community Forum!

Find answers or post to get help from Transifex Support and our Community.

Did this answer your question?