---
title: Google Translate text-to-speech
description: Instructions on how to setup Google Translate text-to-speech with Home Assistant.
ha_category:
- Text-to-speech
ha_release: 0.35
ha_iot_class: Cloud Push
ha_domain: google_translate
ha_platforms:
- tts
ha_config_flow: true
ha_integration_type: integration
---
The `google_translate` text-to-speech platform uses the unofficial [Google Translate text-to-speech engine](https://translate.google.com/) to read a text with natural sounding voices. Contrary to what the name suggests, the integration only does text-to-speech and does not translate messages sent to it.
{% include integrations/config_flow.md %}
Check the [complete list of supported languages](https://cloud.google.com/translate/docs/languages) (languages where "Talk" feature is enabled in Google Translate) for allowed values.
Use the 2-digit language code which you can find at the end of the URL when you click on the language name.
Check the [complete list of supported tld](https://www.google.com/supported_domains) for allowed TLD values. This is used to force the dialect used when multiple fall into the same 2-digit language code(i.e., _US, UK, AU_)
You can also use supported BCP 47 tags like the below or the 2-2 digit format for your supported dialect(`en-gb` or `en-us`). Below is a list of the currently implemented mappings:
| Dialect | Language | TLD |
| ------- | -------- | ------ |
| en-us | en | com |
| en-gb | en | co.uk |
| en-uk | en | co.uk |
| en-au | en | com.au |
| en-ca | en | ca |
| en-in | en | co.in |
| en-ie | en | ie |
| en-za | en | co.za |
| fr-ca | fr | ca |
| fr-fr | fr | fr |
| pt-br | pt | com.br |
| pt-pt | pt | pt |
| es-es | es | es |
| es-us | es | com |
## Service say
The `google_translate_say` service can be used when configuring the legacy `google_translate` text-to-speech platform in `configuration.yaml`. We recommend new users to instead set up the integration in the UI and use the `tts.speak` service with the corresponding Google Translate text-to-speech entity as target.
The `google_translate_say` service supports `language` and also `options` for setting `tld`. The text for speech is set with `message`. Since release 0.92, the service name can be defined in the configuration `service_name` option.
Say to all `media_player` device entities:
```yaml
# Replace google_translate_say with _say when you use a different platform.
service: tts.google_translate_say
data:
entity_id: all
message: "May the force be with you."
```
Say to the `media_player.floor` device entity:
```yaml
service: tts.google_translate_say
data:
entity_id: media_player.floor
message: "May the force be with you."
```
Say to the `media_player.floor` device entity in French:
```yaml
service: tts.google_translate_say
data:
entity_id: media_player.floor
message: "Que la force soit avec toi."
language: "fr"
```
Say to the `media_player.floor` device entity in UK English:
```yaml
service: tts.google_translate_say
data:
entity_id: media_player.floor
message: "May the force be with you."
language: "en-uk"
```
```yaml
service: tts.google_translate_say
data:
entity_id: media_player.floor
message: "May the force be with you."
language: "en"
options:
tld: co.uk
```
With a template:
{% raw %}
```yaml
service: tts.google_translate_say
data:
message: "Temperature is {{states('sensor.temperature')}}."
cache: false
```
{% endraw %}
For more information about using text-to-speech with Home Assistant and more details on all the options it provides, see the [TTS documentation](/integrations/tts/).