What Text-to-Speech APIs Cost per Finished Hour
Compare eight speech APIs and calculate the real cost of a finished hour after retakes, reused clips and unused subscription credits.

At published character rates, a 54,000-character hour of new English speech costs $0.22 with Amazon Polly Standard or Google Standard, $0.81 with OpenAI tts-1, $1.62 with Deepgram Aura-2, and $2.16 with ElevenLabs v4 Turbo/Flash, before free allowances. These are arithmetic examples, not measured audio lengths or voice-quality rankings. Retakes increase the amount you generate; replaying a saved clip can reduce it. A quote for one finished hour therefore needs your script length, rejected takes, reusable clips, chosen voice tier and the provider’s actual billing unit. Amazon, Google, OpenAI, Deepgram and ElevenLabs publish the rates behind these figures.
Compare eight APIs in their own billing units
The table names one product or plan per provider. Rates are public US-dollar prices read on November 4, 2026; they are not account-specific quotes. A free allowance can make the next request cost nothing while still leaving a monthly fee or an expiry date to consider. A dash means the provider sells a plan rather than a comparable pay-as-you-go rate for this row.
| Provider and product | Published rate or plan | Allowance or condition | Illustrative charge for 54,000 new input characters* |
|---|---|---|---|
| Amazon Polly Standard | $4 per 1M characters | 5M Standard characters/month listed; eligibility depends on account creation date and AWS Free Tier plan | $0.216 |
| Google Cloud Standard | $4 per 1M characters | First 4M characters/month at no charge; billing must be enabled | $0.216 |
| OpenAI tts-1 | $15 per 1M characters | Legacy model; scheduled shutdown January 6, 2027 | $0.810 |
| Deepgram Aura-2, pay as you go | $0.030 per 1,000 characters | $200 initial credit; different Growth rate | $1.620 |
| ElevenLabs v4 Turbo/Flash API | $0.04 per 1,000 characters | Maker lists 10K free credits/month | $2.160 |
| Fish Audio S2.1 Pro hosted API | $15 per 1M UTF-8 bytes | Byte count depends on the text; S2.1 Pro Free is a separate temporary offer | Not comparable without byte count |
| Cartesia Sonic-3.6 Pro | $5/month for 100K credits | One TTS character uses one credit; paid-plan overage has a separate rate | Included if the monthly pool is available |
| SpeechifyAI Simba 3.5 Starter | $10/month; $10 per 1M characters during launch pricing | 1.9M characters included during the launch offer; terms change November 21, 2026 | Included if the monthly balance is available |
The fourth column multiplies 54,000 by the named character rate, with no credit, tax, monthly fee or other product applied. It is a base charge for new synthesis*, not a guaranteed invoice. For Fish Audio, 54,000 English ASCII characters would be 54,000 UTF-8 bytes and cost $0.81, but multilingual text can use more bytes. Do not copy that conversion into another language.
AWS lists a 5 million Standard-character monthly free tier, but eligibility depends on account creation date and the selected AWS Free Tier plan. For new AWS customers since July 15, 2025, AWS also lists up to $200 in credits, a six-month free plan, and a 12-month deadline to use credits. Check your account terms; the older Polly allowance is not guaranteed for every new account.
Amazon says cached Polly speech can be replayed without another synthesis charge. It also lists Neural at $16, Generative at $30 and Long-Form at $100 per million characters, so the $4 row describes Standard only. Google’s $4 Standard voice is listed under legacy models; Chirp 3 HD is $30 per million characters and Gemini TTS is billed in text and audio tokens. Those are different products, not discounts on the same voice. Amazon’s price page and Google’s price page give the underlying rules.
OpenAI marks tts-1 as deprecated and says it will shut down on January 6, 2027. Its speech guide directs new integrations to a Realtime workflow, which has a different unit and endpoint. The tts-1 row helps price an existing integration; it should not be treated as a long-lived default for a new build. Deepgram’s pricing table separately lists Aura-1 at $0.015 and Flux TTS at $0.045 per 1,000 characters. Its managed Voice Agent price is per connection minute and includes other components, so it does not belong in the TTS-only table.
ElevenLabs lists v4 Turbo/Flash at $0.04 per 1,000 characters and v4/v3/v2 Multilingual at $0.08. Its API page is the source for those API rates. Fish Audio’s developer page calls its rate “per million characters” in one section but specifies UTF-8 bytes in the detailed hosted-API row. Use the byte rule when budgeting non-ASCII scripts and confirm the usage meter before scaling.
Cartesia’s plan page quotes credits rather than a universal unit price. Pro is $5 for 100,000 monthly credits; Startup is $49 for 1.25 million; Scale is $299 for 8 million. Sonic synthesis uses one credit per character, and paid-plan overage rates differ by tier. SpeechifyAI’s API pricing likewise includes monthly character capacity. The Starter fee is paid whether you use the balance or not; its monthly balance expires rather than rolling over. The Simba 3.5 launch rate and included capacity change on November 21, 2026. Check the billing date before treating that promotion as a steady rate.
Count generated speech, accepted speech and replayed clips
A finished file hides how much text you sent to the API. Keep three counts: characters in the accepted output, characters sent again for retakes, and characters served from previously generated clips. For a character-billed voice, the bill starts with new characters sent for synthesis. Replaying an existing audio file should not be represented as a new TTS request. Storage, delivery and licensing can still have separate costs.
For a simple worksheet, assume every clip has roughly the same script length. Let C be the character count for an accepted finished hour, r the share of that hour supplied by clips already made, and e the extra generation fraction on the remaining new clips. Then:
New characters = C × (1 − r) × (1 + e).
This formula is an editorial budgeting model, not a vendor billing rule. It assumes retakes have the same average length as the new accepted clips and that saved audio can legally be reused in your application. Count actual API input instead where you have it. Also count pronunciation markup and whitespace under the provider’s rules: Google says input spaces, newlines and most SSML tags count; SpeechifyAI says leading and trailing whitespace and SSML tags do not. A shared script can produce different billable totals.
The same discipline applies to other units. For Fish Audio, replace new characters with the actual UTF-8 byte count of each request. For Google’s Gemini TTS or OpenAI’s token-billed speech models, use the billed text and audio tokens from the provider’s usage records. A per-character conversion without measured tokens or bytes would be an invented precision. Google publishes the token rates separately.
Price one finished hour three ways
Take an illustrative one-hour English script containing 54,000 accepted characters. This is an assumption for the worksheet, not a measured speaking speed; the same words can run longer or shorter with voice, pauses and language. Assume a character-priced voice, no free allowance, no subscription, and no tax. The table shows what changes when editors reject takes or reuse existing audio.
| Scenario | New-character calculation | Polly Standard / Google Standard at $4 per 1M | OpenAI tts-1 at $15 per 1M | Deepgram Aura-2 at $30 per 1M |
|---|---|---|---|---|
| First take accepted; no reuse | 54,000 × 1 × 1 = 54,000 | $0.216 | $0.810 | $1.620 |
| 25% extra generation; no reuse | 54,000 × 1 × 1.25 = 67,500 | $0.270 | $1.0125 | $2.025 |
| 25% extra generation; 40% reused | 54,000 × 0.60 × 1.25 = 40,500 | $0.162 | $0.6075 | $1.215 |
The $4, $15 and $30 per million rates come from the Amazon, Google, OpenAI and Deepgram pages. The table is arithmetic, not a synthesis test. It also assumes reused clips replace fresh requests. If your app sends the same text again instead of serving the saved file, count that request as new generation. Polly explicitly allows cache and replay without an extra synthesis fee; check the other provider’s audio-use terms and your delivery architecture before assuming identical rights.
An editor can improve this worksheet with actual logs: record input text length or bytes per request, the request’s voice/model, whether the output was accepted, and a stable identifier for reused audio. Then total the billable units for a month and divide by the number of finished, accepted hours. That denominator keeps rejected takes visible. It also prevents a low cost per generated hour from hiding expensive revisions. If you need to compare the reverse workflow, our speech-to-text API pricing guide prices audio that an API receives, not speech that it creates.
Find the subscription break-even point
A subscription can lower the effective price per character only when you use its included pool. For any plan, calculate monthly bill = monthly fee + paid overage. Divide that bill by actual new characters if you want the effective unit price. Unused included capacity does not become a saving, and a one-time promotional credit is not a recurring free tier.
For example, Cartesia Pro costs $5 for 100,000 credits, with one Sonic TTS character per credit. If the illustrative 40,500-character workload is your only usage that month, you pay the $5 plan fee: $5 ÷ 40,500 × 1,000,000 = about $123.46 per million used characters. If you instead use all 100,000 credits, the fee works out to $50 per million. These are utilization calculations, not Cartesia’s quoted pay-as-you-go rate. These figures allocate this month’s fee to this month’s usage. Cartesia allows paid credits to roll over, with a balance cap of twice the monthly allowance; unused credits may fund later output, so compare several billing periods when usage varies. Check whether the free plan, with 20,000 monthly credits, suffices and whether you need the Pro plan’s commercial-use license. Cartesia publishes those plan details.
SpeechifyAI Starter’s $10 monthly fee has the same trap. During the current launch offer, its 1.9 million included Simba 3.5 characters work out to roughly $5.26 per million only when the whole pool is used. At 40,500 characters for the month, the full fee works out to about $246.91 per million used characters. Its monthly balance expires, and the Simba 3.5 terms change after November 21, 2026. SpeechifyAI describes both conditions. An API or Reader app subscription is not interchangeable with the other.
A practical break-even check therefore uses your monthly forecast, not a single clip. Put the fixed fee in one column, expected extra characters or credits in a second, and overage in a third. Compare that total against a pay-as-you-go quote for the same voice requirements. For text-model work, our AI API cost calculator handles tokens; it does not calculate TTS character or audio bills. Our AI API price table likewise covers text-model tokens, not the speech prices above.
Check the voice before choosing the cheapest rate
Price only matters if the voice meets the job. Send the same short script to the candidate voices and listen for your actual names, numbers, abbreviations and target language. Record how many takes you reject. For a live voice agent, measure time to first playable audio and interruptions in your own app; a vendor’s latency claim is not your deployment result. Also check the selected plan’s commercial-use and voice-cloning terms before committing. Cartesia explicitly puts a commercial-use license on its paid Pro tier; Fish Audio says its self-hosted open weights have a separate paid commercial license. Those are plan-specific constraints, not claims about every provider. Cartesia and Fish Audio publish the terms cited here.
If your application also uses a language model, add its text-token cost separately. Our rate-limit guide helps estimate request throughput, and the model tracker helps identify the text model you are pairing with speech. Neither replaces a TTS usage log. The purchase decision is the monthly cost per accepted, usable hour at your needed voice quality and delay, after retakes and reuse are counted.
Sources
- Amazon Polly pricing — Standard, Neural and other rates; free tier; cache and replay.
- Google Cloud Text-to-Speech pricing — character counting, Standard and Chirp rates, Gemini token rates.
- OpenAI tts-1 model and speech guide — character rate and deprecation.
- Deepgram pricing — Aura and Flux TTS units, initial credit and separate Voice Agent billing.
- ElevenLabs API pricing — v4 Turbo/Flash and Multilingual API rates.
- Fish Audio developer pricing — hosted API byte rate and temporary free offer.
- Cartesia pricing — credits, subscription tiers and overage.
- SpeechifyAI API pricing — launch rates, included characters and balance expiry.
All pages read on November 4, 2026.
Free toolWhat will 10,000 chats a month cost?Estimate my bill

