A WhatsApp chatbot conversion audit reviews every step between a customer's first inbound message and a booked or qualified lead, checking where the conversation stops rather than whether the bot replied correctly. Most audits find the losses in response timing and in the 24-hour messaging window.
Here's the position I'll defend: latency and the 24-hour window kill more WhatsApp leads than bad copy does. Copy problems are visible, so somebody fixes them. Window and timing problems stay invisible, because the bot logs a successful send.
the customer service window in which free-form replies are allowed
the free entry point window opened by a click-to-WhatsApp ad
checks in the conversation audit, run against 30 real transcripts
Where do WhatsApp conversations actually die?
WhatsApp conversations usually die at five points: an ignored greeting, the first qualification question, a reply gap long enough for the user to switch apps, a fallback loop the bot cannot exit, and the moment the 24-hour customer service window closes and free-form replies stop being permitted.
Pull thirty real transcripts, not the happy-path ones QA wrote, and mark where each customer went quiet. Dashboards count sends and deliveries, and neither is a conversation.
The failures cluster. Stops after message two are a greeting problem. Stops at a budget question are a sequencing problem. Then the silent ones: sends the customer never received because the window had closed and a template was required.
Why does a generic greeting menu lose people?
A greeting menu loses people when it asks them to restate what they already told you. WhatsApp entry points carry context: click-to-WhatsApp ads attach a referral payload to the first inbound message, and pre-filled wa.me links carry the text the user tapped. A greeting that ignores that restarts the conversation from zero.
Someone taps an ad and WhatsApp opens with a pre-written message. Your webhook receives it with a referral object naming that ad. Then the bot answers: "Choose an option: 1) Products 2) Pricing 3) Support 4) Careers." Option four just told them nobody is reading.
That payload arrives once, on the first inbound message. Persist it or lose the ad attribution on every closed deal. A greeting that works names what they came for, asks one question, and stays under two lines before "Read more" hides it. Good chat interface design matters more here, since you don't control the client.
How do you qualify a lead without running an interrogation?
Qualification works when every question is earned by something the bot just gave. Ask one question per message, infer what the platform already provides (number, language, entry point, local time), and hold budget and timeline until the user has a concrete answer in hand. Multi-field capture belongs in a WhatsApp Flow.
The interrogation pattern is obvious in a transcript. Question, answer, question, answer, question, silence. The customer gave four pieces of personal information and got a promise someone will be in touch. Flip the ratio: give the price band before you ask their budget.
Never ask for something the platform already handed you. A bot asking for a mobile number inside WhatsApp reads as broken. Cap it at three qualifying questions before a human or a booking link, whether you run a fixed tree or the kind of agent I compared in AI chatbot vs AI agent.
What counts as "too slow" on WhatsApp?
On WhatsApp the reference point is a human friend, not a web form. Too slow is any gap that leaves a read receipt sitting without a reply. Workable targets: acknowledge within about two seconds, answer substantively within ten, and never let a backend lookup run silently past that without a typing indicator.
Latency looks fine in isolation, which is why it gets under-engineered. The model answers in 1.4 seconds on a test, then production adds a CRM lookup, a calendar check, and a pricing call, each waiting on the last, and the customer stares at nothing for eleven seconds. Run independent calls in parallel.
Send the typing indicator right after marking the message read, and past a few seconds send an interim message carrying real information ("Checking three slots for Thursday"). Messaging tiers also cap how many unique customers a number reaches in a rolling 24 hours, so when a campaign lands your bot is fast and your leads still wait. That plumbing is most of what agentic AI demands in production.
How do the 24-hour window and template rules break your funnel?
The 24-hour customer service window opens only when the customer sends you a message. Inside it you can send free-form replies. Outside it you can send only message templates that Meta approved in advance, and those are billed by category. A booking, a payment, or a form submission does not open the window.
That catches teams constantly: a demo booked on your site fires a confirmation that fails, because a form submission is not an inbound message.
| Window open (messaged within 24h) | Window closed (24h elapsed, or never messaged) | |
|---|---|---|
| What puts you here | An inbound message. Each new one resets the clock | 24 hours since their last message, or outbound-first contact |
| What you can send | Free-form text, media, buttons, lists, Flows, templates | Pre-approved message templates only |
| Approval needed | None for free-form content | Meta reviews every template before first send |
| What it costs | Not billed as template messages | Billed per message since 1 July 2025. Marketing costs most, utility and authentication carry volume tiers, service messages are free, and rates are set per country in Meta's published rate card |
| How it breaks | An agent replies at hour 26 and the send is rejected | A template is rejected or paused and the flow stops with no user-visible error |
| Getting back in | Already in | Send a template. Their reply opens a fresh 24-hour window |
The paused template is the nastiest bug here because it's silent. Templates carry a quality rating driven by how recipients react, and one collecting blocks can be paused. Your flow keeps calling it, the API keeps refusing, and the first symptom is a sequence that stopped converting three weeks ago.
The window also changes what "follow up tomorrow" means: it costs a template send and some goodwill, since marketing templates are the ones people report. So finish the exchange while the window is open, and write the last message to invite a reply. A question keeps it alive. "Thanks, we'll be in touch" ends it. Click-to-WhatsApp ads and Page CTA buttons open a separate free entry point window, which Meta's pricing documentation puts at 72 hours in which every message type is free, provided you reply inside 24 hours.
How should the bot handle multiple languages and regions?
WhatsApp templates are approved per language, so a Hindi follow-up and its English equivalent are two separate submissions carrying two separate quality ratings. Language detection should read message content, not the country code. One Indian number may produce English, Devanagari, and romanised Hinglish inside a single thread.
Country-code routing is the standard mistake: +91 gets Hindi, +971 gets Arabic, and half your users get a language they don't read. Detect from the first substantive message and allow a one-tap override. Transliteration is where naive detection collapses, since "kitna price hai" is Hindi in Latin script and most detectors call it English.
Track templates as a matrix of name against language against approval status. A flow that works in English but has no approved Hindi variant drops every Hindi-speaking lead at the follow-up step. A template landing at 3 a.m. earns blocks, which feed the sending rating.
What context must travel with the handoff to a human?
A handoff must carry the full transcript, the fields already captured, the entry-point payload from the first inbound message, the detected language, and the time left on the 24-hour window. The window does not reset when a human takes over. Your agent inherits whatever clock the bot left behind.
That inherited clock is the detail most teams miss. The bot spends twenty-two hours in a slow back-and-forth, hands over at 10 p.m., and a rep opens it at 9 the next morning with ninety minutes left. No standard agent inbox shows that. Put remaining window time on the conversation and escalate anything under two hours.
Define the reverse path too, or you get a bot re-asking a qualifying question ten minutes after a rep quoted a price.
Why does "book a call" beat "learn more" in chat?
In chat, every link is an exit. "Book a call" keeps the action inside WhatsApp through an interactive button or a Flow, or moves the user one step to a booking page with the decision already made. "Learn more" hands them a browser tab, ends the conversation, and leaves the 24-hour window running down while they read.
Use the platform's own controls instead. Interactive reply buttons cap at three per message, and list messages carry up to ten rows. Treat that limit as a gift: two clear actions beat seven nobody reads on a phone.
The 12-point conversation audit
Run this against thirty real transcripts and your webhook logs. Anything failing at 4, 5, 8 or 9 is costing you leads today.
- Entry-point context captured. The
referralpayload is persisted and used in the greeting. - The greeting asks one question and fits above the "Read more" fold.
- No question repeats data you hold: phone number, language, ad source.
- First acknowledgement under two seconds, webhook-received to outbound-sent, at p95.
- Substantive replies under ten seconds, with parallel tool calls and a typing indicator.
- Qualification capped at three or four turns; longer capture moves into a Flow.
- Every fallback has an exit to a human after two failed parses.
- Window state tracked per contact, with the last message written to invite a reply.
- Template status monitored. Alerts on rejected, paused, or disabled, in every language.
- Language detected from content, tested against romanised input, overridable in one tap.
- Handoffs carry transcript, fields, entry point, language, and window time.
- The primary CTA is a commitment action, three or fewer options, links pre-filled.
Score it honestly. In most reviews the copy is fine and 4, 8 and 9 are where the leads went.
Ready to audit your own bot?
Most of these are engineering fixes, not copy fixes. If you'd rather someone else ran it, Shanti Infosoft does this as part of AI chatbot development, backed by a CMMI Level 5 process and 80+ engineers, with a 7-day free trial.
Book a 30-minute conversation audit call
Frequently Asked Questions
Does a booking or form submission open the 24-hour window?
No. Only an inbound WhatsApp message opens it. A form fill, payment, or booking on your site does not, so any follow-up has to be an approved template.
What happens if I send a free-form message after 24 hours?
The API rejects it. You get an error, not a delivered message, and if you aren't surfacing those errors it looks identical to a customer who stopped replying.
Why did my template stop working with no change on my side?
Most likely it was rejected on resubmission or paused for quality. A paused template can't send, and the rating behind it comes from blocks and reports.
Which template category should a follow-up use?
Match the category to the content, not the price. Utility covers transactional follow-ups tied to something the customer did; marketing covers promotion and costs the most.
How fast is fast enough for a WhatsApp bot?
Fast enough that the reply arrives while the chat is still open. Acknowledge in about two seconds, answer within ten. Instrument your own p95 and watch reply rates as it moves; that curve is specific to your audience and worth more than a borrowed benchmark.
Can an AI bot handle the whole conversation without a human?
It handles qualification, answering, and booking. Humans still matter for price negotiation and complaints. The real question is when to escalate.
Have a project in mind? Let's scope it together.
You get a named team, written estimates, full code and IP ownership, and 48-hour response times. CMMI Level 5 certified. 700+ projects delivered across the UK, US, UAE, and Australia.