Back to Case Studies
AI AgentsDeployed

AI SDR System: 24/7 Patient Lead Nurturing & Qualification Pipeline

Client: Premiere Eye CenterRegion: United StatesIndustry: Healthcare / Optometry
100%Leads contacted
0sDelay during business hours
BinaryAI booking-intent classification
0Manual logging steps

Two asynchronous n8n workflows replacing the entire SDR function — dynamic scheduling fires calls immediately during business hours or queues until 9am otherwise, and GPT-4 post-call analysis classifies every transcript into a binary booking-intent flag that routes warm leads automatically.

The Problem

The clinic needed 100% of leads contacted without adding headcount. Leads submitted overnight and on weekends waited 8–72 hours for a callback. Human agents introduced variability in script adherence and logging accuracy — quality depended on who was working. Manual call logging to Google Sheets was delayed and error-prone. Voicemails and unanswered calls disappeared into a 'called' status without structured follow-up. No real-time visibility into which leads were warm vs. cold.

The Solution

Flow 1 — Intelligent Outreach & Dynamic Scheduling: Webhook ingests lead data (Name, Phone, Email, Service Requested). JavaScript node calculates current time in America/New_York (EST) against Mon–Fri 9AM–8PM window, exports `call_action` = `call_now` or `schedule_call`. If `call_now`: HTTP request fires to Retell AI immediately with dynamic expressions `{{$json["phone"]}}`, `{{$json["name"]}}`. If `schedule_call`: Wait node pauses until next 9AM business window then fires. Flow 2 — Post-Call AI Analysis & Follow-up Triage: Retell `call_analyzed` webhook → If filter checks event type → Google Sheets append (transcript, AI summary, call status, recording URL to 'Summarized Call Tracking' sheet) → GPT-4.1-nano prompt: 'Did the lead explicitly discuss booking — mention specific dates or times?' → Boolean output `true`/`false`. If true: WhatsApp appointment link (WASenderAPI) + Gmail confirmation sent simultaneously, Google Sheets CRM updated to 'Called'. If false: Retell status check — `not_connected` or `voicemail_reached` → `Follow Up Needed` flag written to CRM.

Tech Stack

n8nRetell AIOpenAI GPT-4.1-nanoWaSender APIGmailGoogle Sheets

Walkthrough

Results

  • Every lead contacted at the optimal time — immediately during EST business hours (Mon–Fri 9AM–8PM), at exactly 9AM next business day otherwise
  • AI post-call classification converts every qualitative transcript into a binary booking-intent flag (true/false) with zero human review
  • Warm leads (booking intent = true) receive appointment scheduling link via WhatsApp AND Gmail confirmation simultaneously — automated within seconds of call ending
  • Failed calls (not_connected, voicemail_reached) automatically set a Follow Up Needed flag in the CRM, creating a prioritised queue for human reps
  • Full compliance audit trail: transcript, AI summary, recording URL, and call status appended to 'Summarized Call Tracking' Google Sheet on every call without exception
  • Zero manual data entry — no human touches the CRM between lead submission and follow-up routing