Measured 2026-08-23 · 30 front-ends
Which TTS models can say a number?
Text-to-speech front-ends drop characters they cannot encode — no error, no warning, nothing in the logs. This reads digit coverage straight out of each model's tokenizer vocabulary. Only 4 of the 28 models measured can say all ten digits.
18 of 28 support some digits and not others. That is the dangerous shape. Numbers do not come out empty, they come out wrong: a price of 10.30 missing only its 3 is announced as 100, fluently, and nothing downstream can tell.
The 6 models missing every digit are the safer failure — every number breaks audibly, so somebody notices the same afternoon.
- 18partial coverage
- 6no digits at all
- 4all ten digits
- 2not analysable
| Language / model | Digits 0–9 | Coverage | Speaks |
|---|---|---|---|
TeluguMMS-TTSfacebook/mms-tts-tel | 0123456789 | partial | says 6 |
PunjabiMMS-TTSfacebook/mms-tts-pan | 0123456789 | partial | says 6 |
VietnameseMMS-TTSfacebook/mms-tts-vie | 0123456789 | partial | says 2 |
HausaMMS-TTSfacebook/mms-tts-hau | 0123456789 | partial | says 6 |
AssameseMMS-TTSfacebook/mms-tts-asm | 0123456789 | partial | says 02 |
PortugueseMMS-TTSfacebook/mms-tts-por | 0123456789 | partial | says 124 |
RussianMMS-TTSfacebook/mms-tts-rus | 0123456789 | partial | says 0124 |
ThaiMMS-TTSfacebook/mms-tts-tha | 0123456789 | partial | says 0124 |
HindiMMS-TTSfacebook/mms-tts-hin | 0123456789 | partial | says 012348 |
IndonesianMMS-TTSfacebook/mms-tts-ind | 0123456789 | partial | says 012456 |
TurkishMMS-TTSfacebook/mms-tts-tur | 0123456789 | partial | says 012346 |
MarathiMMS-TTSfacebook/mms-tts-mar | 0123456789 | partial | says 0124679 |
MalayalamMMS-TTSfacebook/mms-tts-mal | 0123456789 | partial | says 0123456 |
EnglishMMS-TTSfacebook/mms-tts-eng | 0123456789 | partial | says 0123456 |
TamilMMS-TTSfacebook/mms-tts-tam | 0123456789 | partial | says 012345679 |
OdiaMMS-TTSfacebook/mms-tts-ory | 0123456789 | partial | says 012345679 |
GermanMMS-TTSfacebook/mms-tts-deu | 0123456789 | partial | says 012345678 |
SwahiliMMS-TTSfacebook/mms-tts-swh | 0123456789 | partial | says 012345678 |
GujaratiMMS-TTSfacebook/mms-tts-guj | 0123456789 | no digits | says none |
BurmeseMMS-TTSfacebook/mms-tts-mya | 0123456789 | no digits | says none |
FrenchMMS-TTSfacebook/mms-tts-fra | 0123456789 | no digits | says none |
ArabicMMS-TTSfacebook/mms-tts-ara | 0123456789 | no digits | says none |
YorubaMMS-TTSfacebook/mms-tts-yor | 0123456789 | no digits | says none |
EnglishSpeechT5microsoft/speecht5_tts | 0123456789 | no digits | says none |
BengaliMMS-TTSfacebook/mms-tts-ben | 0123456789 | all ten | says every digit |
KannadaMMS-TTSfacebook/mms-tts-kan | 0123456789 | all ten | says every digit |
Urdu (Devanagari)MMS-TTSfacebook/mms-tts-urd-script_devanagari | 0123456789 | all ten | says every digit |
SpanishMMS-TTSfacebook/mms-tts-spa | 0123456789 | all ten | says every digit |
AmharicMMS-TTSfacebook/mms-tts-amh | romanises non-ASCII text before the vocabulary is consulted, so input characters never reach it in their own script | not analysable | |
KoreanMMS-TTSfacebook/mms-tts-kor | romanises non-ASCII text before the vocabulary is consulted, so input characters never reach it in their own script | not analysable |