LeadHub AI: Lead Capture, Qualification & Nurture CRM
What It Does
An automated lead management system that captures inquiries from five different channels — website contact form, Cal.com bookings, Gmail, WhatsApp and chat widget bot relays, and LinkedIn — classifies them using AI, and runs personalized nurture email sequences based on how ready each lead is to buy. High-intent leads get AI-drafted follow-up emails with human approval before sending. The system handles the full booking lifecycle: instant confirmations with timezone-aware scheduling, pre-call reminders, and context-aware cancellation and reschedule emails that adapt based on who initiated the change. Leads who book a discovery call are guided through a pre-discovery questionnaire so the freelancer walks into every call already prepared. The entire system has been through a full component audit — 35 findings identified, all critical and medium-severity issues resolved — and validated with live data, not just simulated tests.
This connects to the live Request a Consultation form and booking flow. Use it if you have a real automation inquiry or want to schedule a discovery call.
The Problem
As a solo freelancer, leads come from everywhere — a form on my website, a Cal.com booking, an email, a WhatsApp message, a LinkedIn connection request. Each one needs to be read, evaluated, followed up on, and tracked. Do that manually for every inquiry while also doing client work, and things start falling through the cracks. A lead from Tuesday gets buried under Wednesday’s emails. A promising inquiry gets a reply three days late. The busier the pipeline gets, the worse the problem becomes — which is exactly when you can least afford to lose leads.
And it’s not just the initial contact. Leads reschedule calls, cancel bookings, reply to follow-up emails with new information. Each of those events needs a response — and the right kind of response, not a generic “your booking has changed” message. Keeping track of who did what, when, and what the right next step is becomes a full-time job on top of the actual work.
How It Works
The system has six layers that work together:
Layer 1 — Intake (5 channels, 1 pipeline):
Leads arrive from a website contact form, Cal.com bookings, Gmail (including messages forwarded by the WhatsApp and website chat bots, Upwork notifications, and direct emails), and Yahoo (LinkedIn connection messages). Each channel has its own intake workflow that receives the data and normalizes it into a standard format. From there, every lead enters the same central processing hub — regardless of where it came from, it goes through the same qualification and follow-up logic. Cal.com bookings get an extra step: the system sends an immediate booking confirmation email with the call time displayed in the lead’s own timezone, a link to a pre-discovery questionnaire, and a brief introduction — all within seconds of the booking. Any additional notes the lead included when booking are captured alongside their record.
Layer 2 — AI Classification and Qualification:
Not every email is a lead. The system uses AI to classify incoming Gmail messages and filter out newsletters, promotions, and personal mail before anything enters the pipeline. Emails that receive an unexpected classification are flagged for review rather than silently dropped. Confirmed leads are then evaluated by a second AI step that assigns a Hot, Warm, or Cold qualification with written reasoning. Cal.com bookings skip the AI step entirely — scheduling a call is the strongest intent signal, so they’re automatically classified as Hot. The system also checks for duplicates using each record’s unique database ID: if the person already exists, their record is updated rather than duplicated. When a lead already in the nurture sequence books a Cal.com call, the system recognizes the stronger intent signal, upgrades them to Hot, and pauses their nurture sequence automatically.
Layer 3 — Nurture Sequences:
After a lead is created, the system sends an immediate Day 0 acknowledgment email tailored to their qualification level. Then, on a daily schedule, it checks which leads are due for their next follow-up:
Hot leads: Day 0 → Day 1 → Day 2 (then archived)
Warm leads: Day 0 → Day 3 → Day 7 → Day 14 (then archived)
Cold leads: Day 0 → Day 7 (then archived)
Cal.com leads are handled differently: because they already received a detailed booking confirmation email (with their call time, timezone, and questionnaire link), the system skips the generic Day 0 nurture email and archives them immediately — sending additional follow-ups to someone who already has a call scheduled would feel off-tone. All emails display timestamps in the lead’s own timezone, with dynamically formatted timezone labels.
Hot Day 1 and Day 2 emails are special — they’re AI-drafted using references to my past projects, then sent to me for approval before going to the lead. I can approve, skip, or request a revision (up to three rounds). Warm and Cold emails use templates and send automatically. If one lead in a batch fails to process, the system continues with the remaining leads rather than stopping the entire run.
Layer 4 — Reply Detection:
When an existing lead replies to a nurture email, the system recognizes them and routes the reply to an AI classifier that evaluates whether their intent has changed. If a Cold lead suddenly says “I have a project in mind,” the system recommends upgrading them to Hot and notifies me with the reasoning. It never auto-changes a lead’s path — I make the final call.
Layer 5 — Booking Lifecycle:
The system tracks the full lifecycle of discovery call bookings, not just the initial scheduling. When a lead cancels or reschedules, the system detects whether the lead or I initiated the change and responds accordingly. Lead-initiated changes get an automatic, personal-tone email — no approval step needed. Changes I initiate go through the approval workflow so I can add context to the message. The day before a scheduled call, the system sends a timezone-aware reminder with a questionnaire link if the lead hasn’t completed it yet. This means every booking change gets the right response automatically, and no lead shows up to a call without a reminder.
Layer 6 — Discovery Preparation:
Leads who book a consultation are invited to fill out a short questionnaire about their business and the process they want to automate. A dedicated workflow receives the responses from a form on the portfolio website, validates the data, stores it in a separate table, emails me a summary, and flags the lead’s record as having completed the questionnaire. Duplicate submissions update the existing response rather than creating a new one. By the time the discovery call happens, I already know the basics — the conversation can skip background questions and go straight to solutions.
Architecture:
The system runs on n8n (self-hosted) and consists of 13 workflows — 4 intake workflows, 3 sub-workflows (central processing, email sending, reply handling), a daily nurture scheduler, an approval processor, a pre-discovery questionnaire intake, a pre-call reminder, and the voice pipeline (detailed in a separate case study). Approximately 180 nodes total. The entire system has been through a formal component audit with 35 findings identified and all critical, high, and medium-severity issues resolved.
Screenshots

CRM-SW Process Lead: the central processing hub receives normalized lead data, handles deduplication, rebooking logic, AI qualification, Day 0 routing, CRM updates, notifications, and voice-agent eligibility checks.
Build scale: 13 workflows · 3 sub-workflows · ~180 n8n nodes · 5 intake channels · 3 nurture paths · 7 email templates
Workflow Set and Execution History: the CRM is built from connected n8n workflows for website intake, Cal.com bookings, Gmail/Yahoo lead capture, nurture sequences, approval handling, voice follow-up, and discovery preparation, shown beside recent successful execution activity.
Booking Lifecycle and Approval Logic: the Cal.com intake workflow handles new bookings, cancellations, and reschedules, while the approval processor routes high-intent CRM emails through approve, skip, and revise paths before delivery.
Live Intake and Booking Response: the contact page gives visitors two CRM entry points — the Request a Consultation form and the Cal.com booking flow — while the CRM sends booked leads an acknowledgement email with timezone-aware call details and a pre-discovery questionnaire link.
What Makes It Interesting
One hub, five channels — and the rules live in one place.
Every intake channel normalizes its data into the same format and hands it to a single processing sub-workflow. This means the qualification logic, deduplication check, Day 0 email trigger, and notification rules each exist in exactly one place. When I found a bug in the AI output formatting, I fixed it in one node and all five channels were covered. If I add a sixth channel next month, I only need to build the intake layer — the processing hub doesn’t change. This is the same concept as a single source of truth in legal drafting: you define the term once in the definitions section, and every clause that references it stays consistent automatically.
The system knows who initiated a booking change — and responds accordingly.
When a lead cancels or reschedules, a generic “your booking has been updated” email would technically work. But it wouldn’t feel right. If the lead cancelled, they already know why — a warm acknowledgment is appropriate. If I cancelled, the email needs to explain the reason, and I should review it before it goes out. The system detects the initiator by comparing the event data against the calendar organizer, then routes to the right template: lead-initiated changes send instantly with a personal tone, while my changes go through the approval workflow. Four paths instead of one, but the difference in professionalism is significant.
Mock testing caught the logic; live testing caught the contract.
A cross-cutting migration changed how five workflows identify database records — from email matching to unique record IDs. Every change passed mock-based testing, which correctly validated the routing logic. But the first real-world use failed silently: the database API requires the record ID in two places, and the mocked tests only exercised one. This exposed a methodology gap that no amount of simulated testing would have found. The fix was straightforward, but the lesson was valuable — any change that touches how the system talks to an external service needs at least one live round-trip. In engineering terms, a simulation validates the design, but a prototype test confirms the material actually behaves as modeled.
Human approval where it matters, automation everywhere else.
Hot leads — the ones most likely to become clients — get AI-drafted personalized emails that reference my past projects. But the AI doesn’t send them directly. I review each draft in a Gmail form and choose to approve, skip, or revise with specific feedback. Up to three revision rounds are supported. Warm and Cold leads, where the stakes are lower, get template emails that send automatically. The same approval pattern extends to booking changes I initiate — cancellation and reschedule emails I trigger go through the same review workflow, while lead-initiated changes send automatically. This design puts human judgment exactly where it has the highest return — like how in engineering, you apply tighter tolerances only to the dimensions that affect fit and function, not to every measurement on the drawing.
Tech Stack
n8n (self-hosted)
Workflow orchestration for lead intake, AI qualification, nurture sequences, approval loops, booking lifecycle handling, reminders, and discovery preparation
Airtable
Lead database, system configuration, project references, nurture tracking, booking status, and pre-discovery responses
OpenAI GPT-4o-mini
Email classification, lead qualification, reply analysis, and AI-drafted follow-up emails
Gmail API
Inbound lead detection, outbound nurture emails, approval forms, booking messages, reminders, and internal CRM notifications
Yahoo IMAP
LinkedIn-related email monitoring and additional lead source intake
Cal.com
Discovery call booking intake, cancellation and reschedule handling, scheduling updates, and calendar-based lead routing
WordPress / Aveo Theme
Portfolio website contact form and pre-discovery questionnaire feeding into the CRM pipeline
Submit the Request a Consultation form or book a discovery call to use the live CRM automation flow.
Description
June 24, 2026
AI-powered CRM system that captures and qualifies leads, automates follow-ups, manages booking updates, and prepares discovery calls.





