A 1,850-character narration in Sume TTS: price, and what 3 takes add
A 1,850-character script costs $0.0879 in Sume TTS at $0.0475 per 1,000 characters; three takes cost $0.2636. Table by length, and how characters count.

Sume bills text-to-speech at $0.0475 per 1,000 characters, so a 1,850-character narration costs $0.0879 and three takes of it cost $0.2636. The unit is characters of the transcript, not seconds of audio.
The API reference says spaces and punctuation count toward usage, and one request takes a maximum of 20,000 characters. Count the string you send, not the words you typed.
Cost by script length
Per take = characters / 1,000 x $0.0475, from the price tool. Three takes is 3 x the single take.
| Characters | Typical use | One take | Three takes |
|---|---|---|---|
| 600 | short caption read | $0.0285 | $0.0855 |
| 1850 | 60-second narration | $0.0879 | $0.2636 |
| 3700 | two-minute voiceover | $0.1758 | $0.5272 |
| 7400 | four-minute explainer | $0.3515 | $1.0545 |
Count before you send
A character counter in your pipeline gives the bill before the request exists. This works for any script and keeps retries honest, because a re-read of the same text costs the same again.
script = open("narration.txt", encoding="utf-8").read().strip()
chars = len(script) # spaces and punctuation count
per_take = chars / 1000 * 0.0475
print(f"{chars} characters -> ${per_take:.4f} per take, ${3 * per_take:.4f} for 3")
assert chars <= 20000, "split the script: max 20,000 characters per request"Where TTS sits in a video budget
A 1,850-character read is roughly a minute of speech, depending on the voice and pace. Against a 10-second Wan 3.0 720p clip at $1.25, the narration for a whole minute ($0.0879) costs about 7 percent of one clip. Voiceover is rarely the line to optimize; take count and clip retries are.
Splitting the script does not change the price
Billing is per character, so cutting a 3,700-character script into two 1,850-character requests costs $0.1758, the same as one request ($0.1758). Split on sentence boundaries when you want to re-read only the weak half: you pay for the half you redo, not the whole script.
That makes per-scene synthesis the cheap way to iterate. A producer who rejects scene 3 of 6 pays for scene 3 again, not for all six scenes.
Gotchas
- Edit the script before you synthesize: each re-read bills the full character count again.
- Characters are billed as sent, so remove stage directions and markdown markers you do not want spoken.
- The TTS Router requires a
modelfromGET /v1/tts-router/models; read the catalog rather than hard-coding an id.
Sources
Related posts
More in Pricing
- 30-clip storyboard agent: which Sume plan accepts all jobs at once?
If an agent submits 30 separate generation jobs, only Startup (48 accepted) and above take them all at once; Pro (24) needs two waves of 18 and 12.
- 38-second ad: stills, clips, voice, music, render, cost per second
One 38-second ad from 6 stills, five 8-second Wan clips, a 640-character voiceover, a music bed and a render costs $5.8554, or $0.1541 per finished second.
- 7-second 720p AI video clip: Luma lists 5 or 10 seconds, Sume bills 7
A 7-second 720p clip: $0.56 on MiniMax, $0.63 on LTX Fast, $0.525 on Sume H3. Luma's page lists only 5 and 10 second totals ($0.30, $0.90).
- Cancel a queued Sume video job: refund rules and the 409 after start
A queued Sume job can be canceled before it starts; after that cancel returns 409 job_generation_already_started. What is held, with a 30-second example.
Written by Sume