Honest Growth
← All detections

Detection · zombie_adset

Detection: Ad sets spending without converting

Key: zombie_adset Severity: High Confidence: 85–95%

What this detection looks for

We flag an ad set as a "zombie" when all three of these are true:

  1. The ad set is active (not paused, not deleted)
  2. It has spent $500 or more within the audit date range
  3. It has run for 14 days or more with zero purchase conversions

Why this matters

When an ad set has run for two weeks with five hundred dollars of spend and no purchases, Meta has had ample opportunity to find converting audiences inside your targeting. The continued absence of conversions tells you one of three things:

  • The audience is too narrow to find buyers
  • The creative is not driving purchase intent
  • The conversion event is not firing correctly

In all three cases, more time and money will not solve the problem. Pausing the ad set and redirecting the budget is almost always the right move.

How we calculate confidence

Condition Confidence
Spend ≥ $750 AND ≥ 14 days AND 0 purchases 95%
Spend $500–$750 AND ≥ 14 days AND 0 purchases 85%
Any of the above conditions not met We don't surface the finding

How we calculate the estimated monthly cost

We take the spend observed over the audit date range and project it forward to a 30-day month at the same daily run rate.

monthly_cost = (observed_spend / days_in_range) × 30

What would change our mind

A zombie ad set finding can be a false positive in a small number of cases:

  • A long sales cycle. If your average purchase happens 30+ days after first click, a 14-day window won't capture conversions. We'd recommend extending the audit date range and re-running.
  • Pixel/CAPI not firing correctly. If your Purchase event isn't being recorded properly, real conversions are happening that we can't see. Check Events Manager → Test Events to confirm. (We also have a separate detection for this: weak_event_coverage.)
  • A new product launch. If the ad set just launched and you're in the Meta learning phase, results in week 1 are noisy. Wait until day 14 before acting.

How to fix it

  1. Pause the ad set in Meta Ads Manager
  2. Note the targeting and creative used — these are signals about what doesn't work for your audience
  3. Reallocate the budget to an ad set that has been converting
  4. If most of your ad sets in a campaign are zombies, the issue is likely creative or offer, not targeting — refresh creative before launching new ad sets

What we look at to make this detection

  • effective_status on the ad set object
  • spend insights metric, summed across the audit date range
  • actions insights metric, filtered to offsite_conversion.fb_pixel_purchase and offsite_conversion.custom.<your-purchase-event>
  • Account-level attribution_setting to know which window we're summing over

Source

This methodology page is generated from apps/api/app/services/detections/zombie_adset.py. The detection code is open for inspection. We do not have hidden rules.

See it run on a real account.

The sample audit shows this and 14 other detections fired against a synthetic but realistic $30K/month account.