For a contact-centre voice agent, start with Azure Neural text-to-speech, and switch to Cartesia or ElevenLabs Flash only if your own p95 test from your own region says Azure is too slow. Azure charges $15 per million characters for standard neural voices. ElevenLabs Flash lists $0.04 per 1,000 characters ($40 per million), and Cartesia's Scale plan bills overage at $38 per million credits. The latency charts each vendor publishes can't settle the choice, because no two of them measure the same thing. Two independent benchmarks run in 2026 even rank Cartesia and ElevenLabs in opposite order.
Prices below were checked on each vendor's live pricing page or price API on October 26, 2026. The workload throughout is a voice agent producing 100,000 minutes of synthesized speech a month, at roughly 800 characters per minute (Cartesia's own estimate is 750 to 800 credits per minute of audio, one credit per character). That is about 80 million characters.
| Azure AI Speech (Neural) | Cartesia Sonic | ElevenLabs | |
|---|---|---|---|
| Published rate, Oct 26 2026 | $15 / 1M chars (Neural); $22 / 1M (Neural HD) | $38 / 1M credits overage on Scale ($299/mo incl. 8M) | $40 / 1M chars (Flash, Turbo); $80 / 1M (v3, Multilingual v2, v4) |
| 80M chars/month at list | $1,200 (or $960 on the 80M commitment tier) | about $3,035 on Scale; Enterprise is quoted | $3,200 (Flash) or $6,400 (v3); above every self-serve plan |
| Vendor latency claim | None published; SDK reports first-byte latency including network | "First audio in under 90ms" | Flash v2.5 "~75ms", excluding application and network latency |
| Training on your data by default | Real-time text and audio not stored | Yes, perpetual licence, opt-out form | Yes, perpetual licence, opt-out |
| Zero retention | Default for real-time synthesis | Enterprise only, not for cloning | Enterprise only, not for cloning |
| Cloning a hired voice | Custom Neural Voice: Limited Access, recorded talent consent, speaker verification | Instant clone on Pro; 2-4 professional slots on Startup/Scale | Professional clone of your own voice only |
| On-prem | Neural TTS container (connected; disconnected by approval) | On-prem or VPC via sales | VPC on AWS/GCP; on-prem was early access in April 2026 |
| Who should not pick it | Teams that need the most expressive voice and won't run a listening test | Buyers who need published retention periods or self-serve concurrency above 15 | Cost-sensitive contact centres running high minute volumes |
The loser for this buyer is ElevenLabs. Its expressive models cost more than five times Azure's standard rate per character, its fast model still costs 2.7 times as much, and its default terms grant it a training licence you have to opt out of. It wins for narration, dubbing and branded content, where expressiveness pays for itself and a turn-taking deadline doesn't apply.
Why the Latency Charts Don't Match
Time to first audio (TTFA) is the delay between sending text to a speech engine and hearing the first sound, and each vendor stops the clock at a different place.
ElevenLabs lists Flash v2.5 at "~75ms" and v4 Turbo at "~100ms" median inference, and both figures carry a footnote: "Excluding application & network latency." That is model time on ElevenLabs' servers. Your caller never experiences it alone.
Cartesia puts "first audio in under 90ms" in its Sonic-3.6 description and doesn't say whether that includes network time or how it was measured. The current model is sonic-3.6, a moving alias, alongside a dated snapshot sonic-3.6-2026-08-27, so a benchmark run in July measured a different model than the one you would get today.
Azure publishes no headline number at all. What it does publish is a measurement scheme. The Speech SDK returns first byte client latency (synthesis start to first audio chunk on your client, including network latency), a separate network latency, and first byte service latency (request received to first chunk returned). Of the three vendors, only Azure tells you how to split its number into network and service time.
Independent benchmarks don't resolve it either:
| Benchmark | ElevenLabs Flash v2.5 | Cartesia Sonic 3.5 | Cartesia Sonic 3.6 | What it measures |
|---|---|---|---|---|
| Vapi Humanness Index | 197 ms | 128 ms median | 101 ms | Sonic 3.5: 50 streaming trials, network round trip from the benchmark machine included |
| Coval leaderboard, Sep 8 2026 | 185 ms P50, 225 ms P95 | 269 ms P50, 346 ms P95 | 440 ms P50, 696 ms P95 | "Perceived" TTFA, including leading silence in the stream |
On Vapi's index Cartesia is faster. On Coval's, ElevenLabs Flash is faster, and Sonic 3.6 is slower than Sonic 3.5. The Coval figures above come from a table published by Gradium, a competing TTS vendor, so treat the tabulation with that in mind, though the underlying data is Coval's.
The gap is mostly definitional. By June 3, 2026, Coval had started counting the silence at the start of an audio stream as part of TTFA, on the reasoning that a caller hears nothing until the first audible sample. Gradium's measured TTFA jumped from 171.9 ms to 429.6 ms with no change to its model or infrastructure. A model can send its first byte early and still make the caller wait if that byte is silence. Coval's runner is open source under Apache 2.0, so you can run the same test against your own traffic.
Neither public leaderboard we found includes Azure. That is the strongest argument for testing Azure yourself before you assume either way.
What 100,000 Minutes a Month Costs on Each
At list price, Azure Neural costs $1,200 a month for this workload, Cartesia about $3,035 and ElevenLabs Flash $3,200. Expressive models and custom voices change that order quickly.
On Azure AI Speech, standard neural voices are $15 per million characters pay-as-you-go in East US, so 80 million characters is $1,200. The 80M-character commitment tier is a flat $960 a month, with overage at $12 per million. Neural HD voices are $22 per million ($1,760). The free tier is 0.5 million characters a month, which only covers a pilot. Azure's pricing page renders its rates with a script, so the figures here come from Microsoft's public Retail Prices API.
Custom Neural Voice (your own trained brand voice) is priced differently: $24 per million characters for real-time synthesis, $48 per million on HD, $52 per compute hour to train, and $4.032 per hour to host each model endpoint. Hosting runs whether or not anyone calls, which works out to about $2,943 a month for one always-on endpoint. A custom voice on this workload therefore costs about $4,860 a month before training, four times the stock voice.
Cartesia's Scale plan is $299 a month for 8 million credits, with overage at $38 per million once you enable it (if overage is off, requests are blocked when credits run out). 72 million extra credits is $2,736, for about $3,035 in total. The constraint that matters more for a contact centre is concurrency: Scale allows 15 concurrent TTS streams. Any real queue needs the Enterprise tier, which is priced by quote.
The ElevenLabs API page lists $0.04 per 1,000 characters for Flash, Turbo, v4 Turbo and v3 Conversational, and $0.08 for v3, Multilingual v2 and v4. Flash on this workload is $3,200; v3 is $6,400. The largest self-serve plan, Business at $990 a month, includes 24.75 million Flash characters, so 80 million puts you in a negotiated contract. The page does not list TTS concurrency limits.
Per minute of agent speech, that's about 1.2 cents on Azure Neural, 3.0 cents on Cartesia Scale overage, 3.2 cents on ElevenLabs Flash and 6.4 cents on ElevenLabs v3. For the rest of the call stack (the LLM, telephony and orchestration on top of this), see our breakdown of voice AI per-minute pricing.
Voice Cloning: Who Has to Consent, and Who Owns the Voice
Azure has the strictest cloning process of the three, which helps if you plan to hire a voice actor for a brand voice. The vendors split sharply on what you can clone and what proof they demand.
Azure Custom Neural Voice is a Limited Access feature. Only customers managed by a Microsoft account team can register, and you may use the voice only for the use cases Microsoft approves. You must warrant written permission from the voice talent and share Microsoft's talent disclosure with them in advance. The talent records a fixed acknowledgment statement, and Microsoft may run speaker verification to check that the statement and the training audio come from the same person. Microsoft states training data is used only for your model, but it may keep a copy of the model and the statement "for as long as necessary" for security and integrity. The registration adds a step to procurement, and in return you get an audit trail to show a regulator or the talent's agent.
ElevenLabs Professional Voice Cloning carries a constraint most buyers miss: "Professional Voice Clones can only be used to clone your own voice... Even with their consent, you cannot clone someone else's voice." To use a hired actor, the actor creates and verifies the clone in their own account and shares it with you. Before you build a brand on that arrangement, ask your lawyers who controls the voice if the relationship ends. The terms state ElevenLabs "will not commercialize your voice on a standalone basis without your permission". Self-serve slots range from one on Creator and Pro to ten on Business.
Cartesia includes instant cloning from the Pro plan and two or four professional clone slots on Startup and Scale. Its terms prohibit making available "any other person's voice without that person's express permission", but the published terms carry no verification step comparable to Microsoft's or ElevenLabs'. That puts the consent paperwork on you, which is fine if your legal team already runs talent releases and a gap if it doesn't.
Data Retention and Training Use
Only Azure keeps nothing from real-time synthesis by default. ElevenLabs and Cartesia both take a perpetual training licence unless you opt out or negotiate otherwise. For an agent that speaks account balances and claim numbers, this matters more than 50 ms of latency.
Microsoft states it "doesn't retain or store the text that you provide with the real-time synthesis text to speech API", and doesn't store the generated audio either. Batch (Long Audio API) scripts and output are stored in Azure storage until you delete them.
ElevenLabs' terms grant it a "perpetual and irrevocable" licence to use your content to improve its services, with an opt-out that applies from the date it's processed and doesn't reach back. Zero Retention Mode, which deletes most request data when the request completes, is available to Enterprise customers via enable_logging=false, and it excludes instant and professional voice cloning. Without it, deleted items sit in backups for up to 30 days.
Cartesia's terms likewise let it use inputs and outputs to "train, enhance, evolve and improve" its models under a non-exclusive, irrevocable, perpetual licence unless you agree otherwise, again with a forward-only opt-out form. Zero Data Retention is Enterprise-only, covers TTS and STT inference, and excludes voice cloning because cloning needs the stored audio. Its docs don't state a default retention period without ZDR. Get one in writing.
Self-Hosting and Regional Deployment
Azure is the only one of the three with a documented, generally available container you can run in your own data centre today. If a regulator or a public-sector contract rules out a US-hosted API, that decides it.
Azure publishes a neural text-to-speech container (version 4.1.0). Connected containers must report usage to Azure for billing. Disconnected use needs an application, reviewed within 10 business days, and a commitment plan. Custom Neural Voice isn't in the container list. In the cloud, you choose the region: the synthesis endpoint is wss://{region}.tts.speech.microsoft.com.
ElevenLabs stores data in the US by default and offers isolated data-residency environments in the EU, India and Singapore on Enterprise. Storage stays in region, but its docs state processing may still happen elsewhere for support and moderation unless you combine EU residency with Zero Retention Mode. On-prem and on-device were "in early access, with initial releases expected in the first half of 2026" when announced in April; VPC deployments on AWS SageMaker and Google Vertex were available then. Ask for the on-prem GA date in writing.
Cartesia lists on-premise or VPC deployment as an Enterprise option through sales, alongside DPAs, BAAs and SOC 2 Type II. Its public pages don't name hosting regions.
The Test Plan: Measure p95 From Your Own Region
Run your own TTFA test from the region your media servers sit in, on your own prompts, before you sign anything. The two leaderboards above disagree more than fourfold on Sonic 3.6 (101 ms against 440 ms), and neither knows where your callers are.
This Week:
- Pull 50 real agent turns from your transcripts, at your actual length distribution. Short confirmations ("Got it, one moment") and long policy readouts behave differently.
- Stand up a test client in the same cloud region as your telephony or media server. A test run from an office laptop adds the office network to every number.
- Request the output format you'll run in production. Telephony at 8 kHz μ-law and 24 kHz PCM for an app are different workloads. Azure notes that PCM at 24 kHz is 384 kbps against 48 kbps for MP3.
This Month:
- Run Coval's open-source runner, or your own harness, against all three vendors with warm (pre-connected, reused) connections, since that is how production should run. Azure's docs recommend pre-connecting and reusing the synthesizer.
- Record two clocks per request: first byte received, and first audible sample (the leading-silence rule). Report P50, P95 and P99 over at least 500 samples per vendor, spread across a business day.
- Ramp concurrency step by step to your peak. Azure warns that a sudden jump in concurrency can return long latency or 429 errors while the service scales.
- Put the same 20 outputs from each vendor in front of five people who listen to your calls for a living, blind, and have them score how each one pronounces your product names and account numbers.
Before You Sign:
- Write the training opt-out, the retention period and the zero-retention scope into the order form itself.
- If you plan a cloned voice, confirm who holds the voice model if the contract or the talent relationship ends.
- Pin a dated model snapshot (Cartesia offers them) so your latency and voice don't change under you mid-quarter.
What Changes the Answer
Buyers regret this decision when they skip one of two checks: p95 latency measured from their own region, or the retention and training terms in the signed contract. Each vendor below wins when one of those dominates your situation.
Pick Cartesia if your own p95 test shows Azure adding perceptible delay on barge-in-heavy flows and you can sign Enterprise for concurrency, ZDR and the training carve-out. Pin the snapshot, because Coval measured Sonic 3.6 slower than 3.5.
Pick ElevenLabs if the agent's voice is part of the product (premium concierge, media, a brand voice the marketing team already owns) and expressiveness wins your blind listening test by a clear margin. Budget for v3-class pricing and negotiate ZRM up front. Don't pick it for a high-volume tier-1 queue on cost grounds alone; Flash is 2.7 times Azure's list rate for a difference you'll need a listening test to justify.
Stay on Azure if you already have an Azure agreement, need a disconnected container, or plan a hired brand voice and want the vendor to enforce the consent trail. The case against Azure is that no public benchmark we found measures it, so your own test is the only latency evidence you will have.
If you are also picking the speech-to-text half of the stack, the same measure-it-yourself rule applies; see Deepgram vs AssemblyAI vs Whisper.
The Bottom Line
At list, Cartesia and ElevenLabs cost 2.5 to 5.3 times what Azure Neural does per character. Prices like these get cut and renegotiated. The differences that outlast a price cut sit in the contract (retention, training rights, who controls a cloned voice) and in latency you can only measure from where you run. Azure is cheapest at list and has the cleanest default terms. Cartesia and ElevenLabs may beat it on your p95 or may not, and neither the vendors' charts nor the two leaderboards can tell you which.
Run 500 requests from your own region before you sign the order form.
Continue Reading
- Voice AI Pricing: Vapi's $0.05 Minute Bills $0.09 to $0.14
- Deepgram vs AssemblyAI vs Whisper: If You Self-Host, Skip Whisper
- Eleven Voice Agents, One Bank Call, No Clean Winner
- Best AI Contact Center Platforms: Containment Isn't Resolution
- Inworld Buys Ultravox and Upgrades Only Its Own Voices
- Microsoft's MAI-Transcribe-2-Streaming Hits 2.5% WER in Preview
