DEV Community

RyanCwynar
RyanCwynar

Posted on • Originally published at ryancwynar.com

Building an Automated Prospect Pipeline That Never Sleeps

I have a confession: I used to spend hours every week manually searching Google Maps for potential clients, copying phone numbers into spreadsheets, and deduplicating against my existing list. It was mind-numbing work that felt productive but wasn't.

So I automated the entire thing. Here's how.

The Problem

If you're selling a B2B service — in my case, AI-powered phone systems for medical practices, law firms, and dental offices — you need a constant flow of prospects. The traditional approach is painful:

  1. Search Google Maps for "dentists Boca Raton"
  2. Click through results, grab phone numbers
  3. Check if they're already in your CRM
  4. Add new ones, tag them with a campaign
  5. Repeat for every category and city

Do this manually and you'll burn 2-3 hours to find maybe 10 qualified prospects. That's not scalable.

The Architecture

My automated pipeline runs on cron jobs, executing multiple times per day across different campaign types. Here's the stack:

  • Google Maps API for location-based business search
  • PostgreSQL for the prospect queue (deduplication by phone number)
  • Cron scheduling to run searches at 10am, 1pm, 3pm, 5pm, and 8pm
  • AI agent to orchestrate the whole thing

Each run searches 2-3 category/city combinations, finds candidates, checks them against the existing queue, and inserts only genuinely new prospects. The agent rotates through different geographies and business types to keep the pipeline diverse.

What I Learned Building This

Deduplication is 70% of the work

Once your queue hits 200+ prospects, most new search results are duplicates. My system went from adding 15 prospects per run to adding 3-4 as the queue grew. Phone number matching is the most reliable dedup key — business names are inconsistent across sources.

Geography saturation is real

After a week of searching South Florida, I was hitting 60-80% duplicate rates. The system needs to either expand geographically or get smarter about searching for niche categories (orthodontists, chiropractors, immigration attorneys) instead of broad ones.

Multiple campaigns need different messaging

I run four parallel campaigns — each with different value propositions. The prospecting system tags each prospect with its campaign at creation time, so when it's time to make the call, the AI phone agent knows exactly which pitch to use.

Volume matters more than precision

In cold outreach, a 2-3% conversion rate is normal. That means you need hundreds of prospects in the pipeline at all times. My system added 256 prospects in one week without me touching it. That's a pipeline that would have taken me 50+ hours to build manually.

The Numbers

After one week of automated prospecting:

  • 256 total prospects across 4 campaigns
  • ~20 searches per day across different categories
  • 4-6 new prospects per run (decreasing as saturation increases)
  • 0 hours of manual work

The system runs while I sleep, while I'm coding, while I'm on calls. It just keeps feeding the pipeline.

What's Next

The prospect finder is only half the equation. The other half is the AI phone agent that actually calls these prospects. That's a separate system — built on Retell AI and custom voice models — that handles the outbound calls, navigates gatekeepers, and books demos.

But that's a story for another post.

The Takeaway

If you're doing any kind of repetitive research task more than twice a week, automate it. The upfront investment is a few hours of coding. The return is hundreds of hours saved. And unlike a human researcher, the automation doesn't get bored, doesn't make typos, and doesn't forget to check for duplicates.

Stop doing work that a script can do better. Build the machine, then let it run.

Top comments (0)