Make Text to Speech Read Numbers, Dates and Acronyms Right
To make text to speech read numbers, dates and abbreviations correctly, write them the way you want them spoken: spell out numbers and currency, use a month name instead of a numeric date, and separate the letters of an acronym. Then listen to the first take of every line that contains one.
The clip below shows why it matters. The first line is written the way you would type it; the second is the same information written for the ear.
Voice marlowe
The meeting is on 03/04 at 9:30, room 2B. Tickets are $12.50 each.
Comparison
The meeting is on the third of April at nine thirty, room two B. Tickets are twelve dollars and fifty cents each.
Numbers are the most common reason a good voice sounds wrong. A reader knows from context that 03/04 is a date, but a speech model has to guess which date, and a wrong guess is easy to miss when you only read the text. The fix is cheap: decide the reading yourself, in the script.
Why numbers go wrong
Written text packs several readings into one symbol.
03/04can be the third of April, the fourth of March, or a fraction.2010is a year ("twenty ten"), a quantity ("two thousand and ten") or a code, depending on the sentence.1.5might be "one point five" or "one and a half".St.can be "Street" or "Saint", andDr.can be "Doctor" or "Drive".NASAis read as a word, whileFBIis read letter by letter.
The model uses the surrounding words to choose, and often chooses well. When it does not, you cannot fix it after the fact, so write the intended reading into the script.
A quick reference
| You type | Write instead | Why |
|---|---|---|
03/04 |
the third of April or April third |
Removes the day-month ambiguity |
9:30 |
nine thirty |
Stops it being read as a ratio or a score |
$12.50 |
twelve dollars and fifty cents |
Fixes the order of units |
2B |
two B |
Keeps the letter separate |
Dr. Lee |
Doctor Lee |
Prevents "Drive" |
FAQ |
F A Q |
Chooses letters or a word |
5 km |
five kilometres |
Avoids reading the unit letters |
1st |
first |
Avoids "one S T" |
Dates
Dates are the biggest source of confusion because writing conventions differ by country.
- Use the month name. "the twelfth of October" is unambiguous in speech.
- Pick one style and keep it. "October twelfth" and "the twelfth of October" both sound natural; switching between them in one script sounds careless.
- Spell years the way you say them. "twenty twenty-six" is clearer than
2026when the year sits next to other numbers.
Voice harper
The event runs from 10/12 to 14/12 in 2026.
Comparison
The event runs from the tenth of December to the fourteenth of December, twenty twenty-six.
Phone numbers, codes and long digits
Long digit strings are read as one large number unless you separate them. Put spaces or commas between digit groups and write the digits you want spoken.
Voice linus
Your code is 4155550199.
Comparison
Your code is 4 1 5, 5 5 5, 0 1 9 9.
For order numbers or verification codes, grouping in threes or fours and adding commas also gives the listener a natural pause between groups.
Abbreviations and acronyms
Decide for each abbreviation whether it is a word, letters, or the full phrase.
- Read as letters: put spaces between them,
U S B, or writeU-S-B. - Read as a word: write it as a word,
NASAor evenNasaif it stumbles. - Better in full: for anything a listener might not know, say the full name the first time and the short form after that.
Units and symbols follow the same rule. % becomes "percent", & becomes "and", + becomes "plus" and km/h becomes "kilometres per hour".
Names and unusual words
If a name is mispronounced, respell it the way it sounds. Keep a short list of respellings that worked, and reuse it in later scripts. If the script also appears as subtitles, keep the original spelling in the on-screen copy and the respelling in the text you generate.
A simple workflow
- Search your script for digits and symbols. Every number, slash, colon, currency sign and capital run is a candidate.
- Rewrite each one as it should be spoken.
- Generate a short sample of only the risky lines, not the whole script.
- Listen once, fix once. Change only the lines that were wrong and regenerate those.
- Save your rewrites. Notes on how you handled dates, currency and acronyms let you stay consistent across scripts.
Generating in short sections makes this fast, because you redo only the line that failed.
Try a risky line
FAQ
Why does the voice read my number correctly sometimes and wrongly other times?
The model chooses a reading from the surrounding words. A number inside a clear sentence is usually right; a bare number in a list or table is more likely to be guessed wrong.
Is it worth rewriting every number?
Only the ambiguous ones. Small, clear numbers like "three steps" are fine. Rewrite dates, currency, codes, times and anything you would be embarrassed to hear read wrongly.
Does this work in other languages?
The idea is the same: write out the reading you want. Number and date conventions differ by language, so listen to a voice made for your language, such as a Spanish voice, and test each risky line.
Paste your own script into the Studio at Voxmint and check the numbers before you publish.
Related guides
- How to Make an AI Voice Whisper, Sigh or Sound ExcitedUse square-bracket tags like [whispering], [excited] and [sigh] to direct an AI voice. See where to place them, with audio for each tag.
- Batch Text to Speech: Generate Many Voice Clips at OnceHow batch text to speech turns a list of lines into separate audio clips in one consistent voice. Plan, test and run bulk voiceovers step by step.
- Text to Speech With Word Timings for Captions and SubtitlesLearn how word timings from text to speech help you build synced captions, subtitles and read-along highlights without transcribing your audio again.