Using Text-to-Speech

Adding Voice to your Chatbot

For a whole new dimension in the user experience, you can provide the option of listening to the chatbot’s messages. This is obviously an important accessibility option to provide for users with a visual impairment, but it is a feature that all users may wish to engage with and one that can help bring personality to your bot.

For every interaction that you want to apply it to, the Text-to-Speech feature generates an audio file which the user can listen to in any of the supported channels.


How to enable Text-to-Speech in your bot

It is extremely simple to add the voice option to your interaction. Firstly, click the Settings in the Text to Speech section.


Secondly, choose your language. The default TTS language is the same as the bot's language. Then listen to the samples to select your preferred voice. The number of voice types depends on the TTS language. For example, there are 10 voice types for English. The default voice type is always the first.



Each interaction has its own language, which is used for the Text-To-Speech/Speech-To-Text features.

Once you have selected a voice, the Generate button will become available, click it.


This creates an audio file to match the text of your interaction. If you update your bot’s message at any point, remember to re-generate the audio file by clicking the Generate button.


You have an option to hide text and embedded media from a bot message when using TTS, so users will receive an audio file only. Make sure that you have a generated file (in manual mode), otherwise, the bot will only send a text:


This is how the interaction appears for the user, who now has the option of playing the interaction as well as reading it.


It is also possible to automatically generate the audio file. The reason you might want to do this is if you are frequently altering the message. Then the audio is automatically updated with the autogeneration of the new file. To implement this, once you have chosen the voice, switch the autogenerate button to ‘on’. Note, however, that this may lead to slower loading times for the interaction.



If autogeneration slows down your bot, consider changing the flow to the pregenerated mode.
When using pregenerated mode, If you made changes to the interaction, regenerate the file to apply your recent changes. A warning message in the Text-to-Speech block will indicate the state of the file.


That’s it! Your chatbot has a voice!


The compatibility of TTS and Chat bubble features in the API channel

Manual mode
If you have several messages separated by bubbles, then the system will generate one audio file for the whole message
Auto mode
If you have several messages separated by bubbles, then the system will generate a separate audio file for each bubble.

If you enter too many characters in the Bot message field and click Generate, the TTS feature may temporarily stop working in the bot and:

  • You will get the following notification: ‘Your bot has performed an extraordinary number of TTS requests. This feature is temporarily unavailable for this bot. Contact the website administrator for further instructions’.
  • You will get the notification in the Left side menu (TTS Limit Exceeded. Your bot [botName] (id [botID]) has exceeded the limitation for TTS requests per hour. We will contact you.)
  • The SnatchBot team will get an email notification.

Text-to-Speech generation modes

There are currently two working modes available, pick the one that suits your purposes better.

Pre-generatedSuitable for long and rarely-changed messages.
Note: variables, responseTo or arithmetic operations will not be spoken. This is the fastest solution as there is no need to generate a file in real time.
AutogeneratedThe audio file is generated as it is, exactly like the text displayed in chat, including variables and all operations.
Note: longs messages in the bot's response may slow the bot conversation flow. It is recommended to use this option only when necessary.

Indicator icons

The icon will help you to understand the status of the function in the current interaction:


Regenerate the file to apply recent changes.


Everything is set up.


Autogeneration mode enabled.


More details

Using Text-to-Speech with the JSON API interaction or with cards is not supported.
The TTS feature is not applicable to the results of the Translate and Search interactions.
For some of the languages, the text is transliterated to English before being pronounced.
TTS feature affects the number of available messages of the PRO Plan subscription.


Restrictions for some channels

The TTS feature is available for all channels except for Twilio and Africa's Talking.

For Email and API channels the system generates an mp3 file and sends a link in the message, so a user can open the file and listen to it. The user can download the file as well.


The list of supported languages:

ar Arabic, bn Bengali, bs Bosnian, zh Chinese, cs Czech, da Danish, nl Dutch, en English, fil Filipino, fi Finnish, fr French, de German, el Greek, gu Gujarati, hi Hindi, hu Hungarian, id Indonesian, it Italian, ja Japanese, kn Kannada, ko Korean, ml Malayalam, cmn Mandarin Chinese, no Norwegian, nn Norwegian Nynorsk, pl Polish, pt Portuguese, ru Russian, sk Slovak, es Spanish, ta Tamil, te Telugu, th Thai, tr Turkish, uk Ukrainian, vi Vietnamese.

Watch this video tutorial "Using Text-to-Speech"

Next Steps

Speech-to-Text option is available as well.