What broke when callers asked to speak to a human
Kainat, founder — Vox Front AI · August 26, 2026
Getting a caller to an actual person should be simple: they ask, the AI says "let me connect you," and it just works. Testing it on our own phone number taught us that it isn't automatic. We tried it five times in one afternoon and it failed every time. Here's what was actually wrong, how we fixed it, and the gap it left behind — which we closed in a follow-up post.
At a glance
- We tried to connect a caller to a real person 5 times in one afternoon — it failed all 5 times
- The same error happened every single time
- We found the real cause: a setting our phone system couldn't support
- One small change fixed it
- A failed transfer used to end in just an apology — we've since closed that gap too (see the update below)
Why we built this
Not every caller wants to talk to an AI. Sometimes someone is frustrated, or needs help with something our virtual receptionist genuinely can't do. In those moments, the right move is to hand the call to a real person instead of trying to force it through the wrong tool. So that's what we built: when a caller asks for a human, the agent says it's connecting them, and passes the call to a staff member — with a quick heads-up about who's calling and why.
What we expected to happen
The bar here is simple: if someone asks for a person, they should get one. Not most of the time — every time. Before we trusted that with real customers, we tested it on ourselves.
We called our own live phone number five times in one afternoon and asked for a human, the same way, every time. These were our own test calls, not real customers.
What actually happened
It failed every single time. Here's the first attempt, word for word:
Caller: "Hi, can you transfer my call to a real human?"
Agent: "I'm connecting you to a staff member... now." [the handoff fails]
Agent: "Sorry, I couldn't transfer your call. I can still help you with booking or questions. What do you need?"
Same result, five times in a row, over about twenty minutes:
- 1:08 PM — call failed
- 1:11 PM — call failed, caller sounded frustrated
- 1:13 PM — call failed
- 1:16 PM — call failed (this one ran 2 minutes 31 seconds — the clearest example of the bug)
- 1:30 PM — call failed, caller sounded frustrated
Behind the scenes, the system gave us the exact same error message every time: Transfer call cannot be completed, probably don't have the permission to perform the transfer.
What we found — and fixed
It came down to one setting. There's a switch that controls whose phone number shows up as the caller ID once a call is handed off — normally you'd want it to show the original caller's number, not ours. But our phone number doesn't run on our call platform's own phone system; it's our own number, connected through a separate phone carrier. That setup can't do the trick this switch was asking for. Instead of just skipping the trick and completing the transfer anyway, the whole transfer failed.
There's a second, related case: when a caller's own number comes through as "Restricted" (hidden), there's no number to show at all — so the same setting breaks the transfer for a different reason entirely.
The fix was one line: turn that switch off, so the call shows our own number instead of trying — and failing — to show the caller's. We made the change the same afternoon we found the bug.
Five failures before the fix. The very next test call after the fix went through clean. That's not proof it'll never fail again, but it's a clear before-and-after on the one thing we changed.
Where things stand now
Fixing that setting solved the failed-transfer problem. It didn't solve a different problem sitting right behind it: what should happen when a transfer fails anyway, for any reason. On every one of those five calls, the agent just apologized and asked what else it could help with. Nobody's name or number got taken. Nothing stopped the caller from simply hanging up.
That's not a small gap. The same thing happened on a call that had nothing to do with pricing:
Caller: [reporting a tree leaning toward their house, asking for urgent same-day help]
Agent: [tries to connect them, it fails] "I'm sorry, the transfer did not go through. I can keep trying to book your appointment or take a message for a callback. What would you prefer?"
Caller: "Okay, thank you." [call ends — no callback details taken]
The agent offered — but nobody followed up when the caller didn't hand over their number unprompted. We already have a way to save a caller's details the moment a call connects. Nothing in the agent's instructions told it to actually use that the moment a transfer failed. So it didn't.
That's the next fix, and we're saying so before it's done: get a name and a callback number automatically when a transfer fails, instead of leaving it as an offer the caller has to accept on their own. We'd rather publish this half-finished than pretend it's already handled.
Update: this is now fixed
We closed this gap. The agent now asks for a name and a callback number the moment a transfer fails, instead of leaving it as an offer the caller has to accept on their own. The full story — what we changed, and what we still hadn't verified when we shipped it — is in the follow-up: What Happens Now When a Transfer Fails.
What this taught us
- Whether a transfer works depends on how your phone system is set up, not just what the AI says or does.
- A failed handoff needs its own backup plan — an apology by itself isn't one.
- That backup plan should ask for a callback number right away, not wait for the caller to offer it.
If you want to hear what handing off a call to a real person actually sounds like on our line today: book a demo and ask for a human.
Book a demoAbout the author
Kainat is the founder of Vox Front AI and configures and tests every deployment herself. Every transcript in this post is from her own test calls — not a vendor demo reel, not a curated highlight.