Back to Hub
AI Systems & AttributionCase Study 01

An Agentic Lead-Generation Pipeline That Checks Its Own Work

Executive Summary

Built an AI lead-scoring and outreach pipeline that sources, scores, and drafts its own outbound messages, then hands each finished message off for a person to send. The first version ran on Make.com and Gemini; the version running today was rebuilt on Claude Code as a set of Python agents, with a Supabase Postgres database as the single source of truth. Over its life it scaled throughput roughly 4-5x while the qualified-meeting rate held steady, sourcing, scoring, and drafting outbound at volume, with a person still reviewing and sending every finished message.

The Challenge: Manual Work at the Limit

  • Manual bottlenecks

    Sourcing, screening, and data entry were linear manual work that capped how many leads could be handled at once.

  • Hours lost every week

    Qualification and outreach prep ate roughly 20 hours a week, a hard ceiling on scaling the pipeline.

The Solution: An Agentic Pipeline, Rebuilt to Last

  • Automated sourcing and scoring

    Scheduled collectors pull and deduplicate 100+ leads a day into one source of truth, and a model scores each against a written rubric before it reaches the board.

  • Generation that audits itself

    Two model families split the work so nothing grades its own homework: one scores, another drafts the message, and a separate pass checks that draft against the source before it ships.

  • Tailored to each lead

    For every lead, the system searches my own case studies and proof, isolates the ones that fit that company, and writes the outreach around them, so each message leads with the most relevant evidence instead of a generic template.

  • A human sends the finished message

    The automation stops at a finished, source-checked document. A person reviews and sends it, so the pipeline is not a black box firing on its own.

The Breakthrough: Scale Without Losing Control

The pipeline moves each lead through the same path, unattended, up to the finished message: sourcing, scoring, and drafting at roughly 4-5x the original throughput while the qualified-meeting rate held steady, with a person sending every message that goes out. Hover any result to see it.

Source & dedupe
Scheduled collectors pull and deduplicate 100+ leads a day into one source of truth.
Score
A model scores each lead against a written six-dimension rubric.
Draft & self-audit
A second model drafts the outreach; a separate pass audits it against the source. Then a person sends it.
~4x scale · rate held · self-auditing

Scaled roughly 4-5x, rate held

Monthly volume scaled roughly 4-5x, from about 329 to about 1,636 leads sourced a month and about 31 to about 136 reach-outs a month, while the qualified-meeting rate held steady rather than rising with volume. Scaling without quality decay was the harder problem.

About 20 hours a week back

Automating sourcing, scoring, and drafting removed roughly 20 hours a week of manual screening and data entry, measured against 45 minutes per reach-out done by hand.

Nothing grades its own homework

One model scores the lead, a second drafts the message, and the first audits that draft against the source before it ships, with a fallback at every stage.

One source of truth

11,025 leads sourced and deduplicated into a single Supabase database, with 1,501 converting through to applied. One place every number comes from.

Monthly throughput, early vs later

329
1636
Sourced / mo
31
136
Reach-outs / mo
~4x reach-out volume · meeting-rate held

Built with

Make.comGeminiClaude CodeSupabaseClickUpPython