Text to speech failed request: charged? Sume dry_run and cap
A TTS job that fails on Sume's duration limit captures no credit. Use dry_run to preview cost and max_spend_usd to cap it before a paid request.

On Sume, a text-to-speech job whose audio runs past 1200 seconds fails with tts_duration_exceeded and no credit is captured. More generally, Sume reserves the estimate on submit, captures it on success, and releases or refunds it for failed jobs. Preview a request with dry_run and bound it with max_spend_usd.
Sume facts are from the OpenAPI TTS schema, the MCP tts_create description and the docs on generation admission, read 2026-09-30.
What does Cartesia say about failed requests?
Its pricing page says credits are only used by successful requests and errors will not consume credits, with standard TTS at approximately 1 credit per character. That is Cartesia's own billing, not a statement about Sume.
What does a failed Sume TTS job cost?
| Situation | What the docs say |
|---|---|
| Audio over 1200 s | Fails with tts_duration_exceeded (no credit capture) |
| Failed job or failed queue admission | Reservation is released or refunded where applicable |
| Success | Reserved usage is captured |
| Rate | Paid per transcript character: $0.0475 per 1,000 characters |
How do dry_run and max_spend_usd work?
The MCP tts_create tool takes {idempotency_key, payload, dry_run?, max_spend_usd?}. The description says dry_run previews cost and max_spend_usd caps it. The idempotency_key is required, and the transcript is 1 to 20000 characters.
Run dry_run first on a long script, then send the paid call with a max_spend_usd just above the preview.
How do I avoid paying twice for a retry?
Reuse the same idempotency key when a submit is retried, and do not submit a new paid job for the same intent just because a wait ran out. Long scripts should be split below the 1200-second ceiling; see TTS 1200-second limit.
Sources
Related posts
More in Pricing
- Where did the Sume Credits page go? Billing & subscription
The dashboard surface once called Credits is now Billing & subscription: plan status, balance and manual top-ups. What the API can read and what it cannot.
- Whisper API cost per minute, and what an hour costs
OpenAI lists Whisper at $0.006 per minute and gpt-4o-mini-transcribe at $0.003. Here is the per-hour math next to Sume STT 1.0's per-minute rate.
- Creatify Boreal price per second vs Sume's reserve ledger
Creatify prices Boreal at a cent per second of finished video. Sume shows each model's supported durations, reserves credits at admit and logs it in /v1/usage.
- ElevenLabs API pricing: USD, not credits, and Sume's wallet
ElevenLabs says API usage is billed in US dollars, not credits: TTS is $0.08 per 1,000 characters, $0.04 Flash/Turbo. Sume also bills a USD balance.
Written by Sume