# Discourse Translator

**URL:** https://meta.discourse.org/t/discourse-translator/32630
**Category:** Plugin
**Tags:** official, multi-lingual, translator, end-of-life
**Created:** [August 28, 2015, 7:27am UTC](https://meta.discourse.org/t/discourse-translator/32630 "2015-08-28T07:27:07Z")
**Posts on this page:** 1
**Showing post:** 1

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [August 28, 2015, 7:27am UTC](https://meta.discourse.org/t/discourse-translator/32630/1 "2015-08-28T07:27:07Z")

</div>

| | | |
| --- | --- | --- |
| :discourse2: | **Summary** | **Discourse Translator** translates posts on Discourse using Microsoft, Google, or Yandex translation APIs. |
| 🛠 | **Repository Link** | [https://github.com/discourse/discourse-translator](https://github.com/discourse/discourse-translator) |
| 📖 | **Install Guide** | [How to install plugins in Discourse](https://meta.discourse.org/t/install-plugins-in-discourse/19157) |

> [@](#):
>
> :discourse2: As this is an #official plugin maintained by the Discourse team, #Support, #Contribute > Bug, #Contribute > UX, and #Contribute > Feature requests can be made in the respective categories here on Meta, and tagged with the appropriate plugin tag. Click on a link below to get one started. 👍
> 
> [❓&nbsp; **Support**](https://meta.discourse.org/new-topic?category_id=6&body=%3E%20Before%20asking,%20did%20you%20search%20first%3F%20Press%20%F0%9F%94%8D%20at%20the%20upper%20right%20to%20search.&tags=translator "Ask for support on configuring and using Discourse Translator") [🐛&nbsp; **Bug**](https://meta.discourse.org/new-topic?category_id=1&tags=translator "A bug report means something is broken, preventing normal/typical use of the plugin") [👀&nbsp; **UX**](https://meta.discourse.org/new-topic?category_id=9&tags=translator "Discussion about the user interface of Discourse Translator, and how features are presented (including language and UI elements)") [💡&nbsp; **Feature**](https://meta.discourse.org/new-topic?category_id=2&tags=translator "Discussion about how existing Discourse Translator features can be improved or enhanced, and how proposed new features could work")

### Features

 ![English forum with Japanese locale](https://global.discourse-cdn.com/meta/original/3X/b/e/bef7959530fc1d644c3fb4e276118fa9227ca30b.gif)

- Each post is only translated once per locale which saves you 💰
  - Note that language detection is also run once for every post. Be careful when enabling this on old and large forums.

- Access Token is cached server side for faster translations.
- Translations are rate limited to 3 per minute by default (admins can configure this value)

#### Translation Services Supported

- [Microsoft Translator](https://docs.microsoft.com/en-us/azure/cognitive-services/translator/translator-info-overview)
- [Google Translate](https://cloud.google.com/translate/)
- [AWS Translate](https://aws.amazon.com/translate/)
- [Yandex Translate](https://translate.yandex.com/)
- [LibreTranslate](https://github.com/LibreTranslate/LibreTranslate) (open source)

### Configuration Steps

> **Microsoft**
>
> 1. Follow the steps in [Microsoft Translator API on Azure](https://docs.microsoft.com/en-us/azure/cognitive-services/translator/translator-text-how-to-signup) to obtain a subscription key. You may pick from any of the available subscription offers.
> 
> 2. In your Discourse, under Admin \> Settings \> Plugins, enter the subscription key that you’ve obtained from the steps above.
> 
> ![enter subscription key](https://global.discourse-cdn.com/meta/original/4X/d/2/d/d2dca1768cf98c8d611ada8a8a59a8029106743c.png)
> 
> 1. In your Discourse, under Admin \> Settings \> Basic Setup, enable allow user locale.

> **Google Translator**
>
> 1. Go to [https://console.developers.google.com](https://console.developers.google.com)
> 
> 2. Click on My Project
> 
> ![my project](https://global.discourse-cdn.com/meta/original/4X/1/c/e/1ce50d9f7166a7871ad29103e0e24b0979f0661c.png)
> 
> 1. Click on the ➕ to create a new project
> 
> ![create new project](https://global.discourse-cdn.com/meta/original/4X/0/8/1/081eca66b7934c81d577cfed0815087f11bb2c81.png)
> 
> 1. Enter your project name and click create
> 
> 2. Select **Enable API** and search for **Google Cloud Translator API**. Look for the **enable** button and click it to enable the API. Note that there is no free tier for the Google Translator API so it may prompt you to enable billing.
> 
> 3. Once you’re done, click on credentials in the left menu
> 
> ![credentials](https://global.discourse-cdn.com/meta/original/4X/c/a/6/ca6365c10a02f976d5b6023ea9aa8607b914202f.png)
> 
> 1. Click **create credentials** and select **API key**. Copy the API Key and paste it into the `translator google api key` site setting in Discourse.
> 
> 2. In Discourse, under Admin \> Settings \> Basic Setup, enable allow user locale.

### Settings

| Name | Description |
| --- | --- |
| translator enabled | Allow inline translation of posts. |
| translator | The provider of the translation service. |
| translator azure subscription key | Azure Subscription Key |
| translator azure region | Azure Region |
| translator azure custom subdomain | Required if using a Virtual Network or Firewall for Azure Cognitive Services. Note: Only enter the custom subdomain not the full custom endpoint. |
| translator aws region | AWS Region |
| translator aws key id | AWS Key ID |
| translator aws secret access | AWS secret access key |
| translator aws iam role | AWS IAM Role |
| translator google api key | Google API Key |
| translator yandex api key | Yandex API Key |
| translator libretranslate endpoint | LibreTranslate Endpoint |
| translator libretranslate api key | LibreTranslate API Key |
| max translations per minute | The number of translations per minute a regular user can perform. |
| restrict translation by group | Only allowlisted groups can translate |
| restrict translation by poster group | Only allow translation of posts made by allowlisted users |

### Known Issues

- Does not translate text within polls generated by discourse-poll plugin.
- Images are enlarged upon translating.

  

> :discourse2: **Hosted by us?** This plugin is available on our Enterprise plan.

> Last edited by @nat 2026-08-18T10:38:55Z
> 
> > **Check document**
> >
> > Perform check on document:

---

_[View the full topic](https://meta.discourse.org/t/discourse-translator/32630)._
