← Back to blog

Tuning Ad Rules Across 25 Clinics at Once

2026-04-14
adssystems

My ad optimizer was being too aggressive.

It was pausing ad sets at $20 spend with zero leads. Sounds reasonable until you realize Meta's algorithm needs $30-50 to exit the learning phase.

I was killing creatives before they had a chance to work.

The Problem

One size doesn't fit all. A clinic in Hoover, Alabama gets leads at $24 CPL. A clinic in Fort Collins, Colorado runs at $75. Same system, same rules, wildly different markets.

A $35 CPL cap works great for Hoover. It strangles Fort Collins.

I looked at the data. April CPL across all clinics:

  • Hoover: $24
  • Gainesville: $38
  • Beacon of Health: $69
  • Inner Vitality: $74
  • Thrive: $73

Five clinics were running above the $35 cap. The optimizer was pausing their best-performing ad sets because they were "too expensive" for an arbitrary threshold that didn't match their market.

The Fix

Custom thresholds per clinic based on actual market data:

  • Apex: $60 CPL cap (high-volume, $2,500/week budget)
  • Beacon: $50 (expensive market but converts well)
  • Inner Vitality: $85 (market consistently runs $74, give it room)
  • Gainesville: $45 (just above natural CPL)
  • All others: no-lead kill raised from $20 to $30

Then I added a 90% pause threshold on weekly budget caps. The old rule paused at 100% of the cap. But with hourly polling, by the time the system caught it, the campaign had already overshot by 5-10%.

Now it pauses at 90%. A $500 cap clinic pauses at $450. Close enough to target, no overshoot.

The Result

More ad sets staying active. More data for Meta to optimize with. Better budget utilization across the network.

The clinics that were getting strangled now have room to breathe. The ones that were already efficient didn't change.

The Principle

Automation isn't set and forget. It's set, measure, adjust.

The optimizer handles the repetitive work. But the judgment calls -- what CPL is acceptable in this market, how much room to give a new creative, when to tighten vs loosen -- those still need a human looking at the data.

The system runs itself 95% of the time. The other 5% is where the value is.

If this was useful, follow along for more.

Follow on X