← All projects

Automated Lead Qualification & Follow-Up System

n8nLead management

Capture and qualify inquiries, acknowledge new leads, alert Slack to hot leads, and coordinate follow-ups with reply tracking.

Platform
n8n
Focus
Lead management
Evidence available
Annotated overview & case study

Project overview

An independent portfolio project connects three n8n workflows through a shared Google Sheets CRM: Intake, Follow-Ups and Reply Tracking. Kyle configured the integrations, wrote JavaScript decision logic, mapped lead and activity fields, and tested the main paths. No AI model is required for the documented scoring path.

Business problem

Handling inquiries across a form, inbox, spreadsheet and notifications creates repeated handoffs: checking duplicates, prioritizing leads, acknowledging inquiries and remembering when to follow up without emailing someone who has already replied.

Automation solution

Normalize and score new inquiries, save their CRM records, send acknowledgments and notify Slack for Hot leads. Separate Gmail and scheduled workflows maintain reply status and assess conversations before sending up to two follow-up emails.

Capture & qualifyTrack replies & eligibilityFollow up or stop

Simplified process summary. Explore the architecture below for branches and decision logic.

Workflow evidence

Annotated overview, preserved as supplied. This illustration is not unedited execution evidence.

Three connected workflows share Google Sheets lead records: Intake, Follow-Ups and Reply Tracking. This is an annotated overview, not a live execution.

Supplied annotated workflow overview: Intake above, Follow-Ups below left and Reply Tracking below right. This edited illustration explains the architecture; its green markers are not unedited execution evidence.

Workflow architecture

Trigger & input

An n8n inquiry form starts Intake. A Gmail Trigger starts Reply Tracking. A schedule starts Follow-Ups every 15 minutes; all three share lead records and an activity log in Google Sheets.

Processing & output

  1. Intake normalizes submitted data and searches for an existing email. Duplicates skip new-lead creation and acknowledgment. New leads are scored with JavaScript, saved, acknowledged through Gmail and logged; Hot leads also generate a Slack notification.
  2. Reply Tracking finds the lead by Gmail thread and checks Active status. Eligible replies mark the lead Replied, clear the next follow-up date and log a lead_replied event. Gmail search exclusions reduce common mailer-daemon and postmaster false matches.
  3. Follow-Ups selects due leads, processes them individually, refreshes their records and rechecks eligibility. It retrieves the Gmail conversation and assesses message labels, the original acknowledgment, incoming messages, drafts and the saved follow-up count.
  4. Conversation assessment returns Send, Replied or Review. Send records and logs an eligible follow-up; Replied stops future follow-ups; Review stops automatic follow-ups and flags Needs Review. The sequence is limited to two follow-up emails.
  5. Activity entries record event ID, lead ID, event type, timestamp, message ID, result and error details. Reply events use a Gmail-message-based event ID with append-or-update to reduce duplicate log rows; this does not establish exactly-once email delivery.

Conditional logic

Duplicate checks gate Intake; Active status gates reply updates. Follow-ups respect saved permission and eligibility checks. Missing or mismatched threads, incomplete message details, unverified acknowledgments, drafts and inconsistent sent counts take the review path. Delivery-notice assessment runs before the ordinary incoming-message decision.

Key features

  • JavaScript lead normalization and qualification
  • Duplicate intake prevention and acknowledgment logging
  • Slack alerts for Hot leads
  • Scheduled follow-ups capped at two emails
  • Reply tracking that clears future follow-ups
  • Conversation checks and a Needs Review path

Technical challenges

A delivery-failure notice exposed why matching a thread alone does not prove a person replied. Kyle added Gmail search exclusions and sender, subject and delivery-report checks. Manual and automatic triggers also needed separate tests. A successful send followed by a failed CRM update can still leave applications out of sync.

Business value

Coordinates inquiry handling, lead visibility and follow-up records with fewer manual handoffs as an intended benefit. The demo demonstrates practical integration and state management; time savings, conversion rates and revenue impact have not been measured in a live client environment.

Project status

Testing & limitations

Documented tests

The supplied case study documents manual acknowledgment, reply, follow-up, stopping and logging checks, plus automatic duplicate intake, Gmail triggering and scheduling. The schedule ran with no Active leads, so scheduled email delivery end to end remains unverified. Delivery-notice sample checks were reported; a live bounce test was not completed. This is owner-documented testing, not a fresh audit of the n8n instance. The annotated overview is an illustration, not unedited execution evidence.

Source: Kyle Reynoso’s four-page case study dated October 21, 2026, and supplied annotated workflow overview. Testing claims are attributed to that document; current workflow configuration and production outcomes have not been independently audited.

Limitations & next steps

What needs verification: resolve these open questions before treating this design as a verified implementation.

  • Fresh end-to-end scheduled follow-up and subsequent reply with an eligible, consenting lead
  • Live bounce testing and broader automatic-response handling
  • Dedicated error alerts, retries and recovery from partial failures
  • Unedited execution screenshots and sanitized CRM/activity records for independent review

Let’s build
something
smarter.

Have a process that could work better?
Or a team I could contribute to? Let’s connect.

My résumé

A closer look at my background and skills.

Download résumé PDF
kylereynoso.work@gmail.com

Opens your email app with a draft. You review it before sending.

Connect on LinkedIn View my OnlineJobs.ph profile Based in the Philippines

Workflow detail

FitOpen original image

Zoom to read individual nodes. Scroll the image for more detail, or open the original for native browser zoom.