DEV Community

RyanCwynar
RyanCwynar

Posted on • Originally published at ryancwynar.com

Building Automated Prospecting Pipelines That Actually Work

Most sales teams treat prospecting like a manual grind. Search for leads, copy contact info, paste into a spreadsheet, rinse and repeat. It works, but it doesn't scale.

I've been building automated prospecting systems that run 24/7, finding qualified leads and routing them to the right campaigns without any human intervention. Here's what I've learned.

The Campaign-First Architecture

The key insight is organizing everything around campaigns, not just leads. Every prospect gets tagged with a campaign type that determines how they'll be contacted and what offer they'll receive.

For example, I run several parallel campaigns:

  • Receptionist - Medical practices, dental offices, law firms that need front-desk automation
  • Reviews - Businesses that could benefit from automated review collection
  • AI - Companies that might adopt AI tools for operations

Each campaign has its own search criteria, qualification rules, and outreach sequences. A dental practice in Miami gets different messaging than a law firm in West Palm Beach.

The Technical Stack

The system runs on a pretty simple loop:

  1. Scheduled searches - Cron jobs fire at regular intervals, targeting specific business types and locations
  2. Web scraping - Pull business details, phone numbers, websites from search results
  3. Qualification - Filter out businesses that don't fit (wrong industry, no phone number, etc.)
  4. Queue insertion - Qualified prospects go into a call queue with their campaign tag
  5. Deduplication - Check against existing prospects to avoid duplicate outreach

The whole thing runs on PostgreSQL for storage, with Convex handling the real-time sync. Brave Search API does the heavy lifting for discovery.

Rate Limits Are Your Friend

Here's something counterintuitive: API rate limits actually make your system better.

When you're limited to a certain number of searches per minute, you're forced to be thoughtful about query design. Instead of blasting hundreds of generic searches, you craft specific queries that return high-quality results.

"Dental practice Palm Beach Gardens" returns better prospects than "dentist Florida." The rate limit forces you to be precise.

The Human-in-the-Loop Problem

Fully automated prospecting sounds great until you realize some decisions need human judgment. Is this business actually a good fit? Does their website suggest they'd be receptive to outreach?

My solution: batch prospects and present them for quick review. The automation does 95% of the work - finding, filtering, organizing. A human spends 10 seconds per prospect giving a thumbs up or thumbs down.

This hybrid approach catches edge cases the automation misses while keeping throughput high.

Metrics That Matter

After running these systems for a while, I've found the metrics that actually matter:

  • Prospects per day - How many qualified leads enter the pipeline?
  • Campaign distribution - Are you feeding all campaigns equally, or starving some?
  • Duplicate rate - High duplicates mean your search queries overlap too much
  • Contact rate - What percentage of prospects have valid phone numbers?

Vanity metrics like "searches performed" or "pages scraped" don't tell you anything useful.

The Compound Effect

The real power shows up over time. Running these pipelines consistently for a few weeks builds a substantial prospect database. Each day adds 10-20 qualified leads. After a month, you're sitting on hundreds of potential customers, all categorized and ready for outreach.

Manual prospecting can't compete with that compound growth.

What's Next

I'm working on adding AI-powered qualification - using language models to analyze prospect websites and score fit probability. The goal is pushing that human review step even further down the funnel.

The dream is a system where you define your ideal customer once, and qualified prospects just appear in your queue, ready for a call. We're getting close.


Building something similar? I'd love to hear about your approach. Hit me up on X.

Top comments (0)