Honest Growth
← All detections

Detection · prospecting_retargeting_imbalance

Detection: Retargeting spend share is too high

Key: prospecting_retargeting_imbalance Severity: Medium Confidence: 80% Shipped: v1.2, May 2026 Runtime: Requires Meta OAuth (audience-type classification needs the audiences map; CSV exports don't carry it).

What this detection looks for

We fire one account-level finding when all of these are true:

  1. The audiences map is populated (Meta OAuth path)
  2. Account monthly spend projects to ≥ $3,000
  3. Retargeting spend share exceeds 0.35 of total active-ad-set spend

We classify an ad set as retargeting when any of its included custom audiences are of type:

  • CUSTOMER_LIST
  • ENGAGEMENT
  • VIDEO_VIEWERS
  • WEBSITE

Ad sets with no included custom audiences, or with only LOOKALIKE / SAVED audiences, are treated as prospecting. Ad sets with unknown audience types don't pull the ad set into the retargeting bucket on their own.

Why this matters

Sam Tomlinson's 2026 audit and Common Thread Collective both anchor on healthy mix ≈ 70–80% prospecting / 20–30% demand capture. Above 35% RT spend, the account is usually buying conversions it would have got via organic and email anyway — paid Meta is cannibalizing, not incrementing.

This is one of the most-cited reasons DTC accounts report "ROAS is fine but revenue isn't growing." High-RT mix produces good Meta-reported ROAS while incrementality is near zero. The fix is structural: rebalance spend toward prospecting until growth resumes.

How we estimate the recoverable dollars

overrun = retargeting_spend − (total_spend × 0.35)
wasted = overrun × 0.7   # incrementality discount
monthly_recoverable = wasted × 30 / audit_days

The 0.7 incrementality discount reflects that some retargeting spend genuinely is incremental — the loss isn't 100% of the overrun. It's the most-cited factor in the Haus.io incrementality literature.

What would change our mind

  • Lifecycle / replenishment business. Subscription brands and high-AOV repeat purchases legitimately spend more on existing customers because the LTV math supports it. Treat the dollar estimate as a ceiling — actual loss is often lower.
  • A real holdout test ruled differently. If you've run a geo holdout that proved your retargeting is incremental, trust the test over the heuristic. The rule is a structural pattern signal; an incrementality test is direct measurement.
  • Recent prospecting pause. If you turned prospecting off in the last 14 days while you sort out tracking or creative, the share is artificially high — flag the audit and re-run after you re-launch prospecting.

What to do about it

  1. Audit the retargeting ad sets. Identify which ones can be paused outright (low LTV, broad audience), and which can be reduced (high LTV, narrow audience).
  2. Raise prospecting budget on the top 2–3 prospecting ad sets, not all of them. Concentration over fragmentation — see spend_fragmentation.
  3. Set a target mix and watch it weekly. 70/30 prospecting/RT is a common target. Track for 4 weeks before judging — Meta's optimization needs time to re-balance.

References

  • Sam Tomlinson: "The Ultimate Meta Ads Account Audit, Part II"
  • Common Thread Collective: 27-Point Facebook Ads Audit
  • Haus.io: "Understanding Meta Incrementality Testing"

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.