← Back to projects

Lead Nurture Pipeline

Lead Nurture Pipeline
1,000+
SMS / week
8 → 29.5%
Reply rate
24/7
Response Time
~6 mo
In production
n8nOpenAI APICRM integrationSMS

The Problem

Detailing businesses live or die on fast response and relentless follow-up, but a small team can't text every inquiry within minutes, then again at days 3, 7, 15, 30, and 60+. Hundreds of leads went cold sitting in the pipeline, costing revenue and burning sales time on manual tracking instead of closing.

The Solution

I built a three-tier pipeline that carries a lead from first contact toward conversion. An AI assistant handles initial qualification 24/7, gathering vehicle details and context before handing off to a sales rep. After the rep has worked the lead for a few days, it drops into the automated nurture pipeline: personalized follow-ups on day 3, 7, 15, then monthly. Each message is written from the customer's conversation history, notes, and form data, conversational rather than templated. When a customer re-engages, the system detects the buying signal, notifies the rep, and hands the opportunity back. One rep can now manage hundreds of leads at a time.

How It Works

Seven coordinated n8n workflows form a state machine driven by a single immutable entry_date, the one source of timing truth. A daily progression job advances each lead through three stages, dispatchers send the scheduled SMS, and a Reply Handler processes inbound messages and detects buying signals.

Lead lifecycleone immutable date drives every send
New lead → AI initial reach-out
qualifies and opens the conversation
Handed to a human sales rep
rep works the warm lead live
Closeswon, exit pipeline
No closerep hands back to the system
Pipeline entry · stamps immutable entry_date
the one timing source of truth
Immediate
day 0-1
Active Nurture
day 3 · 7 · 15
Monthly
day 30+
Email nurture
exit
Customer replies
from any stage
Reply Handler · AI response + buying-signal detection
Signalnotify rep, exit pipeline
No signalAI reply, stay in stage
Each stage runs a scheduled dispatcher that sends one SMS per touch; a last_message_sent guard means no lead is ever texted twice.

Key design decisions:

  • Idempotent sends guarded by a last_message_sent marker, so no double-texts.
  • Invisible routing markers embedded in the LLM output to drive handoffs.
  • CRM-native, augmenting the existing pipeline instead of replacing it.

Results

The company's generic mass texts landed a 1-2% reply rate. I used customer reply rate as my proxy for system quality, measured weekly. At launch, first-message replies ran 8-10%, reaching about 20% by the third follow-up. Watching those weekly numbers is exactly how I tuned the prompts: iterative refinements pushed third-message reply rates to a steady 25-30%, peaking near 29.5%. Not every reply is a closed deal, but it gave the rep clarity on customer intent without months of manual follow-up.

View on GitHub