
Subscribe
Tags
Voice AI
AI Agents
Contact Center
Latency & Performance
A voice agent that answers every call is quick to build. Proving it works is harder. Once an AI agent takes real calls, leadership wants to know how many calls it handles alone, how often it hands off to a person, and whether callers are happier or hanging up sooner.
Answering that needs a short list of voice AI KPIs: business outcomes tied to the technical signals that explain them. This guide covers both layers, how they connect, and how to set targets that fit your own call mix.
Why voice AI needs its own scorecard
Contact center teams already track average handle time, service level, first contact resolution and CSAT. Those still matter, but they were designed around human agents and queues. A voice agent can fail in ways classic reports never see.
A caller might sit through two seconds of dead air after every sentence. The recognizer might mishear an account number three times. A backend lookup might time out, forcing a transfer. None of this shows clearly in a queue report.
That is why a useful scorecard has two layers:
Business outcomes that tell you whether the agent is delivering value: containment, transfers, abandonment, resolution and caller experience.
Technical signals that tell you why: latency, recognition quality, interruptions and tool-call reliability.
Outcomes tell you something is wrong. Signals tell you where to look.
The business outcomes that matter
Containment rate
Containment rate is the share of in-scope calls the voice agent handles start to finish without transferring to a human. It is the headline number in most voice AI discussions, and the most often misread.
A call can be “contained” for bad reasons. If a frustrated caller hangs up, the call never reached a person, so a naive report counts it as a win. Track two versions:
Gross containment: calls that ended without a transfer, divided by in-scope calls.
Net containment: gross containment minus calls where the same caller came back about the same issue within a set window, such as seven days.
Be explicit about the denominator too. Excluding very short calls or out-of-scope intents can be reasonable, but every exclusion lifts the number. Write the definition down and keep it stable.
Transfer rate
Transfer rate (often called escalation rate) is the share of calls handed to a human agent. A single transfer number hides an important split, so break it into two groups:
Planned transfers: the agent recognized a request it is not designed to handle, such as a complaint or a vulnerable caller, and routed it correctly. These are a sign the agent is doing its job.
Unplanned transfers: the agent got stuck. It failed to understand the caller, a tool call failed, or the caller asked for a human out of frustration.
Tag the reason for every transfer. That list becomes your best guide to what to fix next. It also helps to check transfer quality: did the human agent receive the context gathered so far, or did the caller have to repeat everything?
Abandonment rate
Abandonment is the share of callers who hang up before their request is completed. Look at where people drop. Early hang-ups may point to a long greeting. Mid-flow hang-ups often line up with slow responses or repeated “sorry, I didn’t catch that” loops.
Resolution rate and repeat contact
Resolution rate asks what containment cannot: was the problem actually solved? Measure it by confirming a completed action (an appointment booked, a record updated), by asking the caller, or by checking for repeat contact on the same issue within a few days.
Caller experience
Caller experience covers how the call felt, not just how it ended. Use a short post-call survey, transcript sentiment and effort signals such as how often a caller had to repeat themselves. Surveys reach only some callers, so pair them with transcript measures that cover every call.
The technical signals behind the outcomes
Latency percentiles
Response latency is the gap between the caller finishing a sentence and the agent starting to reply. Research across ten languages found that human replies arrive on average about 200 milliseconds after the other person finishes, with some variation across languages (Stivers et al., PNAS, 2009), so callers notice long pauses fast.
Track latency as percentiles, not averages. A median of 800 ms can look fine while the 95th percentile sits at three seconds, and those slow turns are the ones callers remember. Break the total into speech recognition, end-of-turn detection, model response, tool calls and text-to-speech so you know which part to fix. Network delay counts too.
ASR confidence and no-match rate
Automatic speech recognition (ASR) confidence shows how sure the recognizer was about what it heard. Watch the share of low-confidence turns and the “no-match” rate, where the agent could not map the caller’s words to anything useful. Spikes often trace back to specific intents, noisy lines or data like account numbers.
Barge-in rate
Barge-in rate measures how often callers interrupt the agent mid-sentence. Some interruptions are healthy, but a rising rate can mean responses are too long. Our separate guide on barge-in covers tuning in depth; here, track the rate and watch the trend.
Tool-call success rate
Useful voice agents do things: look up an order, check availability, update a record. Tool-call success rate is the share of those actions that return a valid result in time. Track failures, timeouts and latency per integration. One flaky API can quietly drive a large share of unplanned transfers.
A metrics map: connecting outcomes to signals
The table below links each outcome to the signals most likely to explain a change in it.
Business outcome | What it tells you | Technical signals to check first |
|---|---|---|
Containment (gross and net) | How much work the agent completes without a human | Tool-call success, no-match rate, intent coverage |
Unplanned transfer rate | Where the agent gets stuck | ASR confidence, tool-call failures, repeated clarification turns |
Abandonment rate | Where callers give up | p95 latency, greeting length, barge-in rate |
Resolution and repeat contact | Whether problems were actually solved | Tool-call success, confirmation steps, post-call actions |
Caller experience | How the call felt | Latency percentiles, repeat prompts, sentiment, barge-in rate |
What is a good containment rate?
Everyone asks this, and the answer depends on what the agent handles. A structured task like checking order status can be contained far more often than a billing dispute or cancellation. Published figures also define containment differently, which makes cross-company comparisons unreliable.
Rather than chasing an industry number, set your own baseline:
Segment by intent. Report containment separately for each call reason instead of one blended figure.
Measure the starting point. Before launch, record how those same intents perform today with your current IVR or human agents.
Track net, not just gross. Use repeat contact to adjust containment so it reflects real outcomes.
Set targets per intent. Aim higher for simple, high-volume intents and accept lower containment where a human is often the right answer.
Review after each change. Compare results around every prompt, model or workflow update.
A good containment rate is one that rises over time while resolution and caller experience hold steady or improve.
Warning signs your voice agent is failing
Containment is rising but repeat contact is rising with it.
Abandonment clusters at the same step in the flow.
p95 or p99 latency is climbing, even if the median looks fine.
“Agent” or “representative” requests are increasing.
One tool or integration accounts for a growing share of transfers.
Low ASR confidence concentrates on a specific intent or caller group.
Survey scores and transcript sentiment are moving in opposite directions.
Building the measurement layer
The hardest part of measuring voice AI is usually joining the data. Call events, transcripts, model turns, tool calls and transfer records often live in separate systems. A few habits help:
Give every call a single ID that follows it through recognition, the model, every tool call and any transfer.
Log timestamps for each stage of a turn so you can calculate latency percentiles per component.
Record a structured outcome and transfer reason at the end of every call.
Store intent labels so every KPI can be sliced by call reason.
This is where the platform underneath your agent matters. SignalWire manages call state, media, routing and AI orchestration in one programmable layer, so there are fewer separate vendors to reconcile when you trace a call. Production measurement also works best alongside pre-launch testing.
Start measuring what matters
Strong voice AI programs treat metrics as part of the product. Define your KPIs before launch, connect each outcome to its signals, and review them whenever the agent changes. If you are building or scaling voice agents and want one programmable platform for calls, media and AI orchestration, explore SignalWire by creating a free account, talk to our team about your use case, or join the community on Discord.

What KPIs should I track for a voice AI agent?
Start with five business outcomes: containment (gross and net), transfer rate split into planned and unplanned, abandonment, resolution or repeat contact, and caller experience. Support them with technical signals: latency percentiles, ASR confidence and no-match rate, barge-in rate and tool-call success rate.
What is a good containment rate for an AI phone agent?
There is no single good number because containment varies widely by intent. Simple, structured requests are contained far more often than complex or emotional ones. Measure it per intent, adjust for repeat contact, and set targets from your own baseline.
How do you measure voice AI performance in a contact center?
Tag every call with an intent, outcome and transfer reason, and log timestamps for each stage. Report outcomes by intent, use technical signals to explain changes, and compare results before and after each update.
Which metrics show a voice AI agent is failing?
Watch for rising repeat contact, abandonment clustered at one step, climbing p95 latency, more requests for a human, low ASR confidence on specific intents and a growing share of transfers caused by tool failures.
Is containment the same as resolution?
No. Containment only means the call did not reach a person. Resolution means the problem was solved. A caller who hangs up in frustration counts toward gross containment but not resolution, so track both.
Related Resources






