Skip to content
Testing

Why a passing transcript is not a passing call

The transcript says the booking was confirmed. The caller heard three seconds of silence and hung up before the confirmation arrived. Your assertion passed. The call did not.

Nora Halvorsen, Co-founder and CEO · July 14, 2026 · 8 min read

A common pattern in voice agent testing goes like this: you write an assertion that checks the transcript for a phrase, run a batch of calls, watch the pass rate tick up, and ship. The phrase appeared in the transcript, so the test passed. The problem is that a transcript is a record of what was said, not a record of what the caller experienced. Those two things are not the same, and the gap between them is where real-world failures live.

Consider a booking confirmation scenario. Your agent says the confirmation line correctly. The transcript captures it. But the agent said it 2.4 seconds after the caller finished speaking, during which a silence grew long enough that a real caller would have pressed zero to reach a human. The words were right. The timing was wrong. The transcript does not know the difference.

What transcripts can and cannot tell you

A transcript is excellent at recording lexical accuracy. It tells you what words were produced, whether they were spelled correctly by the speech-to-text engine, and whether the right phrase appeared at some point in the conversation. This is genuinely useful, and it is the right place to start. It is not the right place to stop.

What a transcript cannot tell you on its own is whether the agent interrupted the caller mid-sentence, whether the response arrived before or after the caller got impatient, whether the tone of a sorry-to-hear-that was flat enough to register as dismissive, or whether a silence lasted 800 milliseconds or three seconds. All of those are things a real caller notices immediately, and none of them are visible in the text alone.

  • Latency is invisible in a transcript. The gap between caller utterance and agent response is not recorded in the text. An agent can produce the right words at a response latency that would cause any real caller to assume the call dropped.
  • Barge-in is invisible in a transcript. If your agent speaks over the caller, the transcript often shows both utterances as though they happened in sequence. In reality, the caller stopped speaking because they were interrupted, and they are now annoyed.
  • Tone falls through the transcript. A transcript records words, not prosody. An agent that delivers a refusal in a flat, rapid monotone will pass every lexical assertion but will generate a caller experience that scores poorly on human review.
  • Silence before the first word matters. If an agent waits too long to acknowledge the caller's opening utterance, the caller assumes the system did not hear them. This delay does not appear in the transcript at all.

The scenario where this breaks things quietly

The most dangerous version of this problem is the one where your transcript-based tests pass cleanly but your production calls generate complaints. You have 97 percent pass rate on your test suite, and your human-review queue is filling with escalations. The tests passed because they were testing the wrong thing.

This happens most often in three places. First, latency regressions. You upgrade your speech synthesis provider and the response latency increases by 600 milliseconds. Every call still produces the right words, every transcript-based assertion still passes, and the caller experience has noticeably degraded. Second, barge-in changes. A new turn-detection threshold causes your agent to start responding before the caller has finished speaking. Third, tone regressions after a voice or model update. The content is identical, but the delivery has changed in a way that callers respond to negatively.

The transcript is the record of what was said. The call is the record of what happened. They are related but they are not the same.Nora Halvorsen

Testing what the caller actually experienced

Closing this gap means testing at the level of the call, not only at the level of the transcript. A call-level test captures turn latency for every exchange, detects simultaneous speech and classifies who started speaking first, scores pauses relative to expected response windows, and flags audio-quality drops that make speech harder to process. It then maps all of that back onto the transcript so you can see the words in context.

This is what task-success scoring is for. Instead of asking whether the right words appeared, task-success scoring asks whether the caller's goal was achieved, whether the agent navigated the conversation in a way that would satisfy a real person, and whether the quality signals that predict abandonment or escalation stayed within bounds. You still use the transcript, but the transcript is one input into a richer judgment, not the only input.

A practical starting point

Start with your most common failure modes in production. If your complaints are mostly about the agent talking over callers, add barge-in detection to your test suite. If they are about callers hanging up before they get an answer, add latency thresholds at the per-turn level. If they are about tone, add a scored review for prosody and pacing on a representative sample of each call batch.

The goal is not to replace transcript-based assertions. Those are fast, cheap, and good at catching regressions in content and coverage. The goal is to run them alongside the measurements that the transcript cannot capture, so that a passing test suite actually means the call worked, not just that the words were right.

Written by Nora Halvorsen, Co-founder and CEO

All posts

Every voice, tested.

Connect one agent and run your first suite of simulated calls in a minute, free.