This is the deep-dive write-up of one of our most-cited Cape Town deployments: a 4-dentist Sea Point practice that recovered 18 hours of receptionist time per week and roughly R12,400/week of revenue in the first 7 days after going live with our R10,000/month Growth tier. Anonymised with the client's permission. Names and specific identifying details are withheld; everything else is unchanged.
If you are evaluating AI receptionist for South African medical practices for your own clinic, this is the closest thing to a step-by-step transparency report we publish.
The clinic's problem (before)
The practice setup: 4 dentists, 1 dental hygienist, 1 receptionist, located in Sea Point. Average 130-160 inbound calls per week, peaking 08:00-10:00 weekdays and Mondays after weekends. Used Healthbridge for practice management and a single Telkom landline.
Three specific pain points the owner described in our discovery call:
1. The Friday-Monday gap. The receptionist left at 16:00 Friday. Calls between 16:00 Friday and 09:00 Monday went to voicemail. Voicemail patients almost never called back — they booked the next clinic on Google.
2. Peak-hour overflow. Between 08:00 and 10:00 weekdays, calls overflowed beyond the receptionist's capacity. Patients who tried 2-3 times and got busy signals booked elsewhere.
3. Same-day appointment juggling. The receptionist spent 8-10 hours/week reshuffling appointments — slot fell through, fit a walk-in, doctor running late, patient cancellation. That time was unavailable for in-person patient care.
Loadshedding compounded all three. Stage 4-6 took out reception completely until the office router and laptop battery died.
What we built
R10,000/month Growth tier. Three connected systems, all cloud-hosted, all POPIA-compliant from day 1.
System 1: AI virtual receptionist (Twilio + Railway + Supabase). A Twilio number was provisioned and the existing landline forwarded to it after 4 rings (so the human picked up first if available). The Twilio voice webhook hit a Railway-hosted agent (Node.js + LLM) that ran the conversation: greeting, qualifying questions, calendar lookup, slot booking, WhatsApp confirmation trigger. All call data wrote to Supabase eu-west-1 for POPIA. The agent handled the 12 most common patient queries (booking, rebooking, address, hours, accepted medical aids, insurance pre-auth, prescription refill, urgency triage) with branching logic.
System 2: WhatsApp confirmation flow (WhatsApp Business API + n8n cloud). Every booking made via the AI receptionist triggered an automatic WhatsApp message to the patient with date, time, address (with map link), and a 24-hour reminder pre-appointment. Patients could reply with “CANCEL” or “RESCHEDULE” and the bot handled it.
System 3: Daily Telegram reporting agent (Vercel cron + Supabase + Telegram). Every morning at 07:00 SAST, a cron job queried Supabase, generated a 200-word summary of the previous 24 hours (call volume, booking rate, any patients flagged for human follow-up, anomalies), and sent it to the practice owner's Telegram. The owner read the daily report on his phone before opening the office.
Implementation timeline
The 8-day rollout, day by day:
- Day 1 (Monday): Twilio account provisioned. Call-forwarding instructions sent to Telkom — 90-minute setup on the carrier side.
- Day 2 (Tuesday): Forwarding active. Test calls confirmed routing.
- Day 3 (Wednesday): Healthbridge integration. Read access to appointment slots, write access to bookings. 3 hours of API testing.
- Day 4 (Thursday): WhatsApp Business API verified with Meta (this can take 24-48 hours; we started the verification on day 1 so it was ready by day 4).
- Day 5 (Friday): Voice training session — recorded the 12 most common call types with the receptionist, fed transcripts and patterns to the AI prompt.
- Day 6-7 (Saturday-Sunday): Parallel run weekend. Every call hit both the AI and the receptionist's mobile (forwarded). The AI was making decisions; the receptionist verified accuracy on Monday morning.
- Day 8 (Monday): Full go-live. Forwarding kicks in after 4 rings — the receptionist still picked up first during her hours, the AI took the rest.
Week 1 results
- 24 calls captured outside reception hours that would previously have gone to voicemail
- 19 of those 24 booked appointments directly through the AI
- Of the 5 unbooked: 2 were prescription refill requests (handled separately by the practice manager), 2 were urgent dental pain (the AI escalated to the owner via Telegram for same-day fit-in), 1 was a wrong number
- Receptionist time freed: 18 hours over the week (peak-hour overflow + appointment juggling)
- Captured revenue: R12,400 in week 1 alone (19 bookings × R650 avg consultation)
- Patient feedback: 0 complaints about the AI; 3 positive comments (“quick to book,” “answered after hours,” “sounded professional”)
The owner texted us on Friday week 1 with the line we have used in every subsequent client pitch: “18 hours back this week. First Friday I haven't worked late since 2022.”
Month 1 results
Compounding effects emerged in weeks 2-4:
- 96 calls captured outside hours across the month
- 74 booked appointments from those captured calls
- R48,100 of recovered revenue for the month
- No-show rate dropped from 14% to 8% — WhatsApp confirmations made the difference
- Receptionist morale improved — she stopped staying late on Fridays. The owner said unprompted that this changed the team culture more than the financial impact.
What it cost
- R10,000/month Growth tier retainer (see transparent pricing breakdown for AI automation in South Africa)
- R600/month Twilio voice minutes (1,500 included; clinic used ~2,100)
- R400/month WhatsApp Business API conversations (Meta pass-through)
- Total: R11,000/month
Against R48,100/month of recovered revenue alone (excluding the value of the 18 hours/week of receptionist time freed and the no-show reduction), this is a 4.4x first-month ROI. By month 3 with compounding, the measured ROI was 4.6x.
What the clinic owner said (90-day check-in)
From our 90-day review call, lightly edited for the publication:
“Honestly the biggest change is not the money — it's that I have my Fridays back. We measured the captured calls and the recovered revenue, and yes, R48K a month is real. But the thing that changed is I trust the system. I look at the Telegram report at 7am, see what came in overnight, and I know nothing important got missed.”
“The receptionist was nervous at first. She thought we were replacing her. We weren't. She now spends her time with patients in the chair-side area, helping with insurance forms, doing recall calls — work I always wanted her to do. The AI does the part she hated.”
What we recommend if you are a Cape Town clinic considering this
Three things we tell every clinic owner in their discovery call:
- Start with one automation, not three. The R5,000/month Starter tier with just the AI receptionist solves 70% of the problem. You can add WhatsApp and reporting in month 2 once you trust the system.
- Run parallel for 48 hours minimum. Verify every booking before going fully live. Most accuracy issues we catch in the parallel run never reach a real patient.
- Talk to your team upfront. The hybrid model (AI for after-hours, human for in-person) works best when the receptionist understands she is being upgraded, not replaced.
For more SA-specific case studies, see our case studies page with anonymised deployments across dental, real estate, e-commerce, and accounting. Or read the parent pillar: AI Automation for South African Businesses: The 2026 Operator's Guide.
If you want to discuss what a similar deployment would look like for your clinic, take our free 5-minute assessment.
