Text to Speech

Overview

Vonage uses text-to-speech engines to allow you to play machine generated speech to your users. This can either be done via an NCCO with the use of the talk action, or by making a PUT request to an in-progress call.

You can customize how speech is read out by using Speech Synthesis Markup Language (SSML)

Example

The following NCCO demonstrates an example use case:

[
  {
    "action": "talk",
    "text": "Thank you for calling. Please leave your message after the tone."
  }
]

Voice Options

Vonage offers a wide range of options for text-to-speech categorized into three tiers based on quality (from basic to high-end):

  • Standard
  • Premium
  • Premier

Note: For pricing across Standard, Premium, and Premier Voices, visit our pricing page.

Premier Voices

Vonage Premier Voices are based on Generative AI.

Note: The launch of Premier Voices introduces a new configuration format for using the talk action based on provider and providerOptions. Therefore, the old language and style parameters referenced in the following sections should not be used for Premier Voices, although they remain applicable for Standard and Premium options.

Currently, Premier Voices support google (Chirp3) and deepgram (Aura) as providers. The providerOptions object should include your selected options for the chosen provider. See the sections below for details.

Google

Vonage supports Google as a Premier TTS provider. Use google as the provider value.

The providerOptions object should include your selected Chirp3 options, such as the desired language, among other customization options. The following NCCO demonstrates an example of how to use the talk action with Google Chirp3:

[
  {
    "action": "talk",
    "text": "Thank you for calling. Please leave your message and we’ll get back to you as soon as we can",
    "provider": "google",
    "providerOptions": {
      "name": "en-US-Chirp3-HD-Charon",
      "language_code": "en-US"
    }
  }
]

Deepgram

Vonage supports Deepgram Aura (1 & 2) as a Premier TTS provider. Use deepgram as the provider value.

The providerOptions object should include your selected Deepgram Aura options, such as the desired voice model, among other customization options. It supports the following keys:

Key Type Required Description
model String Yes Deepgram Aura voice model ID, for example "aura-2-thalia-en".
speed Float No Speaking rate multiplier. Valid range: 0.7–1.5. Default: 1.0. Not supported for all voices/languages.

Any additional keys you supply are forwarded to Deepgram verbatim.

Note: Deepgram Aura does not support SSML. If your text contains SSML markup, it will be spoken aloud as literal text.

The following NCCO demonstrates an example of how to use the talk action with Deepgram Aura:

[
  {
    "action": "talk",
    "text": "Hello, thank you for calling. How can I help you today?",
    "bargeIn": false,
    "provider": "deepgram",
    "providerOptions": {
      "model": "aura-2-thalia-en",
      "speed": 1.0
    }
  },
  {
    "action": "input",
    "type": ["speech"],
    "eventUrl": ["https://example.com/input"]
  }
]

Note: If the request is rejected (for example, an unsupported model), the call's event_url receives the existing error webhook with a reason string describing the failure. This only happens when bargeIn is false; with bargeIn: true, nothing is sent even if the request is rejected. A failure mid-stream also sends no webhook. In all cases, the talk action does not end the call: execution continues with the next action in the NCCO. Because providerOptions are not validated upfront, invalid options may only surface once the talk action is attempted, rather than as a synchronous error at request time.

Standard and Premium

Our Standard and Premium offerings remain available using the syntax described in the following sections.

Locale

This section applies to Standard and Premium Voices only (use provider and providerOptions for Premier Voices).

You should choose a locale that matches the language type of the text you are asking to be read, trying to read Spanish with an en-us voice for example will not produce good results.

You can set the language code (BCP-47) with a language parameter in the talk command, if you do not specify a language then Vonage will default to an en-US voice. For many languages Vonage offers a choice of voices with different styles. The style parameter maps to features such as vocal range, timbre and tessitura of the selected voice. You can experiment with different styles to find the one appropriate for your use case. You can choose a specific voice style by using the style parameter. By default, the first style (0) is used. Please note not all the voice styles support SSML, see the list of all the supported languages and SSML enabled styles below.

NCCO example with specific voice language and style:

[
  {
    "action": "talk",
    "text": "Obrigado pela sua chamada. Por favor, deixe sua mensagem após o sinal.",
    "language": "pt-PT",
    "style": 6
  }
]

Premium Voices

Some voice styles come with a premium alternative, which through the use of AI, have a more natural sound. To use a premium voice style, add the premium option in your NCCO:

[
  {
    "action": "talk",
    "text": "Obrigado pela sua chamada. Por favor, deixe sua mensagem após o sinal.",
    "language": "pt-PT",
    "style": 6,
    "premium": true
  }
]

Note: Premium Voices are a chargeable feature. Exact rates can be found on the Voice API Pricing page under 'Programmable Features'.

Supported Languages

Language {filter} Code Style Premium {filter} SSML Support Sample
Afrikaans af-ZA 0 N Y
Arabic ar 0 N Y
Arabic ar 1 N Y
Arabic ar 1 Y Y
Arabic ar 3 N Y
Arabic ar 3 Y Y
Arabic ar 4 N Y
Arabic ar 4 Y Y
Arabic ar 7 N Y
Arabic ar 7 Y Y
Basque eu-ES 1 N Y
Bengali bn-IN 0 N Y
Bengali bn-IN 0 Y Y
Bengali bn-IN 1 N Y
Bengali bn-IN 1 Y Y
Bulgarian bg-BG 0 N Y
Catalan, Valencian ca-ES 2 N Y
Catalan, Valencian ca-ES 3 Y Y
Chinese, Cantonese (China) yue-CN 1 Y Y
Chinese, Cantonese (Hong Kong) yue-HK 0 N Y
Chinese, Cantonese (Hong Kong) yue-HK 1 N Y
Chinese, Cantonese (Hong Kong) yue-HK 2 N Y
Chinese, Cantonese (Hong Kong) yue-HK 3 N Y
Chinese, Mandarin (China) cmn-CN 0 N Y
Chinese, Mandarin (China) cmn-CN 0 Y Y
Chinese, Mandarin (China) cmn-CN 1 N Y
Chinese, Mandarin (China) cmn-CN 1 Y Y
Chinese, Mandarin (China) cmn-CN 2 N Y
Chinese, Mandarin (China) cmn-CN 2 Y Y
Chinese, Mandarin (China) cmn-CN 4 N Y
Chinese, Mandarin (China) cmn-CN 4 Y Y
Chinese, Mandarin (China) cmn-CN 5 N Y
Chinese, Mandarin (China) cmn-CN 5 Y Y
Chinese, Mandarin (Taiwan) cmn-TW 1 N Y
Chinese, Mandarin (Taiwan) cmn-TW 1 Y Y
Chinese, Mandarin (Taiwan) cmn-TW 2 N Y
Chinese, Mandarin (Taiwan) cmn-TW 2 Y Y
Chinese, Mandarin (Taiwan) cmn-TW 3 N Y
Chinese, Mandarin (Taiwan) cmn-TW 3 Y Y
Czech cs-CZ 0 N Y
Czech cs-CZ 0 Y Y
Danish da-DK 0 N Y
Danish da-DK 1 N Y
Danish da-DK 1 Y Y
Danish da-DK 2 N Y
Danish da-DK 3 N Y
Danish da-DK 3 Y Y
Danish da-DK 4 N Y
Danish da-DK 4 Y Y
Danish da-DK 5 N Y
Danish da-DK 5 Y Y
Dutch (Belgium) nl-BE 0 N Y
Dutch (Belgium) nl-BE 0 Y Y
Dutch (Belgium) nl-BE 2 N Y
Dutch (Belgium) nl-BE 2 Y Y
Dutch (Netherlands) nl-NL 0 N Y
Dutch (Netherlands) nl-NL 1 N Y
Dutch (Netherlands) nl-NL 1 Y Y
Dutch (Netherlands) nl-NL 2 N Y
Dutch (Netherlands) nl-NL 2 Y Y
Dutch (Netherlands) nl-NL 3 N Y
Dutch (Netherlands) nl-NL 3 Y Y
Dutch (Netherlands) nl-NL 4 N Y
Dutch (Netherlands) nl-NL 5 N Y
Dutch (Netherlands) nl-NL 5 Y Y
Dutch (Netherlands) nl-NL 6 N Y
Dutch (Netherlands) nl-NL 6 Y Y
English (Australia) en-AU 0 N Y
English (Australia) en-AU 1 N Y
English (Australia) en-AU 1 Y Y
English (Australia) en-AU 2 N Y
English (Australia) en-AU 2 Y Y
English (Australia) en-AU 3 N Y
English (Australia) en-AU 4 N Y
English (Australia) en-AU 4 Y Y
English (Australia) en-AU 5 N Y
English (Australia) en-AU 5 Y Y
English (India) en-IN 0 N Y
English (India) en-IN 1 N Y
English (India) en-IN 2 N Y
English (India) en-IN 2 Y Y
English (India) en-IN 3 N Y
English (India) en-IN 3 Y Y
English (India) en-IN 4 N Y
English (India) en-IN 4 Y Y
English (India) en-IN 5 N Y
English (India) en-IN 5 Y Y
English (India) en-IN 7 Y Y
English (New Zealand) en-NZ 0 Y Y
English (South Africa) en-ZA 0 N N
English (South Africa) en-ZA 1 Y Y
English (United Kingdom) en-GB 0 N Y
English (United Kingdom) en-GB 0 Y Y
English (United Kingdom) en-GB 1 N Y
English (United Kingdom) en-GB 1 Y Y
English (United Kingdom) en-GB 2 N Y
English (United Kingdom) en-GB 2 Y Y
English (United Kingdom) en-GB 3 N Y
English (United Kingdom) en-GB 3 Y Y
English (United Kingdom) en-GB 4 N Y
English (United Kingdom) en-GB 4 Y Y
English (United Kingdom) en-GB 5 Y Y
English (United Kingdom) en-GB 5 N Y
English (United Kingdom) en-GB 6 N Y
English (United Kingdom) en-GB 6 Y Y
English (United Kingdom) en-GB 7 N Y
English (United Kingdom) en-GB 7 Y Y
English (United Kingdom) en-GB 12 Y Y
English (United States) en-US 0 N Y
English (United States) en-US 0 Y Y
English (United States) en-US 1 N Y
English (United States) en-US 1 Y Y
English (United States) en-US 2 N Y
English (United States) en-US 2 Y Y
English (United States) en-US 3 N Y
English (United States) en-US 3 Y Y
English (United States) en-US 4 N Y
English (United States) en-US 4 Y Y
English (United States) en-US 5 N Y
English (United States) en-US 5 Y Y
English (United States) en-US 6 N Y
English (United States) en-US 6 Y Y
English (United States) en-US 7 N Y
English (United States) en-US 7 Y Y
English (United States) en-US 8 N Y
English (United States) en-US 8 Y Y
English (United States) en-US 9 N Y
English (United States) en-US 9 Y Y
English (United States) en-US 10 N Y
English (United States) en-US 10 Y Y
English (United States) en-US 11 N Y
English (United States) en-US 11 Y Y
English (United States) en-US 12 N Y
English (United States) en-US 12 Y Y
English (United States) en-US 13 N Y
English (United States) en-US 13 Y Y
English (United States) en-US 14 N Y
English (United States) en-US 14 Y Y
English (United States) en-US 20 N Y
English (United States) en-US 20 Y Y
English (United States) en-US 21 N Y
English (United States) en-US 21 Y Y
English (United States) en-US 22 N Y
English (United States) en-US 22 Y Y
English (United States) en-US 24 Y Y
English (Wales) en-GB-WLS 0 N Y
Filipino fil-PH 0 N Y
Filipino fil-PH 0 Y Y
Filipino fil-PH 1 N Y
Filipino fil-PH 1 Y Y
Filipino fil-PH 2 N Y
Filipino fil-PH 2 Y Y
Filipino fil-PH 3 N Y
Filipino fil-PH 3 Y Y
Finnish fi-FI 0 N Y
Finnish fi-FI 0 Y Y
French (Canada) fr-CA 0 N Y
French (Canada) fr-CA 1 N Y
French (Canada) fr-CA 1 Y Y
French (Canada) fr-CA 2 N Y
French (Canada) fr-CA 2 Y Y
French (Canada) fr-CA 3 N Y
French (Canada) fr-CA 3 Y Y
French (Canada) fr-CA 4 N Y
French (Canada) fr-CA 4 Y Y
French (Canada) fr-CA 8 Y Y
French (Canada) fr-CA 9 Y Y
French (France) fr-FR 0 N Y
French (France) fr-FR 1 N Y
French (France) fr-FR 1 Y Y
French (France) fr-FR 2 N Y
French (France) fr-FR 2 Y Y
French (France) fr-FR 3 N Y
French (France) fr-FR 3 Y Y
French (France) fr-FR 4 N Y
French (France) fr-FR 4 Y Y
French (France) fr-FR 5 N Y
French (France) fr-FR 6 N Y
French (France) fr-FR 6 Y Y
French (France) fr-FR 7 N Y
French (France) fr-FR 7 Y Y
Galician gl-ES 1 N Y
German (Germany) de-DE 0 N Y
German (Germany) de-DE 1 N Y
German (Germany) de-DE 1 Y Y
German (Germany) de-DE 2 N Y
German (Germany) de-DE 2 Y Y
German (Germany) de-DE 3 N Y
German (Germany) de-DE 4 N Y
German (Germany) de-DE 4 Y Y
German (Germany) de-DE 5 N Y
German (Germany) de-DE 5 Y Y
German (Germany) de-DE 6 N Y
German (Germany) de-DE 6 Y Y
German (Germany) de-DE 7 N Y
German (Germany) de-DE 7 Y Y
German (Germany) de-DE 8 N Y
German (Germany) de-DE 8 Y Y
German (Germany) de-DE 11 Y Y
Greek el-GR 0 N Y
Greek el-GR 0 Y Y
Gujarati gu-IN 0 Y Y
Gujarati gu-IN 1 Y Y
Hebrew he-IL 1 N Y
Hebrew he-IL 1 Y Y
Hebrew he-IL 2 N Y
Hebrew he-IL 2 Y Y
Hebrew he-IL 3 N Y
Hebrew he-IL 3 Y Y
Hebrew he-IL 4 N Y
Hebrew he-IL 4 Y Y
Hindi hi-IN 0 N Y
Hindi hi-IN 1 N Y
Hindi hi-IN 1 Y Y
Hindi hi-IN 3 N Y
Hindi hi-IN 3 Y Y
Hindi hi-IN 4 N Y
Hindi hi-IN 4 Y Y
Hindi hi-IN 5 N Y
Hindi hi-IN 5 Y Y
Hindi hi-IN 6 Y Y
Hungarian hu-HU 0 N Y
Hungarian hu-HU 0 Y Y
Icelandic is-IS 0 N Y
Icelandic is-IS 1 N Y
Icelandic is-IS 2 N Y
Indonesian id-ID 0 N Y
Indonesian id-ID 0 Y Y
Indonesian id-ID 2 N Y
Indonesian id-ID 2 Y Y
Indonesian id-ID 3 N Y
Indonesian id-ID 3 Y Y
Indonesian id-ID 4 N Y
Indonesian id-ID 4 Y Y
Italian it-IT 0 N Y
Italian it-IT 0 Y Y
Italian it-IT 1 N Y
Italian it-IT 2 N Y
Italian it-IT 2 Y Y
Italian it-IT 3 N Y
Italian it-IT 3 Y Y
Italian it-IT 4 N Y
Italian it-IT 5 N Y
Italian it-IT 5 Y Y
Italian it-IT 6 N Y
Italian it-IT 6 Y Y
Japanese ja-JP 0 N Y
Japanese ja-JP 1 N Y
Japanese ja-JP 1 Y Y
Japanese ja-JP 2 N Y
Japanese ja-JP 2 Y Y
Japanese ja-JP 3 N Y
Japanese ja-JP 3 Y Y
Japanese ja-JP 4 N Y
Japanese ja-JP 4 Y Y
Japanese ja-JP 5 N Y
Japanese ja-JP 5 Y Y
Kannada kn-IN 0 N Y
Kannada kn-IN 0 Y Y
Kannada kn-IN 1 N Y
Kannada kn-IN 1 Y Y
Korean ko-KR 0 N Y
Korean ko-KR 0 Y Y
Korean ko-KR 1 N Y
Korean ko-KR 1 Y Y
Korean ko-KR 2 N Y
Korean ko-KR 2 Y Y
Korean ko-KR 4 N Y
Korean ko-KR 4 Y Y
Korean ko-KR 5 N Y
Korean ko-KR 5 Y Y
Latvian lv-LV 0 N Y
Lithuanian lt-LT 0 N Y
Malay ms-MY 0 N Y
Malay ms-MY 0 Y Y
Malay ms-MY 1 N Y
Malay ms-MY 1 Y Y
Malay ms-MY 2 N Y
Malay ms-MY 2 Y Y
Malay ms-MY 3 N Y
Malay ms-MY 3 Y Y
Malayalam ml-IN 0 N Y
Malayalam ml-IN 0 Y Y
Malayalam ml-IN 1 N Y
Malayalam ml-IN 1 Y Y
Malayalam ml-IN 2 Y Y
Malayalam ml-IN 3 Y Y
Marathi mr-IN 0 N Y
Marathi mr-IN 0 Y Y
Marathi mr-IN 1 N Y
Marathi mr-IN 1 Y Y
Marathi mr-IN 2 N Y
Marathi mr-IN 2 Y Y
Norwegian nb-NO 2 N Y
Norwegian nb-NO 2 Y Y
Norwegian nb-NO 3 N Y
Norwegian nb-NO 3 Y Y
Norwegian nb-NO 4 N Y
Norwegian nb-NO 4 Y Y
Norwegian nb-NO 5 N Y
Norwegian nb-NO 5 Y Y
Polish pl-PL 0 N Y
Polish pl-PL 1 N Y
Polish pl-PL 2 N Y
Polish pl-PL 2 Y Y
Polish pl-PL 3 N Y
Polish pl-PL 3 Y Y
Polish pl-PL 4 N Y
Polish pl-PL 4 Y Y
Polish pl-PL 5 N Y
Polish pl-PL 6 N Y
Polish pl-PL 7 N Y
Polish pl-PL 7 Y Y
Polish pl-PL 8 N Y
Polish pl-PL 8 Y Y
Portuguese (Brazil) pt-BR 0 N Y
Portuguese (Brazil) pt-BR 0 Y Y
Portuguese (Brazil) pt-BR 1 N Y
Portuguese (Brazil) pt-BR 1 Y Y
Portuguese (Brazil) pt-BR 3 N Y
Portuguese (Brazil) pt-BR 5 N Y
Portuguese (Brazil) pt-BR 5 Y Y
Portuguese (Brazil) pt-BR 6 N Y
Portuguese (Brazil) pt-BR 6 Y Y
Portuguese (Brazil) pt-BR 7 N Y
Portuguese (Brazil) pt-BR 7 Y Y
Portuguese (Portugal) pt-PT 0 N Y
Portuguese (Portugal) pt-PT 0 Y Y
Portuguese (Portugal) pt-PT 1 N Y
Portuguese (Portugal) pt-PT 1 Y Y
Portuguese (Portugal) pt-PT 2 N Y
Portuguese (Portugal) pt-PT 2 Y Y
Portuguese (Portugal) pt-PT 5 N Y
Portuguese (Portugal) pt-PT 6 N Y
Portuguese (Portugal) pt-PT 6 Y Y
Portuguese (Portugal) pt-PT 7 N Y
Portuguese (Portugal) pt-PT 7 Y Y
Punjabi pa-IN 0 N Y
Punjabi pa-IN 0 Y Y
Punjabi pa-IN 1 N Y
Punjabi pa-IN 1 Y Y
Punjabi pa-IN 2 N Y
Punjabi pa-IN 2 Y Y
Punjabi pa-IN 3 N Y
Punjabi pa-IN 3 Y Y
Romanian ro-RO 0 N Y
Romanian ro-RO 2 N Y
Romanian ro-RO 2 Y Y
Russian ru-RU 0 N Y
Russian ru-RU 1 N Y
Russian ru-RU 1 Y Y
Russian ru-RU 2 N Y
Russian ru-RU 2 Y Y
Russian ru-RU 3 N Y
Russian ru-RU 3 Y Y
Russian ru-RU 4 N Y
Russian ru-RU 5 N Y
Russian ru-RU 5 Y Y
Russian ru-RU 6 N Y
Russian ru-RU 6 Y Y
Serbian sr-RS 0 N Y
Slovak sk-SK 0 N Y
Slovak sk-SK 0 Y Y
Spanish (Mexico) es-MX 0 N Y
Spanish (Mexico) es-MX 0 Y Y
Spanish (Spain) es-ES 0 N Y
Spanish (Spain) es-ES 1 N Y
Spanish (Spain) es-ES 1 Y Y
Spanish (Spain) es-ES 2 N Y
Spanish (Spain) es-ES 4 N Y
Spanish (Spain) es-ES 5 N Y
Spanish (Spain) es-ES 5 Y Y
Spanish (Spain) es-ES 6 N Y
Spanish (Spain) es-ES 6 Y Y
Spanish (Spain) es-ES 8 N Y
Spanish (Spain) es-ES 8 Y Y
Spanish (United States) es-US 0 N Y
Spanish (United States) es-US 1 N Y
Spanish (United States) es-US 2 N Y
Spanish (United States) es-US 2 Y Y
Spanish (United States) es-US 3 N Y
Spanish (United States) es-US 3 Y Y
Spanish (United States) es-US 4 N Y
Spanish (United States) es-US 4 Y Y
Spanish (United States) es-US 5 N Y
Spanish (United States) es-US 5 Y Y
Spanish (United States) es-US 6 Y Y
Swedish sv-SE 0 N Y
Swedish sv-SE 1 N Y
Swedish sv-SE 1 Y Y
Swedish sv-SE 4 N Y
Swedish sv-SE 4 Y Y
Swedish sv-SE 5 N Y
Swedish sv-SE 5 Y Y
Swedish sv-SE 6 N Y
Swedish sv-SE 6 Y Y
Swedish sv-SE 7 N Y
Swedish sv-SE 7 Y Y
Tamil ta-IN 0 N Y
Tamil ta-IN 0 Y Y
Tamil ta-IN 1 N Y
Tamil ta-IN 1 Y Y
Tamil ta-IN 2 N Y
Tamil ta-IN 2 Y Y
Tamil ta-IN 3 N Y
Tamil ta-IN 3 Y Y
Telugu te-IN 0 N Y
Telugu te-IN 1 N Y
Thai th-TH 1 N Y
Turkish tr-TR 0 N Y
Turkish tr-TR 1 N Y
Turkish tr-TR 1 Y Y
Turkish tr-TR 2 N Y
Turkish tr-TR 2 Y Y
Turkish tr-TR 3 N Y
Turkish tr-TR 3 Y Y
Turkish tr-TR 5 N Y
Turkish tr-TR 5 Y Y
Turkish tr-TR 6 N Y
Turkish tr-TR 6 Y Y
Ukrainian uk-UA 0 N Y
Ukrainian uk-UA 0 Y Y
Vietnamese vi-VN 0 N Y
Vietnamese vi-VN 0 Y Y
Vietnamese vi-VN 1 N Y
Vietnamese vi-VN 1 Y Y
Vietnamese vi-VN 2 N Y
Vietnamese vi-VN 2 Y Y
Vietnamese vi-VN 3 N Y
Vietnamese vi-VN 3 Y Y
Welsh cy-GB 0 N Y

Download the list of voices as a JSON file.