Table of Contents
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 amount of repeat and new work a translator has to do.
How Translation Memory works
Without going into too much technical detail, Translation Memory is a database of previously completed translations. Each time a translation is submitted, it's saved to this database. 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 goes to work 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 a fuzzy matching.
In some cases, 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.
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 simply 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 are added to your TM only when they are marked as reviewed. The same is true for strings that were machine translated in bulk (by selecting multiple strings within the Editor).
When a new project is created, a TM is automatically generated for this project.
To have a shared TM across multiple projects, you would need to create a TM group, as described here.
Translation Memory suggestions can be exported and imported in a TMX format allowing you to massively update your project’s TMs. Please note that no saved translations are deleted from the TM until the maintainer manually removes it from TM or overwrites the existing TM with an updated version of a TMX file.
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 disable 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 disable this functionality for the specific project. Such suggestions are displayed in the editor as follows:
As long as this setting is enabled, Transifex will show suggestions following the priorities below:
language (editor language has priority)
So, if we have 2 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 - Fillups
When TM fillups 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, then the fillup process for the specific string ends.
Some projects may have multiple languages with the same country code like
fr_FR. A string might be translated into one language but not into the other. To allow TM fillups 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 Fillup section as shown below:
So, in the scenario described above, if no 100% matches are found in the
fr_FR target language and the Translation Memory Fillup setting across locales is also enabled, then the system, as a next step in the fillup process, will look in the TM entries of similar locales (like
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:
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
How to only allow reviewed translations into the TM
From the Dashboard, click on the project you want to enable TM fill-up for.
Click on Settings.
In the submenu, click on Workflow.
In the Quality Assurance step, enable the Allow only Reviewed translations into the Translation Memory option.
Machine Translations are not affected by this setting; they always need to be reviewed to enter Translation Memory.
How it works
The "Allow only reviewed translations into the Translation Memory" setting will only take effect for strings that were reviewed after this setting was activated.
This feature is only available on Enterprise plans.
What happens if a language/resource/project is deleted
If you delete a language or a resource(s) from your project, all the TM entries will be preserved and available as TM suggestions for future translations
If you delete the whole project, translations for that project will be deleted from the TM, so those TM suggestions will not be available for future translations
If you archive a project, the project’s TM suggestions will still be shared with other projects if the archived project belongs to a TM group
The unit of storage in TM is a segment (also referred to as 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 that it has 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 about already translated strings where post-editing is required as well as untranslated strings.
This information can be extracted on a project/resource level but if you are using tags to group your content, then you can also request TM leverage information for strings that have been 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 as well as the translation cost of the work that needs to be done based on your translation agency's rates.
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 both 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 the criteria you set.
Edit leverage report: The generated CSV file will contain TM leverage information for your unreviewed content that meets the criteria you set 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.
Old Translation Versions
When an existing translation is replaced by a newer version and it is not used anymore in a project or projects that belong to the same TM group, then this old version is no longer exposed as a suggestion in Transifex Web Editor.
A translation version is not removed from the TM, when:
1) The corresponding translated source string is removed/deleted from the resource.
2) The source text is updated. In this case, the string returns to the untranslated state but the translation of the previous version is still part of the project's TM suggestions