A phone agent is a pipeline of speech-to-text, an LLM, and text-to-speech: the key question is whether a platform lets you choose each component or manages a preselected stack. The best STT, TTS and LLM models for phone Voice AI depend on your need for control, latency, language coverage, and cost.
Common shortlists include Deepgram Flux or Nova-3 and ElevenLabs Scribe for STT, OpenAI GPT-6 Luna or Gemma 4 31B for the LLM, and ElevenLabs Eleven v3, Cartesia Sonic, Fish Audio, or Google Chirp 3 voices for TTS.
The following summary uses each platform’s documented model-selection approach. Confirm current model availability with the provider before committing to an implementation.
| Platform | Model selection | Model lock-in |
|---|---|---|
| Plivo | Selected no-code; open full-code | Partial (no-code agents) |
| Vapi | Customer chooses each layer | No |
| Retell AI | Routed STT; chooses LLM, TTS | Partial (STT routed) |
| LiveKit | Customer or defaults | No |
| Pipecat | Customer-defined pipeline | No |
| ElevenLabs | Own speech; LLM choice | Partial (speech models) |
| Bland AI | Platform-managed bundle | Yes |
| PolyAI | Own STT; LLM and voice choice | Partial (speech recognition) |
Plivo’s partial status describes its two paths: the managed agents use a fitting model selected for each component, while the full-code path leaves every layer open.
Speech-to-text, text-to-speech and the LLM on a phone call
A phone call is not simply a chat transcript with audio added. The codec, pauses, interruptions, pronunciation, and response timing all affect whether the caller completes the task.
Speech-to-text
Speech-to-text converts the caller’s audio into text for the LLM. Most PSTN calls use narrowband 8 kHz G.711 audio, so a model that performs well on clean microphone recordings may behave differently on phone audio.
Three outcomes matter most:
- Endpointing: deciding when the caller has finished speaking.
- Entity accuracy: capturing names, numbers, dates, account identifiers, and email addresses.
- Partial-transcript behavior: producing useful interim text without changing important words too often.
A fast transcript is not useful if the agent responds before the caller has finished a sentence. Conversely, waiting too long makes a simple request feel slow.
LLM reasoning
The LLM determines what the agent says and does next. Its voice-specific responsibilities include:
- Calling tools for CRM lookups, bookings, transfers, and payments
- Following instructions across a long conversation
- Managing missing or ambiguous information
- Returning a response quickly enough for natural turn-taking
Smaller, faster LLMs are usually a practical starting point for phone agents. A larger reasoning configuration can help with multi-step workflows, but it may increase response time and token use.
OpenAI describes GPT-6 Luna as an efficient model for focused, high-volume tasks. It supports function calling through the Responses API, reasoning levels from none through max, and a 1,050,000-token context window.
Text-to-speech
Text-to-speech turns the LLM’s response into audio. On a phone line, evaluate:
- Time to the first audio byte
- Clarity after narrowband encoding
- Pronunciation of names, dates, amounts, and units
- Language and accent coverage
- Support for pronunciation controls or dictionaries
- Voice consistency over a long call
A voice that sounds impressive in a browser demo may need different testing on a PSTN connection. Clear pacing and correct pronunciation often matter more than maximum expressiveness.
Turn detection and interruption handling
Turn detection is separate from the STT, LLM, and TTS models. It determines when the agent should respond and when it should stop speaking because the caller has started talking.
Plivo runs its own turn-detection model, with noise cancellation built in. The model handles background noise and backchannels such as “mm-hm,” “yeah,” and “okay” without interrupting the agent. The AI Agents platform combines this behavior with interruption handling for managed agents.
Two normalization steps
A post-STT normalizer sits between transcription and the LLM. It can correct likely transcription errors and transliterate mixed-language or mixed-script input before the LLM reasons over it.
A pre-TTS normalizer sits between the LLM and the voice model. It removes markdown and emojis, applies pronunciation rules, and formats emails, names, currencies, dates, units, and numbers so the voice model reads them as intended.
Latency planning
Plivo’s measured end-to-end response figure is 500–600 ms over the WebSocket path, excluding telephony. That total includes STT finalization, LLM first-token time, TTS first-byte time, orchestration, and network work; it should not be treated as the sum of isolated vendor marketing figures.
Published component figures illustrate the available budget:
- Deepgram lists about 260 ms end-of-turn detection for Flux.
- ElevenLabs Scribe v2 Realtime lists latency of about 150 ms. Its API pricing and model page also lists about 280 ms for Eleven v3 Conversational and about 100 ms for Eleven v4 Turbo.
- Cartesia documents sub-90 ms model latency for Sonic 3.6 in its developer documentation.
- OpenAI does not publish a time-to-first-token figure for GPT-6 Luna.
- Google does not publish an STT finalization figure or a Chirp 3 HD first-byte figure.
These figures are not interchangeable benchmarks. Measure the complete stack on phone calls.
Speech-to-text models
| Model | Best known for | Phone-call note |
|---|---|---|
| Deepgram Nova-3 | General streaming accuracy | Monolingual and multilingual options |
| Deepgram Flux | Conversational turn-taking | English and multilingual pricing |
| ElevenLabs Scribe v2 Realtime | Realtime transcription | 90+ documented languages |
| AssemblyAI Universal-3.6 Pro Realtime | Accuracy on names and numbers | Billed per streaming session hour |
| Google Chirp 3 | Google speech recognition | STT v2 rate applies |
Deepgram versus ElevenLabs Scribe is mainly a choice between conversational endpointing and an existing speech ecosystem. Flux or Nova-3 is a logical starting point when endpointing speed matters most; AssemblyAI Universal-3.6 Pro Realtime when accuracy on names and numbers is the priority; Scribe v2 Realtime is useful when the team already uses ElevenLabs voices.
Deepgram’s pricing page documents Nova models in 60+ languages. ElevenLabs lists 90+ languages for Scribe v2 Realtime and Eleven v4, and 70+ for its Eleven v3 voices. Exact Hindi, Spanish, Portuguese, and other language support should be checked in the provider’s current language matrix.
LLMs for voice agents
| Model | Best known for | Phone-call note |
|---|---|---|
| OpenAI GPT-6 Luna | Fast focused tasks | Function calling and long context |
| Google Gemma 4 31B | Open-weight deployment | Apache 2.0 and 256K context |
GPT-6 Luna is the practical managed choice when a call needs tool use with low model cost. Gemma 4 31B is relevant when a team wants open weights and can operate the hosting environment; Google’s model card lists 30.7B parameters, a 256K context window, and multilingual training across 140+ languages.
For complex calls, test GPT-6 Luna with its reasoning effort raised against a hosted Gemma 4 31B deployment. The better choice depends on tool-chain complexity, hosting requirements, and measured response time.
Text-to-speech models
| Model | Best known for | Phone-call note |
|---|---|---|
| ElevenLabs Eleven v3 Conversational | Conversational speech, 70+ languages | About 280 ms latency |
| ElevenLabs Eleven v4 | Expressive voice quality | Use when latency is secondary |
| Cartesia Sonic 3.6 | Fast expressive speech | Sub-90 ms model latency |
| Fish Audio S2.1 Pro | Cost-focused synthesis | Billed per UTF-8 byte |
| Google Chirp 3 HD | Google voice quality | Character-based billing |
ElevenLabs versus Cartesia is a quality and integration decision: either can suit a premium voice experience, while Sonic 3.6, at sub-90 ms, or Eleven v3 Conversational, at about 280 ms, is the pick when response speed matters. Where cost per minute decides, Fish Audio S2.1 Pro works out to about $0.0068 a minute and Google’s Chirp 3 HD voices to about $0.0135, both at 450 characters.
Speech-to-speech models such as OpenAI Realtime and Gemini Live process audio directly and can replace the three-layer pipeline; this article focuses on the STT–LLM–TTS architecture used by many phone agents. Because a speech-to-speech model consumes and produces audio directly, any transcript is an optional side output rather than the text the model reasoned over, which matters for normalizers, logging and compliance records.
Which platforms let you choose the models?
The main platform decision is whether your team owns model selection or accepts a managed stack. More choice increases tuning and operations work; a managed stack reduces configuration but may hide the exact models behind the platform.
Orchestration platforms where you select each model
Vapi lets teams select providers across the speech and reasoning layers; Retell AI lets teams pick the LLM and voice and routes speech-to-text by language. LiveKit and Pipecat are full-code frameworks: teams assemble the pipeline themselves, either through their own deployment or through a managed cloud offering.
Vapi
Vapi is a low-code orchestration option for teams that want to choose STT, LLM, and TTS providers and bring provider credentials. Its pricing separates hosting from model and telephony usage, so teams can change the stack without replacing the orchestration layer.
The tradeoff is configuration work across several providers. Its reference-stack estimate is about $0.075–$0.084/min for a US local outbound call on Vapi’s own telephony, which carries no transport fee.
Retell AI
Retell AI provides managed voice orchestration with customer-selected model options and a custom LLM route. Retell AI lists GPT-6 Luna at $0.0032/min and its own telephony at $0.015/min; its conversation voice engine includes transcription, so no separate STT line applies.
On the reference stack, the voice engine, a Cartesia voice, GPT-6 Luna and Retell telephony add up to $0.055 + $0.015 + $0.0032 + $0.015, about $0.088/min.
LiveKit
LiveKit’s open-source framework gives developers control over the runtime and model pipeline. LiveKit Cloud adds managed sessions, telephony, inference, and default STT and TTS services.
Self-hosted deployment means the team owns hosting, scaling, observability, and the resulting compliance configuration. The Cloud reference estimate is about $0.057/min with Deepgram Flux and Cartesia Sonic 3.6 through LiveKit Inference, excluding optional observability charges.
Pipecat
Pipecat is an open-source full-code framework for assembling real-time voice pipelines. Pipecat Cloud supports providers across more than 80 LLM, STT, and TTS services, while self-hosting leaves deployment and operations with the team.
A Pipecat Cloud estimate using Flux, GPT-6 Luna, and Eleven v3 Conversational is about $0.054/min. Providers bill directly or through the managed cloud arrangement.
Platforms that manage the stack for you
Bland AI bundles the whole stack, and PolyAI operates its own speech recognition while letting teams choose the LLM and voice. ElevenLabs manages its speech models while allowing LLM selection. Plivo’s no-code agents fit this group because the platform chooses the underlying speech and LLM models based on the selected language and voice.
Plivo
Plivo’s no-code path starts with Vibe Agent: describe the agent in plain English and it creates, tests, edits and deploys the agent. AI Agent Studio is the drag-and-drop canvas for doing the same work by hand.
On this path, Plivo selects the speech and LLM models, and customers do not bring provider API keys. Plivo’s Agentic STT combines speech recognition, noise cancellation, interruption handling, and turn detection; the no-code platform supports 50+ languages.
On the no-code path the platform routes between speech-to-text and text-to-speech models and picks them from the agent’s language and voice configuration; customers do not select providers there. On the full-code path, the customer selects every model. Teams that need that control can use Audio Streaming or SIP trunking with a custom agent, LiveKit, or Pipecat and run any model. Plivo’s full platform also includes an enterprise-grade telephony network, seven regional points of presence, and a 99.99% uptime SLA.
ElevenLabs
ElevenLabs provides its own speech models, including Scribe and multiple TTS families. ElevenAgents, its agent platform, allows a supported third-party LLM or a custom model through a server integration.
This is a good fit when voice quality, voice selection, or multilingual speech is central. The limitation is that speech remains tied to the ElevenLabs model catalog, and ElevenLabs bills the LLM separately by model, so the all-in rate depends on the LLM chosen.
Bland AI
Bland AI bundles its LLM, STT, and TTS and states that it does not pass through separate model-provider charges. That simplifies budgeting and removes per-layer configuration.
The limitation is reduced model choice. Its Start reference price is $0.14/min before the standard telephony rate.
PolyAI
PolyAI runs its own Owl speech recognition and its Raven LLM by default; teams can compare Raven with OpenAI and Amazon Bedrock models or connect their own LLM endpoint, and pick voices from a library spanning ElevenLabs, Cartesia, Hume and others. PolyAI keeps responsibility for tuning the speech recognition layer.
The tradeoff is a platform-routed speech recognition layer and sales-led pricing. PolyAI quotes per-minute pricing through sales.
The following tables summarize the documented model-selection patterns for the eight platforms.
Speech-to-text: who picks the model
| Platform | Default or native | Can you choose? |
|---|---|---|
| Plivo | Agentic STT | Routed on no-code; any model full-code |
| Vapi | Customer-selected STT | Yes: Deepgram, ElevenLabs, +10 |
| Retell AI | Retell-routed STT | Routed: Azure, Deepgram, Soniox, AssemblyAI |
| LiveKit | Platform defaults | Yes: Deepgram, ElevenLabs |
| Pipecat | Provider-defined pipeline | Yes: 80+ services |
| ElevenLabs | Scribe speech models | No |
| Bland AI | Bundled STT | No |
| PolyAI | Owl recognition | No |
On Plivo’s no-code path the platform routes between speech-to-text models and picks one from the agent’s language and voice configuration; with audio streaming or SIP trunking on the full-code path, the customer selects any model. Retell AI routes speech-to-text among Azure, Deepgram, Soniox and AssemblyAI by language; Custom Settings pins one provider, and customers do not bring API keys.
LLM: who picks the model
| Platform | Default or native | Can you choose? |
|---|---|---|
| Plivo | Selected third-party LLM | Plivo-selected no-code; any model full-code |
| Vapi | Customer-selected LLM | Yes: OpenAI, Google, +16 |
| Retell AI | Customer-selected LLM | Yes: OpenAI, custom |
| LiveKit | GPT-6 Luna inference | Yes: OpenAI, Google |
| Pipecat | Provider-defined pipeline | Yes: 80+ services |
| ElevenLabs | Customer-selected LLM | Yes: OpenAI, custom |
| Bland AI | Bundled LLM | No |
| PolyAI | Raven (default) | Yes: OpenAI, Amazon Bedrock, own endpoint |
Text-to-speech: who picks the model
| Platform | Default or native | Can you choose? |
|---|---|---|
| Plivo | Selected platform voices | Routed on no-code; any model full-code |
| Vapi | Customer-selected TTS | Yes: ElevenLabs, Cartesia, +13 |
| Retell AI | Platform voices | Yes: ElevenLabs, Cartesia |
| LiveKit | Platform defaults | Yes: ElevenLabs, Cartesia |
| Pipecat | Provider-defined pipeline | Yes: 80+ services |
| ElevenLabs | ElevenLabs voices | No |
| Bland AI | Bundled TTS | No |
| PolyAI | Voice library | Yes: ElevenLabs, Cartesia, Hume |
Provider catalogs change. The named providers above are the documented examples relevant to this comparison, not a guarantee that every model remains available in every plan.
In a full-code build, the application talks to each provider’s API from inside a framework like Pipecat or LiveKit, so any compatible model pipeline can be assembled. Plivo’s Pipecat integration guide uses Audio Streaming, while its LiveKit integration guide uses SIP trunking to connect the agent to Plivo’s telephony network.
What each layer costs per minute
These examples use one minute of call audio, with the caller and agent speaking for about half the minute. STT is billed on the full streamed minute. TTS assumes about 75 spoken words per minute for the agent, or roughly 450 characters in the agent’s half-minute of speech. LLM usage assumes four turns per minute, 6,000 input tokens, and 240 output tokens.
| Layer | Example model | Published price per minute |
|---|---|---|
| STT | Deepgram Nova-3 | $0.0077/min |
| STT | Deepgram Flux | $0.0077/min |
| STT | Scribe v2 Realtime | $0.0037/min |
| STT | AssemblyAI Universal-3.6 Pro Realtime | $0.0075/min |
| STT | Google STT v2 | $0.0160/min |
| LLM | GPT-6 Luna | $0.0007/min |
| LLM | Gemma 4 31B | Self-hosted; no list rate |
| TTS | ElevenLabs Eleven v3 Conversational | $0.0180/min |
| TTS | ElevenLabs Eleven v4 | $0.0360/min |
| TTS | Fish Audio S2.1 Pro | $0.0068/min |
| TTS | Google Chirp 3 HD | $0.0135/min |
| TTS | Cartesia Sonic 3.6 | $0.0180/min |
Cartesia sells monthly credit plans at one credit per character; its Startup plan ($49 for 1.25M credits) works out to about $0.018/min at 450 characters a minute.
The platform comparison below uses the same reference stack: GPT-6 Luna as the language model, each platform’s default or bundled STT, an ElevenLabs voice or Cartesia Sonic 3.6 where the platform prices TTS separately, and a US local outbound call. A platform that does not provide telephony uses a standard CPaaS rate of $0.0140/min for that call type. Prices change and should be checked on each vendor’s current pricing page.
| Platform | Reference stack | All-in estimate |
|---|---|---|
| Plivo | Agent + telephony | $0.0415/min |
| Vapi | Hosting + selected models | $0.0750–$0.0840/min |
| Retell AI | Voice engine + Cartesia | $0.0880/min |
| Bland AI | Start bundle + telephony | $0.1540/min |
| ElevenAgents | Hosting + LLM | Not published |
| LiveKit Cloud | Session + inference | $0.0570/min |
| Pipecat Cloud | Cloud + providers | $0.0540/min |
| PolyAI | Sales quotation | Not published |
Plivo’s figure has two parts: the AI agent rate of $0.03/min, which covers the LLM, transcription, voice models and orchestration, plus $0.0115/min for US local outbound telephony. The resulting all-in figure is $0.0415/min; see Plivo’s pricing. For inbound calls to a US local number the total is $0.03 + $0.0055 = $0.0355/min.
ElevenAgents bills the LLM separately by model, so its total depends on the LLM chosen. PolyAI quotes pricing through sales. LiveKit’s telephony figure is its US local inbound rate; it publishes no outbound rate.
Picking a stack by use case
- High-volume outbound: Deepgram Flux or Nova-3 + GPT-6 Luna + Fish Audio S2.1 Pro. Fast endpointing and low-cost speech can reduce the cost of each completed call, but test entity accuracy on the campaign’s names and numbers.
- Healthcare or BFSI intake: Deepgram Nova-3 + GPT-6 Luna or Gemma 4 31B + ElevenLabs Eleven v3 Conversational, with a pre-TTS normalizer. Use HIPAA with BAA when PHI is involved and PCI DSS when the workflow takes payment; Plivo’s BAA is available on its Enterprise plan.
- Multilingual India or LATAM calls: Use a provider whose current language list covers the required Hindi, Spanish, or Portuguese variants, then add a post-STT normalizer for mixed-language transcripts. Plivo’s no-code agents support 50+ languages, while Deepgram and ElevenLabs publish broad language coverage.
- Premium inbound support: Cartesia Sonic 3.6 or ElevenLabs Eleven v4 + GPT-6 Luna with its reasoning effort raised. Prioritize pronunciation, interruption recovery, and consistent voice behavior across long multi-turn calls.
Test the stack before you commit
Compare two or three complete stacks using the same recorded calls and the same tool responses. Score:
- Task completion
- Accuracy for names, numbers, dates, and email addresses
- Recovery after caller interruptions
- Voice clarity on a phone line
- Cost per completed call
- Time from caller turn-end to first agent audio
Run the evaluation over real PSTN calls, not only browser audio. The narrowband codec, packet behavior, and phone acoustic conditions can change STT accuracy and perceived voice quality.
Evaluate the full system, including normalizers, tool calls, transfer logic, and telephony. A low component price does not guarantee a lower cost per successful conversation.
Ready to test a stack on real phone calls? Sign up for Plivo’s AI Agents platform and run the same recorded calls through a no-code agent and a full-code pipeline.
FAQs
Which LLM is a practical default for voice agents?
OpenAI’s GPT-6 Luna is the current small, fast reference model for this comparison and is designed for focused, high-volume tasks. The previously common gpt-4.1-mini default is scheduled to leave the API on January 14, 2027, with GPT-6 Luna named as its replacement. Gemma 4 31B is the alternative for a team that wants open weights to host itself.
Can I bring my own STT or TTS provider?
It depends on the platform’s model-selection path. Vapi, LiveKit, and Pipecat support customer-selected providers; Retell AI lets you pick the LLM and voice and routes speech-to-text among four providers; Bland AI bundles its own stack, and PolyAI routes speech recognition itself while letting you choose the LLM and voice. Plivo’s no-code agents route between models from the agent’s language and voice configuration, without customer API keys; on its Audio Streaming and SIP trunking full-code paths the customer selects any model.
What does a Voice AI model stack cost per minute?
Under the stated one-minute assumptions, individual layers range from about $0.0007/min for GPT-6 Luna to $0.036/min for ElevenLabs Eleven v4, while STT and TTS prices vary by provider and usage unit. Complete US local outbound estimates range from $0.0415/min for Plivo to $0.154/min for Bland AI’s Start plan; platforms without a public per-minute rate show “Not published”.
Which models can handle Hindi or other non-English calls?
Start with the providers that publish broad language coverage, then verify the exact language, regional variant, script, and voice before testing. Deepgram lists 60+ languages for Nova models, ElevenLabs lists 90+ for Scribe v2 Realtime and Eleven v4 and 70+ for Eleven v3, and Plivo supports 50+ languages on its no-code agents. A post-STT normalizer can help when callers mix languages or scripts, but it does not replace language-specific testing.
Does model choice affect HIPAA compliance?
Yes. Every provider that handles PHI must be covered by the applicable contractual and compliance arrangement; selecting a model does not transfer that responsibility to the orchestration platform. Plivo offers HIPAA with BAA for AI Agents on its Enterprise plan, but a team must also evaluate any external model provider used in a full-code pipeline.