Why WhatsApp works for support
- Read rate: 98% (vs 25-30% for email)
- Customer already has it installed (~80% of US adults, 95%+ in LATAM)
- Reply in minutes becomes norm, not exception
- Permanent history — customer returns and continues the conversation
- Rich media — images, videos, PDFs without friction
The 3 levels of WhatsApp support
Level 1: WhatsApp Business app (up to ~50 conversations/day)
Good for:- Businesses starting out
- Micro-companies, brick-and-mortar
- 1 agent, 1 phone
- Greeting and away auto-messages
- Labels (Pending, Resolved, etc.)
- Quick replies
- Catalog
Level 2: API + multi-agent dashboard
Good for:- 100-1,000 conversations/day
- 2-10 agents
- CRM integration
Common platforms: Zavu (with native dashboard), Twilio Flex, MessageBird Inbox, ZenDesk with WhatsApp integration.
Level 3: API + automation + AI (any volume)
Good for:- 1,000+ conversations/day
- Need 24/7 support
- Multiple languages
- AI agent for triage and FAQs (resolves ~60-70% without humans)
- Smart routing by question type
- Human handoff when AI can't handle it
- Webhooks for CRM, e-commerce, ERP
How to set up WhatsApp support in 5 steps
1. Decide the level
Practical math: daily volume × average response time.
- Up to 50 conv/day → app
- 50-300 conv/day → API with dashboard
- 300+ → API + AI
2. Get API access
For levels 2 or 3, create free Zavu account, connect your Meta Business Manager and verify the number. All in ~30 minutes.
3. Create greeting and FAQ response templates
Customer expects first reply in < 1 minute. Solutions:
Instant greeting template (responds in seconds)Keyword-based replies (resolves 30-40% without humans)typescriptimport Zavu from "@zavudev/sdk" const zavu = new Zavu({ apiKey: process.env.ZAVU_API_KEY }) // Webhook when receiving message if (event.type === "message.inbound") { await zavu.messages.send({ to: event.message.from, channel: "whatsapp", text: "Hi! 👋 We got your message. An agent will reply within 15 minutes." }) }
typescriptconst text = event.message.text.toLowerCase() const replies = { "trackingrefund": "Returns within 7 days. See: zavu.dev/returns", } for(const [keywords, resp] of Object.entries(replies)) { if (text.match(new RegExp(keywords))) { await zavu.messages.send({ to: event.message.from, channel: "whatsapp", text: resp }) return } } // No match → forward to human
where": "To track your order, go to zavu.dev/tracking with your order ID.", "hours time": "We're open Monday to Friday, 9am to 6pm.", "return
4. Configure routing by type
Customer picks the topic via interactive buttons:
typescriptawait zavu.messages.send({ to: event.message.from, channel: "whatsapp", messageType: "buttons", text: "How can we help?", content: { buttons: [ { id: "sales", title: "Buy" }, { id: "support", title: "Support" }, { id: "billing", title: "Billing" } ] } }) // When customer clicks, route to correct queue if (event.type === "button.reply") { const queue = event.button.id await routeToQueue(event.message.from, queue) }
5. Metrics that matter
Measure:
- Average first response time — target: < 5 min
- Average resolution time — target: < 30 min
- AI-resolved conversations — more = cheaper
- Post-support NPS — target: > 70
- Abandonment rate (customer gave up) — target: < 5%
AI support (that actually works)
Zavu's AI agents use RAG (Retrieval Augmented Generation) — they answer based on your knowledge base, no hallucination:
typescript// 1. Upload knowledge base await zavu.agents.knowledgeBase.add({ agentId: "agent_support", files: ["faq.md", "return-policy.pdf", "manual.txt"] }) // 2. When customer asks, agent searches + answers await zavu.agents.respond({ agentId: "agent_support", message: event.message.text, contactId: event.contact.id })
Typical results:
- 60-70% of questions resolved without humans
- Response in < 3 seconds
- Smooth handoff when AI doesn't know — customer barely notices
- Learns from team corrections
WhatsApp support best practices
Tone
- Treat customer as a person, not a ticket
- Use emojis sparingly (depends on audience age)
- Short sentences, easy to read on mobile
Response time
- Automatic first reply in < 30 seconds
- Human reply in < 5 min during business hours
- Human reply in < 1h outside hours (announce in away message)
Closing
- Always confirm the question was resolved
- Send satisfaction survey at the end
- Label "Resolved" to close the conversation
Privacy
- Don't ask for sensitive data (SSN, password, card) via WhatsApp
- Use links to secure areas of your site
- Delete conversations per GDPR/CCPA (Zavu has configurable retention)
Common mistakes
1. Mixing support and marketing on the same number. Customer who got a promo on the support number gets angry. Use separate numbers.2. Slow first response. Configure automatic reply in < 30s, always.3. Obvious robot. Bad AI annoys. If the answer is "I don't understand, can I help with something else?" repeatedly, transfer to human.4. Not measuring. Without metrics, you don't know if you're good or bad. Start with average response time.5. No clear opt-out. Customer has the right to leave the list. Have "Reply STOP to unsubscribe" always.Comparison: Zavu vs WhatsApp Business app
| App WhatsApp Business | Zavu (API + dashboard) |
|---|
| Cost | Free | From $25/month |
|---|---|---|
| Multiple agents | 1 only | Unlimited |
| Sustainable volume | ~50/day | No limit |
| Metrics | Basic | Complete + real-time |
| CRM integration | Manual | Native |
| AI agent | No | Yes |
| Auto-messages | 2 (greeting + away) | Unlimited |
| Templates | Manual via Business Suite | API + auto-approval |
| Webhook | No | Yes |
Related resources
- How WhatsApp Business works
- WhatsApp Business auto-reply
- WhatsApp Cloud API tutorial
- AI agents for WhatsApp
- Complete documentation