Voicemail detection in AI calls: what should happen when nobody picks up
When an AI call reaches voicemail, the system should detect the beep pattern, either leave a short pre-approved message or hang up silently depending on the use case, log the outcome as 'voicemail' (not 'no answer'), and trigger a WhatsApp follow-up. Retries should wait a few hours, not minutes, to avoid repeat voicemail hits.
- Treat 'voicemail' as a distinct call outcome from 'no answer' and 'busy' — each needs a different next step.
- Decide upfront whether your use case should leave a voice message or just log and move to WhatsApp.
- Space retries by hours, not minutes, so you are not leaving three voicemails in ten minutes.
- Always pair a missed voice attempt with a WhatsApp message — it is asynchronous and does not need anyone to be free.
- Review your call logs weekly to see what share of calls end in voicemail; that number tells you if your calling hours need adjusting.
Why voicemail handling matters more than it seems
An outbound AI calling campaign that ignores voicemail wastes minutes and annoys people. If the bot stays silent for ten seconds waiting for a live human, then hangs up mid-beep, the recipient sees a missed call from an unknown number and nothing else. If it barges into a voicemail box reading a script meant for a live conversation, the message sounds robotic and confusing.
Getting this right is not about clever AI, it is about basic call-flow design. You need three things: a way to detect that you have reached a machine rather than a person, a clear decision on what to do next, and a log that tells you which outcome happened so you are not blind to it later.
How answering machine detection actually works
Telephony platforms such as Exotel, Plivo and Twilio offer answering machine detection (AMD) as a feature on outbound calls. It listens to the first few seconds of audio after the call connects and classifies it as a human greeting, a machine greeting, a beep, or silence, using signal patterns like greeting length and pauses. It is a heuristic, not a certainty, a very short human 'Hello?' can occasionally be misread, and a long personal voicemail greeting can occasionally be misread as a live answer.
Because of that, design your flow to be forgiving. If the detection is unsure, the safest default is to treat it as a human and let your AI agent start speaking naturally, most people will interrupt with 'hello, who is this?' within a second or two if it is genuinely them, and your agent should be built to respond to that interruption immediately rather than talking over it.
Most AMD systems also add a small delay, typically one to three seconds, while gathering enough audio to classify the call. Plan for that gap in your script instead of starting the main message the instant the call connects.
Deciding: leave a message, or just log and fall back
This is a business decision, not a technical one. Two common patterns:
- Leave a short message. Useful for appointment reminders or delivery updates where a one-way message is genuinely useful, 'This is a reminder about your appointment tomorrow at 4 PM. Reply on WhatsApp to reschedule.' Keep it under 15 seconds and end with a WhatsApp instruction, since a voicemail box cannot let the customer reply.
- Hang up silently and log it. Better for sales or qualification calls where a voicemail message rarely helps and can feel intrusive. Instead, log the outcome and let a WhatsApp message carry the conversation forward.
Payment reminders sit in between: a brief, neutral message is usually fine, but it should never state a specific amount, since you cannot be sure who is listening to that voicemail box. Whichever pattern you choose, be consistent within a campaign so your reporting stays meaningful.
Retry windows that do not annoy people
A common mistake is retrying a failed call within minutes, three times in a row. If the first attempt reached voicemail, the person was unavailable at that moment, trying again five minutes later usually reaches the same voicemail. Space retries by a few hours, and cap the total attempts per day and per campaign. Respect calling-hour rules and any Do Not Disturb preference the contact has recorded.
| Call type | Suggested retry gap | Max attempts/day |
|---|---|---|
| Delivery or appointment update | 3-4 hours | 2 |
| Payment reminder | Same day next slot, or next day | 1 |
| Sales or lead follow-up | 4-6 hours | 2-3 |
Build the retry logic as a separate step from the first call, so a 'voicemail' outcome routes to a wait period before the next attempt, while a 'no answer' (ringing out, unanswered) can be retried a little sooner since the person may simply not have been near the phone.
What to say, and never say, in a voicemail message
A voicemail message is one-way and often replayed later, sometimes in front of other people, so keep it short and safe by design.
- State the business name once, near the start, so the listener knows immediately who called.
- Give exactly one action: reply on WhatsApp, or call back on a specific number, not both, one clear next step is easier to act on than two.
- Never state a specific rupee amount owed, an OTP, or any account or order detail that could identify the customer to someone else listening to the same phone.
- Keep it under 15 seconds. A longer message often gets cut off by the voicemail system's own recording limit anyway.
- Avoid a tone that sounds urgent or threatening, a calm, matter-of-fact voice reads as more trustworthy on a recording than it does live, where a human ear naturally forgives more.
Setting this up on Convo360
On Convo360, an outbound calling flow starts with a voice trigger and uses the Wait / Delay block (minutes to days, persisted on the server) between retry attempts, combined with a Condition block that branches on the call outcome. A typical structure:
- Voice agent places the outbound call and gathers or plays the script.
- Condition block checks the outcome: answered, voicemail, no answer, busy.
- On voicemail, either a short Play Audio block runs, or the flow skips straight to Send Template on WhatsApp.
- Wait block pauses a few hours before Go To routes back to a retry, up to your attempt cap.
- Every outcome is written to Flow Logs with per-step notes, so your team can see exactly how many calls in a campaign ended in voicemail versus a live conversation.
For reporting across a whole campaign, add a Google Sheets step that appends a row per call outcome, or a Save CRM lead step tagging contacts who need a manual callback, so a voicemail result never just disappears into a call log nobody opens. Because Convo360 is BYOK, you connect your own telephony account (Exotel, Plivo, Twilio or your own SIP trunk) and pay that provider directly for outbound minutes, the platform adds no per-minute markup. See the pricing plans for what unlocks voice calling.
Reading your voicemail rate
Once a campaign has run for a few days, look at the split between answered, voicemail, no answer and busy in your logs. A high voicemail share often means your calling window does not match when your contacts are actually free, try shifting the window and comparing the two periods using your own numbers rather than assuming a fixed target.
Step by step
- Turn on answering machine detectionEnable AMD on your telephony account (Exotel, Plivo, Twilio or your SIP trunk) so each outbound call is classified as answered, voicemail, no answer or busy.
- Branch the flow on call outcomeAdd a Condition block right after the call connects to route voicemail, no answer and busy down separate paths.
- Decide message or silent log per use caseFor reminders, play a short pre-approved message; for sales or qualification calls, skip the message and log the outcome instead.
- Trigger a WhatsApp fallbackOn a voicemail or no-answer outcome, send a WhatsApp template so the contact can respond whenever convenient.
- Add a Wait block before retryingSpace retries by a few hours using Wait / Delay, and cap attempts per day so contacts are not called repeatedly in a short window.
- Log every outcomeWrite each result to Flow Logs, Google Sheets or Save CRM lead so voicemail rates are visible without replaying calls.
Example conversation
Set up your first AI calling flow
Start free in minutes — no code, no credit card. Bring your own AI keys and pay no per-message markup.
Frequently asked questions
Can AI calling always tell a voicemail from a real person?
No, answering machine detection is a heuristic based on greeting patterns, not a certainty. It works well most of the time but can occasionally misclassify a very short human greeting. Good flow design lets the agent respond naturally if someone interrupts a message.
Should every AI call leave a voicemail message?
Not necessarily. One-way updates like appointment reminders often work well as a short voicemail. Sales or qualification calls are usually better logged and followed up on WhatsApp, since a voicemail cannot capture a reply.
How many times should an AI calling campaign retry a number?
There is no universal number — decide based on your use case and calling-hour rules, and track results in your own logs. Two to three attempts per day, spaced hours apart, is a common starting point to test and adjust.
Does voicemail detection cost extra?
It is typically a feature of the telephony provider's outbound calling API rather than a separate product. Since Convo360 is BYOK, you pay your telephony provider (Exotel, Plivo, Twilio or your SIP trunk) directly at their rates for the call itself.
What should happen after a call ends in voicemail?
Log the outcome distinctly, wait a sensible interval, and trigger a WhatsApp message so the contact can respond whenever convenient. This keeps the conversation alive without depending on a second phone call.
Related reading
Available across India — see WhatsApp & AI calling automation by state and city.