Skip to main content

Documentation Index

Fetch the complete documentation index at: https://adadvisor.ai/docs/llms.txt

Use this file to discover all available pages before exploring further.

The AdAdvisor diagnose skill is the senior media buyer’s response to a moving Meta (Facebook) ad number. CPA jumped, ROAS dropped, frequency creeping up, results stalled. Instead of panicking, run a diagnostic stack: look at CPM, CTR, hook rate, hold rate, and frequency together, identify which signal in the funnel actually moved, and pick the action that matches the cause.

When should I use the diagnose skill?

Triggers automatically on phrases like:
  • “CPA went up”
  • “ROAS dropped”
  • “Why is this campaign not working”
  • “What happened to my ads”
  • “Should I kill this”
  • “Should I scale this”
  • “Investigate”
  • “Spend without results”
  • “Frequency too high”
Best for one entity at a time (a specific campaign, ad set, or ad). For account-wide reviews, use the audit skill.

How does the AdAdvisor diagnostic tree work?

Performance is a funnel. When the bottom moves, the skill finds the level that broke:
Impressions    → CPM        ← creative quality, audience saturation, competition

3-sec views    → Hook Rate   (3-sec views / impressions)

15-sec views   → Hold Rate   (15-sec views / 3-sec views)

Link clicks    → CTR         (clicks / impressions)

Landing page   → LP CVR      (LPV / clicks)

Purchases      → CVR         (results / LPV)
Each combination of moving signals maps to a specific cause and action:
SymptomLikely causeAction
CPM up, CTR up, CVR downWrong audience OR landing-page frictionFix LP, not ads
CPM up, CTR down, CVR flatCreative fatigue OR audience saturationRefresh creative or expand audience
CPM flat, CTR down, CVR flatCreative fatigueKill or refresh creative
CPM up, CTR flat, CVR flatCompetition or seasonalityHold or raise bid
CPM flat, CTR flat, CVR downOffer / price / LP changeFix offer, not ads
Quality ranking “Below Avg”Negative feedback / clickbaitReplace creative

When should I kill, hold, or scale a Meta campaign?

Decisions expressed as multiples of your target CPA (which the foundation skill picks up from your business context). Brand-agnostic and parametric.

Kill rules

  • Kill immediately: spent ≥ 3x target CPA with zero conversions.
  • Kill: ROAS below 0.5x break-even for 3+ consecutive days.
  • Kill or major refresh: frequency over 5 on a small audience (under 1 million) with declining CTR over 7 days.
  • Kill: ad-level negative feedback ≥ 0.2%.

Hold rules

  • Hold (48 to 72 hours): spent 2x target CPA with 1 conversion.
  • Hold and don’t optimize: spent 1.5x target CPA with steady conversions. CPA may be inflated by misattribution.
  • Hold: entity is still in Meta’s learning phase. Any change resets the clock.

Scale rules

  • Scale (20% vertical): ROAS ≥ target × 1.2 for 3+ consecutive days and new-customer rate stable.
  • Horizontal scale: vertical scaling is causing CPA to inflate over 10% per increment.
See the scale skill for the full scaling playbook.

What is a healthy hook rate, CTR, or frequency for Meta ads?

The skill compares your numbers against these 2026 benchmarks, sourced from Motion, Foxwell, Vaizle, AdManage, and Coinis datasets:
MetricHealthyStrongWeak
CPM (prospecting)10to10 to 25under $15over $30
Hook Rate25% to 35%30% to 45%under 20%
Hold Rate40% to 50%60% or higherunder 30%
CTR (outbound link)1.0% to 1.8%2.0% or higherunder 0.8%
LP CVR30% to 50%60% or higherunder 20%
CVR (purchase)1% to 3%4% or higherunder 0.5%
Frequency (prospecting)1.5 to 2.5under 23 or higher
Frequency (retargeting)4 to 63 to 57 or higher

How do kill thresholds scale with account size?

Kill thresholds scale with your spend tier so the rules apply equally to a bootstrapped DTC at 30CPAandanagencymanagedSaaSat30 CPA and an agency-managed SaaS at 300 CPL:
Account size (monthly spend)Test budget per adKill threshold
under $10K a month25to25 to 75 a day75to75 to 225 with zero conversions
10Kto10K to 50K a month50to50 to 150 a day150to150 to 450
50Kto50K to 200K a month100to100 to 300 a day300to300 to 900
$200K+ a month300to300 to 1,000 a day900to900 to 3,000

What anti-patterns does the diagnose skill prevent?

24-hour decisions on small budgets are noise. The skill enforces 3 to 5 day windows post-launch and explicitly pushes back on premature kill requests with the threshold rule.
Subscribe campaigns return revenue: 0 even when performing well. The skill uses cost_per_result against an LTV-implied target instead.
If the LP-CVR-to-purchase rate dropped, the offer or page broke. New creative will not fix it. The diagnostic tree catches this.
Resets the learning phase. The skill explicitly checks learning_stage_info before suggesting any budget mutation.
Frequency 3 on broad is fatigue starting. Frequency 3 on retargeting is normal. The skill compares frequency to audience size and funnel stage before flagging.

How do I install the diagnose skill?

Claude Code

Ships with the full plugin install.

Claude.ai & Desktop

Download adadvisor-diagnose.zip and upload via Settings, Capabilities, Skills.

Frequently asked questions

Apply the diagnostic tree on your specific entity. Pull adadvisor:get_timeseries and look at CPM, CTR, and CVR together. CPM up and CTR down points to creative fatigue or audience saturation. CPM flat and CVR down points to an offer or landing-page change. CPM up across the board is competition or seasonality. The diagnose skill walks you through it automatically.
Three unsentimental rules. Spent 3x target CPA with zero conversions, kill immediately. ROAS under 0.5x break-even for 3+ days, kill. Frequency over 5 on a small audience with declining CTR over 7 days, kill or major refresh. The skill expresses thresholds as multiples of your target so they work at any spend tier.
Hook rate is 3-second views divided by impressions, the percentage of people who stopped scrolling long enough to count as having seen the ad. Healthy is 25% to 35% for Meta prospecting. Strong is 30% to 45%. Under 20% is weak and signals the first 1 to 3 seconds need work.
Hold. At 1.5x target CPA with steady conversions, CPA may be inflated by misattribution (the conversion happened, Meta just under-attributed it). The skill’s hold rule says do not optimize at this level. Kill rules fire at 2x with only one conversion (hold 48 to 72 hours) and 3x with zero conversions (kill immediately).
Manual review picks one number at a time. The diagnose skill compares CPM, CTR, hook rate, hold rate, frequency, and CVR together against a senior-buyer cause-and-action table. It also pulls multi-day timeseries automatically and scores against your break-even ROAS rather than a generic benchmark.

Foundation

Auto-loaded first. Provides target CPA and break-even ROAS for the decision rules.

Scale

Take action when diagnose says “scale”.

Creative

Take action when diagnose surfaces creative fatigue.
Last modified on May 13, 2026