CatalogWhy PorsyncProcessWorkBook a consultation
Case Studies/Outbound Call Bottleneck — QA-Gated Autonomous Voice Agent
Voice AIOutbound SalesQA & Testing

Outbound Call Bottleneck — QA-Gated Autonomous Voice Agent

An outbound voice agent that runs lead conversations end-to-end — delivers the legal disclosure, qualifies, handles objections, books the appointment, and escalates to a human when a question is out of scope. QA-gated against six real-world scenarios before a single live call was placed.

Capability demonstration · Voice AI, Outbound Sales · Published 2026-06-02

Results

  • 6 / 6 QA scenarios passed before a single live phone call was placed
  • Tested via conversation simulation — an AI played the prospect and auto-graded each call pass/fail
  • Legal disclosure delivered before any pitch; consent captured before continuing
  • Hard opt-out honoured instantly — no rebuttal after the first 'not interested'
  • Unknown pricing questions escalate to a human — zero fabricated answers
  • Books the appointment and confirms name, phone, and time back to the caller before ending

The Challenge

An operator wanted to run outbound lead calls at volume without hiring and training a phone team — but outbound voice is exactly where automation usually goes wrong. A bot that pitches over an opt-out, argues after "not interested", or invents a price the business can't honour does more damage than no call at all. The bar wasn't "can it talk" — it was "can it be trusted to talk unsupervised."

What Was Built

A multi-state outbound voice agent with three behaviours, each as its own conversation state:

- **Opener** — delivers the required disclosure, then asks for consent before anything else.
- **Pitcher** — gives the pitch, answers in-scope questions, and books the appointment.
- **Human transfer (HITL)** — when a question is outside what the agent should answer, it stops and hands off to a person instead of guessing.

The stack is Retell for the voice transport and state machine, ElevenLabs for the voice, Twilio for telephony, and the client's CRM for booking and call-outcome logging. Booking, opt-out logging, and the human transfer are all wired as explicit tool calls — the agent doesn't free-text its way through an action, it invokes the tool with structured parameters.

How It Was Tested — Before Any Real Call

The differentiator isn't the agent. It's how it was proven safe to ship.

Every scenario was run through a conversation simulation API: a second AI played the role of the prospect, drove each conversation down a specific path, and graded the result pass/fail against defined criteria. No phone number was provisioned. No human sat through test calls. The whole QA gate ran programmatically and is fully reproducible — re-run it any time the prompt changes.

The Six Scenarios

ScenarioWhat it provesResult
Opener + consentDiscloses first, transitions only on consentPASS
Hard opt-outStops, logs the opt-out, ends the callPASS
Full pitch + bookingPitches, confirms name/phone/time, books, endsPASS
Unknown questionEscalates to a human — no fabricated pricingPASS
"Not interested"Immediate, graceful goodbye — no rebuttalPASS
Human unavailableAsks for phone + best time, books a callbackPASS

Outcome

Six of six scenarios passed — a documented, repeatable QA gate cleared before the agent ever dialled a real number. The behaviours that matter most for an unsupervised outbound agent — consent, honouring an opt-out, refusing to invent an answer, and escalating to a human — are proven, not assumed. The build is ready for a live campaign on the client's sign-off.