Brand name mispronounced by the AI voice? Four fixes and the cost
When a TTS voice says your brand name wrong, change the voice, the language, the spelling or the dictionary. Each retake on Sume costs 1 to 7 cents.

If a text-to-speech voice says your brand name wrong, you have four levers on Sume: pick a different voice, set the language field, respell the word in the script, or attach a pronunciation_dict_id. A retake costs 1 cent for a short line and 7 cents for a 90-second read, so test the name on its own line first.
Why a receipt cannot tell you
Sume's TTS contract is explicit on one point: a valid receipt proves the text that was submitted, not how it was pronounced. Billing records can confirm that your script said "Zyntrex" and cannot confirm that the voice said it correctly. Pronunciation is an audio check, and a person has to listen.
Microsoft's MAI-Voice-2.1 page lists emotion control and zero-shot voice matching for both models (read 2026-10-05) and does not describe a pronunciation control on that page, so do not assume a switch between engines will fix a name. Treat the name as a test case for every voice you evaluate.
The four levers
| Lever | How | Effect on the bill | Watch for |
|---|---|---|---|
| Voice | Change voice.id | None; price is per character | A new voice can break a name that was right |
| Language | Set language to the voice's language | None | A mismatch returns 409 until you confirm it |
| Spelling | Respell in the script, such as a hyphen or a vowel change | Characters count, spaces and punctuation included | Captions built from this text show the respelling |
| Dictionary | Send pronunciation_dict_id | None stated | The field is an id; the docs give no entry format, so ask support before building on it |
Test the name on its own line
Render a short line that contains only the name in a typical sentence, such as "Welcome to Zyntrex." That is 19 characters, which is 1 cent, the minimum. Try the same line on each candidate voice. Five voices cost 5 cents and tell you which ones are safe, before you spend 7 cents on a full read that you would only throw away.
Keep the test in your repo with the voice id beside it. When a script changes, the name test is the first thing you run again, not the last.
Respelling has two side effects
The clean pattern is two strings per line, one for the ear and one for the eye. Send the first to TTS and the second to the caption job as script_text, which aligns your wording onto the speech-to-text timings.
- It changes the character count, so a respelled name in a 20,000-character script can nudge the job across a cent boundary.
- It leaks into anything built from the same text. If you burn captions from
script_text, the respelled form is what viewers read, so keep a display version for captions and a spoken version for the voice.
The language field is a lever too
A Spanish voice reading an English brand name can sound right or wrong depending on the language you set, so do not leave the field at a default when the script is not English. Sume compares the primary language of the voice with the one you request and returns 409 tts_voice_language_mismatch on a known mismatch, before any job or charge. Retry with confirm_language_mismatch: true only when you meant it, for example an English brand name read by a Spanish voice on purpose.
What to do on the day
Run the name test, pick the voice, lock the spoken spelling, then render the full read once. If a name still fails, escalate to the dictionary route with support rather than burning retakes. At 7 cents a take even ten retakes are 70 cents, but they cost a producer's afternoon, which is the number that matters.
Sources
Related posts
More in Developers
- Ack a Sume webhook in 10 s, then copy the 30-second MP4 later
Sume gives each delivery 10 seconds. Verify, store the job id, answer 204, and let a worker download the MP4 instead of doing it inside the handler.
- Ad run returns 400 invalid_attachment: count your 30 files first
A Format run carries at most 30 files, split 30 images, 10 videos, 10 audio. A Python counter for attachments plus media URLs inside input, before you call.
- Agency Black Friday: a team-owned Format needs a workspace key
A personal API key cannot run a Format that a team workspace owns. Sume answers 403 workspace_key_required, so issue the key inside the team before launch.
- Get the edited image URL as a named field from an Agent Completion
Attach the photo and an output_schema in one POST /v1/agent/completions call. Sume parses output into your own fields, such as edited_url and changes.
Written by Sume