Key takeaways
- We put AI on our phone lines. Five agents, one job each, and no working hours set, so they answer around the clock.
- A week of call logs showed 11 real inbound calls and every single prospect hung up inside about twelve seconds. Zero words spoken.
- The prompts were fine. The greeting was wrong. Prospects were hitting redial on our outbound caller ID and landing on a line that opened with billing and accounts.
- The fix was routing, not writing: that line became a switchboard that keeps clients and hands everyone else to the front desk.
- Judge a voice agent on the hardest line in its script, never on the greeting. Every voice sounds fine saying hello.
A missed call is the most expensive thing a local business does all day. Somebody wanted you enough to dial. They will not dial twice.
So in early August we stopped talking about it and put AI on the lines. Not one assistant trying to be everything. Five of them, each with one job.
What we actually set up
There is a billing and accounts line for existing clients. A front desk that qualifies new leads and books them. A line for the shop that answers product questions. A client care agent that calls existing clients before they go quiet. And the same front desk personality bound to the website chat widget, where there is no caller ID, so she has to ask for the number herself.
None of them have working hours set. That was deliberate. A local business losing calls at 7pm does not need an AI that also clocks out at five.
The whole thing lives in text files in our repo. Change the prompt, run a sync script, done. Nothing gets pasted into a settings screen by hand, which means every change is versioned and every agent can be rebuilt from scratch. That mattered more than I expected, for a reason I will get to.
Then we read a week of call logs
Eleven real inbound calls. Not test calls, real ones. Every prospect on that list hung up within roughly twelve seconds of the line picking up. Not one of them said a word.
My first instinct was that the voice sounded fake, or the agent was too slow, or people just hate talking to robots. All three were wrong.
Here is what was actually happening. The number we dial out from is the same number that answers billing. So a prospect gets a missed call from us, hits redial like a normal person, and hears a greeting about billing and accounts. They assume they got the wrong company and they are gone before the sentence finishes.
The prompt was well written. The voice was fine. The door had the wrong sign on it.
The fix was a routing decision
That line is a switchboard now. It opens neutral, figures out whether it is talking to a client or a stranger, keeps the clients, and warm transfers everybody else to the front desk that actually qualifies and books.
The lesson I keep coming back to: a greeting is not branding copy. It is a routing decision that happens to be spoken out loud. We wrote ours as branding and it cost us eleven conversations.
Two small settings that mattered more than the script
The idle reminder was set to four seconds. That is how long the agent waits before nudging a caller who has gone quiet. Four seconds sounds patient until you hear it. It interrupts people mid thought, which is the most robotic thing a voice agent can possibly do. We moved it to eight and the calls stopped feeling like an interrogation.
The other one is smaller and weirder. Everything the agents speak is written with contractions. Text to speech says exactly what you give it, so "I am not going to guess at that" comes out sounding like somebody reading a legal document, while "I'm not gonna guess at that" sounds like a person. The instructions around the spoken lines stay uncontracted, because those are rules and rules read better in full.
What they cannot do, on purpose
The billing agent cannot see an invoice or a balance, so she is written to never say a number. She takes the question and gets a human on it. The shop agent cannot see orders, so she never confirms a ship date or tracking. And none of them will take a card number, an expiry, or a bank detail, no matter how insistent the caller gets.
Those are not bugs we are working around quietly. They are written into the prompts as hard refusals, because the failure mode of an AI confidently inventing your balance is a lot worse than the failure mode of an AI saying it will get someone to check.
Why this matters if you run a business here
Most of the marketing automation San Jose businesses ask me about starts with lead generation. Almost nobody starts with the phone, and the phone is where the leak already is. You do not need more leads if the ones you have are hanging up in twelve seconds.
You can test your own version of this today without buying anything:
- Call your own main number from a phone that is not in your system. Time how long it takes before you know you are in the right place.
- Check what number your outbound calls and texts show up as. If it is not the number that answers well, that is your leak.
- Pull your call log for one week and count how many calls ended under fifteen seconds. That is your real bounce rate and almost nobody looks at it.
- Write your greeting as a routing question, not a slogan. Who is this and where do they need to go.
- Whatever answers the phone, human or AI, decide in advance what it is not allowed to say. Balances, ship dates, and prices it cannot see are the usual three.
An AI receptionist is not magic and it is not a replacement for a good team. It is a way to make sure the call that already happened does not die on the doorstep.
If you want the phones handled like this, or you want to see the rest of the system that sits behind them, that is the work we do. Come take a look at optechsol.llc.