Twilio voice AI
Twilio voice AI, without writing the voice stack.
Twilio gives you the numbers and the phone network. Turning a Twilio number into an AI voice agent is the part left to you, usually on Media Streams or ConversationRelay, with a server of your own in the middle.
Or connect the Twilio account to VocalLabs. Import your DIDs, assign a published agent for inbound, and place outbound calls one at a time or as a scheduled batch. Twilio stays your carrier and keeps the PSTN billing; you build the agent without code.
Keep your Twilio numbers · Import your DIDs · Inbound and outbound · PSTN billing stays with Twilio · Your own model keys
- Caller00:00
Hi, I was charged twice for my subscription this month.
- System00:02
Tool call · billing lookup · two charges found
- AI agent00:03
Sorry about that. I can see two charges of $29 on 3 November. Refunds need a person to approve, so I’m putting you through to billing now.
- System00:10
Transfer to a human · billing team
- Human00:16
Hi, this is Sam in billing. I can see the duplicate charge, and I’m refunding it now.
Three ways to build voice AI on Twilio.
Twilio documents two routes of its own. Media Streams hands you the raw call audio; ConversationRelay handles the speech and hands you text. Connecting the account to VocalLabs is a third: the agent is built and run for you, and Twilio stays the carrier.
| Media Streams | ConversationRelay | VocalLabs agent | |
|---|---|---|---|
| What Twilio does | Streams the call’s raw audio to your WebSocket server and, with a bidirectional stream, plays back the audio you send | Handles speech recognition and text-to-speech, and sends the caller’s words to your application as text | Carries the call on your Twilio numbers, as your carrier |
| What you build | Speech-to-text, the LLM, text-to-speech, turn-taking and transfers, and the server between them | The application that generates each reply, and the WebSocket server it runs behind | The agent’s prompt, tools and models, in a no-code editor |
| Models | Whichever vendors you contract and connect | Twilio-managed speech; your own LLM | Your own keys: OpenAI, Gemini, xAI, OpenRouter, Deepgram, ElevenLabs, Soniox, Sarvam, Raya |
| Where the logic runs | Your servers | Your servers | VocalLabs runs the realtime session |
Twilio columns describe Media Streams and ConversationRelay as documented on twilio.com, as of Nov 2026. To replace the voice layer under an agent you already run, see our Twilio alternative page. · Source: Twilio ConversationRelay docs
Your Twilio number, answered by a published agent.
Nothing of yours to host between Twilio and the models. The number stays on Twilio; the conversation runs on VocalLabs.
- 01Your Twilio accountNumbers and PSTN billing stay here.
- 02Imported DIDConnected under Phone Numbers in VocalLabs.
- 03Assigned agentA published voice agent answers inbound.
- 04Mid-callHTTP tools, MCP servers, transfer to a person.
- 05Session recordRecording, transcript, tool calls, webhooks.
- Inbound
- Each imported number is assigned a published voice agent, which answers the calls it receives.
- Outbound
- The same agent places calls from the dashboard or the API, one at a time or as a scheduled batch.
- Post-call
- Post-call analysis runs once the call ends, and signed webhooks push the session’s events to your systems.
Twilio keeps the line. VocalLabs runs the agent.
From Twilio number to live agent.
- 01
Build the agent
In the dashboard, with Copilot, or over MCP from Claude Code or Codex: the prompt, a speech pipeline or a single realtime model, FAQs and tools.
- 02
Add the handoff
Decide when the agent transfers to a person, hands off to another agent or ends the call, and wire the tools it needs mid-call.
- 03
Test in the browser
Run voice test sessions before publishing, and read the transcript, tool calls, captured fields and provider usage for each.
- 04
Connect Twilio
Under Phone Numbers, connect your Twilio account, import your DIDs and assign the published agent for inbound.
- 05
Go outbound when ready
Place calls one at a time or as a scheduled batch, from the dashboard or the API.
Twilio voice AI or a Twilio alternative?
Two different jobs. This page puts an agent on top of your Twilio numbers. The Twilio alternative page is about replacing the DIY voice pipeline beneath an agent with VocalStack Voice.
| Agent on your Twilio numbers | VocalStack Voice, the Twilio alternative | |
|---|---|---|
| What changes | You add a no-code agent to the numbers you have | The voice layer under your agent: SIP, WebRTC, PSTN, speech and models under one API |
| Twilio’s role | Your carrier: numbers and PSTN billing | One carrier among Twilio, Exotel, Ozonetel, Airtel IQ, Plivo, Kaleyra and SIP trunks |
| Who builds | Anyone on the team: dashboard, Copilot or MCP | Developers, through the REST API and webhooks |
| Call controls | Tools, handoff to a human or another agent, end-call | Barge-in, DTMF, and handoff with the full conversation state and transcript |
Questions buyers ask first.
Same Twilio numbers. An agent on every one.
Tell us which Twilio numbers should be answered, what callers ask for and where calls go when a person is needed. We will help you connect the account and build the agent, and you can test it in the browser before it takes a real call.






