
A step-by-step playbook for lead generation automation that actually compounds — sources, enrichment, scoring, routing, and the metrics that matter.
Lead generation automation is a phrase that's been beaten flat by SaaS marketing. In practice, it's a 6-layer stack — and 90% of SMBs we audit have layer one bolted to layer six with nothing in between. This playbook is what an honest version of the stack looks like.
The 6 layers, in order
- Sources: where leads come from (paid, organic, referral, outbound).
- Capture: forms, chat, calls, ads — wherever the lead lands.
- Enrichment: turn a name + email into company size, role, industry, signals.
- Scoring: rank by fit, intent, and timing.
- Routing: send the right lead to the right channel and person.
- Nurture: keep warm leads alive without burning them.
Layer 1: Sources — diversify, don't optimize
Most SMBs over-optimize a single source until it breaks. Healthier mix: no single source is more than 40% of pipeline. Lead generation automation is what lets you actually run multiple sources without drowning your sales team.
Layer 2: Capture — meet the buyer where they are
- Web form on high-intent pages (pricing, demo, contact).
- Chat on low-intent pages (blog, FAQ) — different copy, different goal.
- Click-to-text and click-to-call on mobile.
- Calendar embed for warm-up content (demos, audits).
Layer 3: Enrichment — the unfair advantage
This is the layer most SMBs skip and the one that compounds hardest. Enrichment turns a 4-field form into a 30-field profile. Tools: Clearbit, Apollo, Ocean.io for B2B; manual scraping + LLM extraction for niches the big tools miss. Cost: $0.10–$0.50 per lead. Effect: doubles the quality of every downstream layer.
Layer 4: Scoring — fit × intent × timing
Three numbers, multiplied, not added. Fit: how much they look like your best customers. Intent: what they did (pricing page visit, asset download, demo request). Timing: signals like a job change, new round of funding, hiring spike. A single score makes routing trivial.
Layer 5: Routing — the right channel, not the fastest
- Hot + high-fit → instant text + Slack ping to a rep.
- Hot + low-fit → AI-handled qualification, no human time.
- Cold + high-fit → 14-day nurture sequence with a real reason to come back.
- Cold + low-fit → newsletter list, don't burn rep cycles.
Layer 6: Nurture — the layer that compounds
Most SMBs treat nurture as 'send emails until they buy or unsubscribe.' Real nurture watches behaviour — a pricing-page revisit 30 days after a cold start is a different lead than the one that ghosted. Automation re-scores in real time and re-routes when the score changes.
The metrics that matter
- Lead-to-meeting rate, by source.
- Speed-to-first-meaningful-touch (not just first response).
- Score-adjusted close rate.
- Cost per qualified meeting (not cost per lead — leads are free; meetings aren't).
What we ship in a typical first build
A scoped lead generation automation build for an SMB is usually layers 2–5 against your existing CRM, in 14–30 days. Layer 1 is your marketing team. Layer 6 follows in build two, once we have 60 days of data to base it on.
If lead flow is the bottleneck and you can't tell which layer is broken, that's exactly what the free lead audit answers. We map your current stack against the 6 layers and tell you where the leaks are — in one call, free.
Tutorial: the full 6-layer reference stack
Below is the reference stack we ship on most SMB engagements. Yours will vary by industry, but the topology — capture → enrich → score → route → nurture — is identical.
LAYER 1: SOURCES
Paid: Google Ads, Meta Ads, LinkedIn Ads
Organic: SEO landing pages, blog, programmatic SEO
Referral: partner referrals via tagged links
Outbound: Apollo/Clay sequences
LAYER 2: CAPTURE
HubSpot forms | Tally | Intercom chat | Cal.com booking
↓ all → unified Webhook in n8n
LAYER 3: ENRICH
Apollo People Match → company + role + industry
Clearbit Reveal → anonymous → company-level
LLM extraction → free-text "tell us about your project"
LAYER 4: SCORE
Deterministic: fit × intent × timing (see code below)
LLM second pass: rubric-graded qualifier
LAYER 5: ROUTE
Hot → SMS + Slack to closest rep, calendar link in-line
Warm → AI qualify chat → human if intent confirmed
Cold → 14-day nurture, real reasons to return
Junk → newsletter list
LAYER 6: NURTURE
Behaviour-based re-scoring
Re-route when score changes
Quarterly review of dead leads → resurrection cohortThe LLM qualifier prompt
Layer 4's second pass is a single LLM call that reads the lead, the enrichment, and the message, and outputs a structured score with a rationale. We use this on every build above 500 leads/month — under that volume the deterministic score is enough.
SYSTEM
You are a sales qualifier for [Business].
Score this lead 0-10 on:
- fit (look like our best customers?)
- intent (signals they're buying now?)
- timing (external triggers? funded, hiring, expanding?)
Output JSON ONLY:
{
"fit": 0-10,
"intent": 0-10,
"timing": 0-10,
"total": 0-10,
"rationale": "one sentence",
"recommended_action": "instant_call | ai_qualify | nurture | newsletter"
}
USER
Lead: { ...enriched lead payload... }Force JSON-mode (OpenAI's Structured Outputs or Anthropic's tool-use schema enforcement). Free-text outputs from a scoring step are unparseable in production and bite you the moment volume goes up.
Cost per qualified meeting, not cost per lead
Free 30-min audit
Want us to build this for your business?
We build n8n automations and AI agents for SMBs. Book a free 30-minute audit — we'll map your highest-ROI workflow live, no pitch.
Book a free callMost SMB lead-gen dashboards proudly report cost per lead. That number is meaningless — a $2 lead that never becomes a meeting is more expensive than a $40 lead that does. The metric that matters is cost per qualified meeting (CPM), which collapses the entire funnel into one comparable number across sources.
CPM = total_spend / (leads × score_pass_rate × meeting_rate)
EXAMPLE:
Google Ads spend $4,000
Leads 400
Score ≥7 pass rate 35%
Meeting rate 45%
-----------------------------
Qualified meetings 400 × 0.35 × 0.45 = 63
CPM $4,000 / 63 = $63.50
Compare across sources monthly. The cheapest CPM, not the
cheapest CPL, wins the next budget reallocation.Layer 6 in detail: nurture that compounds
'Send emails until they buy or unsubscribe' is not nurture, it's spam with a calendar. Real nurture has three properties:
- Behaviour-triggered, not time-triggered: a pricing-page revisit fires a real touch, not the next email in a drip.
- Re-scoring built in: leads that ghosted 6 months ago can resurrect — your system should notice.
- Real reasons to return: an asset they haven't seen, an industry update, a relevant case study — not a 'just checking in' note.
Failure modes ranked by frequency
Across audits we run, the top three lead-gen automation failures are: (1) enrichment skipped, so scoring is garbage; (2) no source attribution, so the team can't tell which channel works; (3) routing fires faster than the rep can respond, so the AI hand-off lands in a void. All three are infrastructure fixes, not strategy fixes.
Tools we actually use in 2026
- Enrichment: Apollo, Clay, Clearbit (now HubSpot Breeze).
- Forms: Tally for simple, HubSpot for CRM-native, custom for branded.
- CRM: HubSpot for SMB, Pipedrive for sales-led, GoHighLevel for agencies.
- Orchestration: n8n for the agent layer, Make for the simple plumbing.
- SMS/voice: Twilio, Telnyx (cheaper at scale).
- Calendar: Cal.com (open-source) or Chili Piper for round-robin.
Tutorial: the resurrection cohort job
Most SMBs have hundreds of leads that ghosted 90+ days ago — and a non-trivial fraction will buy if re-touched correctly. The resurrection job re-scores cold leads against new behavioural data weekly and surfaces a 'these might be alive again' list.
// resurrect.ts — weekly cron
const cutoff = new Date(Date.now() - 90 * 86400 * 1000);
const cold = await sql`
SELECT id, email, score AS old_score, last_signal_at
FROM leads WHERE score < 4 AND last_touch_at < ${cutoff}
`;
for (const lead of cold) {
const fresh = await pullRecentSignals(lead.email, "30d");
if (!fresh.length) continue;
const { score: newScore } = scoreLead({ ...lead, ...fresh });
if (newScore >= lead.old_score + 3) {
await postSlack("#sales-resurrected",
`${lead.email}: ${lead.old_score} → ${newScore}`);
await updateLeadScore(lead.id, newScore);
}
}Across the SMBs we run this on, the resurrection cohort adds 5-12% to monthly closed deals at almost zero incremental cost. The 'recent signals' source can be anything you instrument — pricing-page revisits, newsletter clicks, intent-data providers like Bombora or G2 Buyer Intent.
Tutorial: source-attribution that survives
Most SMBs lose attribution within two weeks of launching their lead pipeline because UTMs get lost between form submit, CRM, and CRM webhook. The fix is small and unsexy: capture UTMs at form-submit, persist them to a hidden field, propagate them through every downstream node.
// utm-capture.js — drop into your site's <head>
(function(){
const params = new URLSearchParams(location.search);
const utms = {};
["utm_source","utm_medium","utm_campaign","utm_content","utm_term","gclid","fbclid"]
.forEach(k => { if (params.get(k)) utms[k] = params.get(k); });
if (Object.keys(utms).length) {
localStorage.setItem("mopshy_utms", JSON.stringify(utms));
}
document.querySelectorAll("form").forEach(f => {
const stored = JSON.parse(localStorage.getItem("mopshy_utms") || "{}");
Object.entries(stored).forEach(([k, v]) => {
const inp = document.createElement("input");
inp.type = "hidden"; inp.name = k; inp.value = v;
f.appendChild(inp);
});
});
})();Source mix benchmarks (mid-market SMB)
Healthy source mix (no single source >40%):
Paid search 25-35%
SEO / organic 20-30%
Direct + brand 15-25%
Referral / partner 10-20%
Outbound 5-15%
If paid > 50% — you have a single-channel risk.
If outbound > 30% — your CAC is fragile to deliverability shifts.
If SEO < 10% — you have no compounding asset; fix this.Layer 6 in detail: the nurture sequence that compounds
Real nurture has three weapons: behavioural triggers (visited pricing → real touch), educational compounding (one new asset per month worth opening), and resurrection (re-score on every new signal). Drip campaigns that don't do any of the three are just spam on a schedule.
Metrics dashboard we ship
- Cost per qualified meeting (CPM), by source, by month.
- Score distribution — what % of leads score 7+? Trending up or down?
- Hand-off accept rate — humans pick up vs ignore.
- Resurrection rate — leads moving from <4 to ≥7.
- First-touch quality — % of replies that reference the source page.
Common SMB lead-gen mistakes
- Buying more lead volume before fixing leak in the funnel — never works.
- Conflating MQL with SQL because nobody wants to define the boundary.
- Letting marketing run nurture without seeing close rates — incentive misalignment.
- Measuring CPL but not CPM — you'll optimize for the wrong number.
What's your AI Readiness Score?
10 questions. A personalized score, profile, and a 90-day automation roadmap built for your business. No email required.
Ready to simplify your business with AI automation?
Let's talk about how intelligent automation can save your team time, reduce errors, and help you focus on what actually drives your business forward.



0 Comments
Be the first to comment. Start the conversation below.