• Documentation
  • Machine Translation
  • Setting Up Machine Translation

Setting Up Machine Translation

While Machine Translation (MT) is generally not a recommended translation method, it's useful in some cases; for example, if you have a lot of non-customer-facing content, or you want to translate something in conjunction with human post-edit.

Transifex supports Google Translate, Microsoft Translator, DeepL Translate (we support both DeepL API Free and DeepL API Pro and our integration is based on version 2 (v2) of the DeepL API), Amazon Translate or KantanMT. You'll need to have an account with one of these services before you can use it for machine translation in Transifex. Depending on which service you choose and how many words you're translating, you might need a subscription for that service too.

Setting up machine translation for an organization

To set up machine translation for your whole organization and use the same MT service across all your projects:

  • Head to your Organization Settings from the main navigation.

  • On the left menu, click on Machine translation.


  • Select the machine translation service you'll be using. 

    If you want to use Microsoft Translator, choose Microsoft Translator Text API (latest) unless you have an existing Microsoft DataMarket subscription from before December 31, 2016 (you can read more about the two Microsoft Translator options here).

    If you chose Google Translate, add your API key. 

    If you chose Microsoft Translator Text API (latest), add your subscription key. If you chose Microsoft Translator (deprecated), add your Client ID and Client secret.

    If you chose KantanMT then add your API key and engine alias (check here for more details).

  • Choose Machine Translation Mode: HTML or plain text.

    • HTML mode

    Transifex leverages the most of MT services capability to detect and keep HTML tags, Transifex protects only the variables and custom placeholders. Current known MT services hiccups include conversions of special characters to their HTML entity counterparts. (ex. a single quote character could become a ' in the translation)

    • Plain text mode

    Transifex is trying to protect all HTML tags, variables and custom placeholders feeding strings as simple text to Machine Translation services. Current known MT services hiccups include: extra symbols (ex. 0x5a4d6e521); translation missing part of a sentence found in source, meaning is altered; missing HTML tags, variables, custom placeholders as the MT service mishandles them.

  • Click Save changes.


In case you need to use a different machine translation key for a specific project, please see the section below.

Setting up machine translation for a project

In Transifex, you're able to go into a project and override any machine translation settings you may have set for your organization. For example, you'd be able to set up Google Translate for your organization, and then set up and use Microsoft Translator for just one project. Or you can use one API key for your organization and another key for a specific project.

To set up machine translation for a specific project:

  • Select the project from the project navigation in the Dashboard.

  • Click on Settings.

  • In the Project Actions section on the right, click on Override organization's Machine Translation settings. A modal will open where you can edit your Machine Translation settings.


  • Select the machine translation service you want to use.

  • If you chose Google Translate, add your API key. If you chose Microsoft Translator Text API (latest), add your subscription key. If you chose Microsoft Translator (deprecated), add your Client ID and Client secret. If you chose KantanMT, add your API key and engine alias.

  • Click the Save Changes button.


Automatic Machine Translation is available on the Premium plan and up as part of our Advanced Workflows feature.

If you have a translation workflow that always starts with Machine Translation, Automatic Machine Translation can save you from needing to manually start MT. Automatic MT will run whenever you add new content or update existing content to a project.

To enable automatic Machine Translation:

  • From the Dashboard, select the project you want to enable Automatic Machine Translation for.

  • Click on Settings.

  • In the submenu, click on Workflow.

  • In the Pre-translation step, enable the Machine Translation Fill-up option.

  • You have the option to exclude languages from Machine Translation Fill-up if you want to by enabling the option "Exclude languages from Machine Translation Fillup" as shown below:


    Once you enable the setting, a list with all the project's target languages will be available for selection.

  • Click the Save Changes button.

Identifying strings translated by MT

There're two ways to know how many words were translated by MT.

Filter in Editor

You can identify the strings that were translated by MT in your resource files by applying the following filter:

More > Origin > MT:<Provider Name>


Then you can mass-select all filtered strings and see the word count.


You can see the number of words translated by MT service on the Reports page.


MT + TM Fill-up

  • If you have TM Fill-up enabled for a project, 100% Translation Memory matches will be used before Machine Translation runs.
  • Automatically machine translated strings don't go into your Translation Memory until they've been marked as reviewed. The same is true for strings that were machine translated in bulk.
  • If you add new project languages, or enable Automatic Machine Translation and/or TM Fill-up after uploading/updating files, you'll need to manually trigger MT and fill up from TM. You can do this by clicking the Enable fill-up button in the Fill-up on demand section in Workflow tab of your project settings.