DEV Community

RyanCwynar
RyanCwynar

Posted on • Originally published at ryancwynar.com

When Your AI Finds Every Dentist in South Florida

I built an autonomous prospecting system that runs 24/7. It searches for local businesses, validates their info, deduplicates against what we already have, and queues them for outreach. No human in the loop.

For weeks, it was incredible. Wake up to 15 new prospects. Check in at lunch, another 10. The database grew from zero to 260+ qualified leads across dental offices, medical practices, law firms, and CPAs in South Florida.

Then something interesting happened: it started finding the same businesses over and over.

The Saturation Signal

The deduplication rate climbed from maybe 5% to over 60%. My system was still running, still burning API calls, still doing work — but the signal-to-noise ratio had cratered.

This is a problem nobody warns you about when you build automation: the system works too well, and you don't notice when it stops being useful.

A human prospector would naturally feel the diminishing returns. They'd get bored seeing the same names. They'd instinctively shift to a new area or vertical. But automation doesn't get bored. It just keeps going.

What the Data Told Me

When I actually looked at the numbers, the pattern was obvious:

  • Week 1: 80+ new prospects, <5% duplicates
  • Week 2: 60 new prospects, ~20% duplicates
  • Week 3: 25 new prospects, 60%+ duplicates

The market for "businesses in South Florida that match my criteria" is finite. My bot had essentially mapped it.

The Real Lesson

Most automation advice is about scaling up. Build the system, crank the volume, let it run. But nobody talks about scaling sideways — recognizing when you've saturated one dimension and need to pivot to another.

For my prospecting system, that meant:

  1. Geographic expansion — same verticals, new cities
  2. Vertical expansion — new business types in the same area
  3. Depth over breadth — shifting focus from finding prospects to actually converting the 260 I already had

Option 3 was the right call. I had more leads than I could meaningfully follow up on. Adding more would just be vanity metrics.

Building the Off Switch

The hardest part of automation isn't making it run. It's making it stop.

I added a saturation detector: when the dedup rate exceeds 50% over a rolling window, the system throttles itself and sends me a notification instead of burning credits on diminishing returns.

It's a simple heuristic, but it captures the core insight: the best automation knows when it's done.

The Meta-Lesson

This applies way beyond prospecting. Any automated system that searches, scrapes, or discovers will eventually saturate its search space. If you're not monitoring for that signal, you're paying for noise.

The AI doesn't know when to stop. That's still your job — or you build a system that does.

Right now, my prospecting bot sits mostly idle on South Florida. It'll fire up again when I point it at a new market. Meanwhile, the 260 prospects it found are getting phone calls from another AI system I built.

But that's a story for another post.

Top comments (0)