Fatigue monitor
Skill foxgeeek/adskills/.claude/skills/meta-ads/fatigue-monitor
Detect Meta Ads creative fatigue before CTR collapses. Compares current vs previous window insights, flags ads with CTR drops above threshold or frequency cap breaches. Returns an HTML report with sorted fatigue list. Triggers on prompts about creative fatigue, CTR decay, frequency checks, or rotating stale creatives.From its SKILL.md
npx -y skills add foxgeeek/adskills --skill fatigue-monitorAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
1.8 KB, 394 tokens by cl100k_base, as published. Nobody here has run it
Meta Ads — Fatigue Monitor
When to use
- "Identifica criativos com fadiga nos últimos 7 dias"
- "Quais anúncios tão queimando a audiência?"
- "Check frequency cap breaches in the acme account"
- "CTR dropping ads — last 14 days"
Inputs
- account ref (required)
- adset (optional — scope to a single ad set; omit for full account)
- ctr-drop threshold in % (default 20, from
config/thresholds.json) - frequency cap (default 3.5, from
config/thresholds.json) - lookback days (default 7)
Logic
For each ad:
- Fetch insights for
lookbackdays (current window) - Fetch insights for previous same-length window
- Compute CTR delta:
(current.ctr - previous.ctr) / previous.ctr * 100 - Flag if:
- CTR delta ≤
-ctrDropPct(e.g., dropped 20%+) - OR current frequency ≥
frequencyCap
- CTR delta ≤
Output
- HTML report sorted by worst CTR drop first
- Columns: ad id/name, status, current CTR, previous CTR, delta, frequency, spend, flags
- Markdown summary for Slack
- Printed terminal summary:
N / M ads flagged
Invocation
adskills meta fatigue \
--account acme \
--lookback 7 \
--ctr-drop 20 \
--frequency 3.5
Guardrails
- Never pauses ads automatically — report only. User must trigger pause separately.
- Ads with zero impressions in both windows are skipped silently
- If
previous.ctr = 0, delta is reported as 0 (cannot compute ratio)
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.