Last week, our voice AI took a call and refused to answer the customer's question. It said it wasn't certain, collected what it needed, and passed the case to a human.
That wasn't a bug, and it wasn't a fallback. It's one of the most expensive things we've built, and it's the feature we'd defend first.
The number nobody puts on the slide
Every AI vendor in customer service leads with the same metric: an automation rate. Fifty percent. Sixty. Seventy, if the deck is ambitious.
Those figures are usually honest enough. The problem isn't the number itself — it's the number missing next to it.
Ask a second question and the room usually goes quiet. Of the conversations it handled on its own, how many ended with an answer that was wrong?
That number is missing for two reasons. It's genuinely hard to measure — you can't compute it, someone has to read transcripts. And it's unflattering. There's no incentive to produce a figure that makes your headline number look worse.
But it's the number that decides whether the deployment survives its first quarter.
Two failures, two very different prices
An AI handling support calls can fail in two directions, and they are not remotely equivalent.
It can hand off when it shouldn't have to. A question it could have answered goes to a human. The cost is two minutes of an agent's time and a small amount of customer friction. It's an operating cost, and it shows up honestly in your reporting.
Or it can answer confidently and be wrong. "Yes, that's covered under our return policy." "Your order shipped yesterday." The customer acts on it. Your team finds out a week later, from a complaint, a chargeback, or a review.
The first failure is a line item. The second is a liability — and it's invisible, because the caller hangs up satisfied.
Nothing in the dashboard flags it. In most systems, that call is counted as a success. Any platform that optimizes for a single automation number is, by construction, treating these two outcomes as the same thing.
You cannot fix this with a prompt
The intuitive fix is to tell the model to behave: if you're not sure, say you don't know. Everybody tries it. It works beautifully in testing and quietly erodes in production.
A language model is built to produce the most plausible-sounding continuation of a conversation. "I'm not sure" is almost never the most plausible-sounding thing to say next. Written instructions are strong suggestions competing against everything else in a long, messy, real conversation — and they lose the moment a customer phrases their question with enough confidence to pull the model along.
So we hold to one rule internally: if a behaviour matters, it lives in the code, not in the instructions. The written brief shapes tone and personality. Deterministic checks — outside the model, which the model cannot talk its way past — enforce the boundaries.
It's the difference between asking a driver to respect the speed limit and fitting the vehicle with a limiter.
What "sure enough" actually means
When a customer asks something, the platform matches the question against a knowledge base your team approves and controls. That match produces a confidence score. Two rules then decide whether the AI is allowed to open its mouth.
The second rule is the one that does the quiet work, and it's the one most systems skip. A score that clears the bar by a hair over another score that also clears it isn't confidence — it's a coin flip wearing a number.
Neither of those thresholds was chosen by intuition. We set them by replaying thousands of real customer questions through the system at different settings and reading the outcomes by hand. Shifting the margin by a few hundredths changed the quality of what got answered in ways you can see call by call. Restraint is a tuned parameter, not a philosophy.
Declining is not the same as giving up
This is where most "safe" AI gets it wrong. A refusal that ends in "I'm sorry, I can't help with that" is just a slower version of a bad answer. The customer still leaves with nothing.
When our platform declines, the call doesn't end. It stays on the line, gathers what the consumer service team will need — the order, the contact details, what actually went wrong — opens a ticket with the full context and transcript attached, and tells the customer exactly what happens next and when.
The caller leaves with a next step instead of an apology. The team opens a case that's already complete instead of a voicemail.
And every declined question is logged. Those logs are the most valuable thing the system produces: they are a ranked list of what your knowledge base is missing, written by your actual customers. Fill the gap, and the same question is answerable the next time it's asked. The refusals become the roadmap.
The trade-off we accept
Let's be straightforward about the cost. A system built this way automates fewer conversations on paper than one that answers everything put to it. If you're comparing vendors on a single percentage, we will not always win that slide.
We think it's the correct trade, for a reason that has nothing to do with ethics and everything to do with operations: trust is the real constraint on how far you can deploy AI, not capability. A team that has been burned once by a confidently wrong answer will put a human in front of everything, and your automation rate goes to zero regardless of what the model could have handled. A team that has watched the system decline honestly for three months starts handing it more.
The restrained system ends up automating more, later. It just doesn't get to claim it in month one.
Four questions worth asking any vendor
The easy part and the hard part
An AI that answers every question is easy to build. You can demo one in an afternoon, and it will be impressive for about twenty minutes.
An AI that knows the edge of what it knows, and behaves well when it reaches that edge, takes considerably longer. That part isn't a safety feature bolted onto the product.
It is the product.
Unicall.ai handles inbound customer calls for e-commerce teams — order status, returns, product questions — and hands over to your people, with full context, the moment it should.
