Lead Intake & Qualification
The system that decides which leads I respond to first.
Automation / n8nThe problem
Every discovery-call request landed in the same inbox with no way to tell, at a glance, which ones were worth answering first. Replying to each one manually doesn't scale, and a genuinely hot lead sitting unread for a day is a worse outcome than a slow reply to someone still kicking the tires.
What I built
A webhook-triggered n8n workflow sits behind the booking widget on this site. Every submission — name, email, message, date and time — posts straight to the workflow, which hands the message to Claude for classification: Hot, Warm or Cold, based on how specific and ready-to-move the inquiry sounds. Claude also drafts a suggested reply and a short internal note on what it picked up on, so I'm not starting from a blank page when I follow up.
Every booking gets logged to a Google Sheet alongside all of that — a running, self-annotating record of who's reached out and why it matters. Hot leads branch into a Slack alert so I see them immediately rather than finding them in my inbox hours later. Every visitor also gets a branded confirmation email, sent from my own domain through Resend, so the reply feels personal even though nothing about it required me to be at a keyboard.
Tools used
The workflow
Webhook in, Claude for classification, a conditional branch on lead temperature, then Sheets, Slack and Resend fan out from there.
The confirmation email
Sent immediately, from my own domain, so it reads as a real reply rather than an autoresponder.
This isn't a demo
This is the actual system sitting behind the "Book a discovery call" button on this site right now. Every row in the sheet came through this exact path: real visitor, real webhook call, real classification, real email.
Guardrails
The workflow assumes good faith, but it doesn't rely on it blindly. If the same visitor tries to book again shortly after their first request, or submits a slot that's already taken, the widget stops them with a clear message instead of quietly creating a duplicate. It's a small thing, but it keeps the sheet — and my calendar — free of noise without me having to police it.
Stack
Want something like this for your business?
Let's talk