Ad fatigue watch
Pott Candles
13 Oct to 19 Oct

No ads fatigued

Every live ad with real spend, last 7 days (13 Oct to 19 Oct) against the 28 days before. Each ad is run through the same 8 checks. The cards show what tripped and what to do, every ad opens to a 21-day trend, and the rules behind the stages are at the bottom.

Ads checked
7
11 too new, 194 too small
Fatigued
0
cut today
Close / highly likely
0
0 refresh this week · 0 brief now
Spend on flagged ads
£0
0% of £26,246 this week
Account ROAS
1.77x
was 1.70x
Account CPM
£19.90
was £19.38

Flagged ads

Nothing flaggedNo ad reached Highly likely or above. 1 on Monitor. 11 newer ads need a week of history before they can be judged.

Every ad, every check

All 7 ads with real spend, biggest first. Click an ad to see its last 21 days. Includes 1 Meta has already pulled spend from.

AdVerdictClick rateHook rateHold rateCost to reachAudience wearCost per saleReturn vs bestPurchases
Ad 922 ▾
£1,604 · 1.48x
Monitor · Meta already pulled backClearClearClearClearClearClearClearNo data
Ad 934 ▾
£829 · 1.24x
None · NothingClearNo dataNo dataClearClearClearClearNo data
Ad 940 ▾
£517 · 1.03x
Monitor · Meta already pulled backClearNo dataNo dataClearClearClearStrongNo data
Ad 837 ▾
£488 · 2.67x
None · NothingClearNo dataNo dataClearClearClearClearClear
Ad 964 ▾
£375 · 1.88x
None · NothingClearClearClearClearClearNo dataNo dataNo data
Ad 915 ▾
£318 · 2.77x
None · NothingClearClearClearClearClearClearClearClear
Ad 944 ▾
£302 · 3.04x
None · NothingClearNo dataNo dataClearClearClearClearClear

Too new / too small

Labelled separately, never shown as None. Too new = under a week of baseline, judged from next week. Too small = under £300 and 3% of spend this week, so it cannot leak enough to matter.

AdLabel7-day spend
Ad 1000Too new£7,322
Ad 983Too new£1,356
Ad 1020Too new£997
Ad 995Too new£875
Ad 1008Too new£729
Ad 1006Too new£601
Ad 1025Too new£526
Ad 1011Too new£522
Ad 973Too new£483
Ad 1010Too new£344
Ad 970Too new£336
194 ads too small to judge (£7,720 between them this week)
AdLabel7-day spend
Ad 420Too small£283
Ad 1035Too small£280
Ad 1022Too small£253
Ad 925Too small£233
Ad 961Too small£227
Ad 1007Too small£220
Ad 942Too small£218
Ad 951Too small£208
Ad 967Too small£191
Ad 968Too small£187
Ad 779Too small£172
Test - Ad 1033 | Video | Fir Starter Pack | Pine Disinfectant Real Christmas Tree | Starter Pack DemoToo small£172
Ad 875Too small£168
Ad 588Too small£165
Ad 945Too small£155
Test - Ad 1028 | Image | Fir Grand | Winning Quote New Grand Image | Review CardToo small£145
Test - Ad 1029 | Image | Fir | True To Life Review | Story Informal PhotoToo small£144
Ad 960Too small£142
Ad 966Too small£142
Test - Ad 1027 | Image | Fir Starter Pack | Short Review Smells Like A Fir Tree | Review CardToo small£141
Test - Ad 1030 | Image | Fir | Not Fake Review | Story LifestyleToo small£140
Ad 997Too small£139
Ad 928Too small£129
Test - Ad 1032 | Video | Fir | Scent Led | Product VideoToo small£127
Ad 979Too small£125
Ad 1016Too small£117
Test - Ad 1031 | Video | Fir | Founder Story | Founder StoryToo small£115
Ad 974Too small£106
Ad 852Too small£103
Ad 962Too small£101
Ad 990Too small£98
Ad 926Too small£98
Ad 1024Too small£84
Ad 936Too small£79
Ad 821Too small£79
Ad 927Too small£77
Ad 982Too small£77
Ad 923Too small£69
Ad 1013Too small£66
Ad 916Too small£66
Ad 578Too small£64
Ad 885Too small£63
Ad 861Too small£62
Ad 1004Too small£62
Ad 988Too small£62
Ad 920Too small£55
Ad 1003Too small£49
Ad 584Too small£49
Ad 583Too small£47
Ad 977Too small£47
Ad 865Too small£41
Ad 1012Too small£37
Ad 950Too small£37
Ad 902Too small£33
Ad 981Too small£33
Ad 580Too small£32
Ad 1014Too small£31
Ad 975Too small£31
Ad 321Too small£30
Ad 907Too small£30
Ad 582Too small£30
Ad 1001Too small£27
Ad 994Too small£27
Ad 918Too small£27
Ad 972Too small£27
Ad 1005Too small£24
Ad 946Too small£24
Ad 572Too small£23
Ad 939Too small£21
Ad 941Too small£20
Ad 983Too small£20
Ad 943Too small£20
Ad 978Too small£19
Ad 573Too small£19
Ad 952Too small£19
Ad 948Too small£19
Ad 931Too small£19
Ad 1039Too small£18
Ad 577Too small£18
Ad 929Too small£18
Ad 947Too small£18
Ad 930Too small£18
Ad 984Too small£17
Ad 1019Too small£17
Ad 933Too small£17
Ad 996Too small£16
Ad 919Too small£16
Ad 452Too small£16
Ad 574Too small£15
Ad 991Too small£15
Ad 1021Too small£15
Ad 953Too small£15
Ad 959Too small£15
Test - Ad 869 | Video | Seasalt | Hook 2 Object Led | UGCToo small£14
Ad 949Too small£14
Ad 913Too small£14
Test - Ad 869 | Video | Seasalt | Hook 4 No Compromise | UGCToo small£13
Ad 963Too small£13
Ad 924Too small£12
Ad 938Too small£10
Ad 585Too small£10
Ad 579Too small£9
Ad 1015Too small£9
Ad 575Too small£9
Ad 976Too small£9
Ad 1017Too small£9
Ad 932Too small£8
Ad 937Too small£8
Ad 1026Too small£8
Ad 910Too small£8
Ad 586Too small£8
Ad 1023Too small£8
Ad 980Too small£8
Ad 687Too small£7
Ad 986Too small£7
Ad 458Too small£7
Ad 992Too small£6
Ad 900Too small£6
Ad 904Too small£6
Ad 989Too small£5
Ad 1002Too small£5
Ad 376Too small£5
Ad 1009Too small£4
Ad 882Too small£4
Ad 998Too small£4
Ad 935Too small£4
Ad 987Too small£4
Ad 985Too small£3
Ad 917Too small£3
Ad 581Too small£3
Ad 993Too small£3
Ad 965Too small£3
Ad 587Too small£3
Ad 957Too small£3
Ad 958Too small£3
Ad 1043Too small£3
Ad 1042Too small£2
Ad 1038Too small£2
Ad 999Too small£2
Ad 1018Too small£2
Ad 921Too small£2
Ad 914Too small£2
Ad 912Too small£2
Ad 969Too small£2
Ad 973Too small£2
Ad 576Too small£1
Ad 375Too small£1
Ad 1000Too small£1
Ad 454Too small£1
Ad 892Too small£1
Ad 979Too small£1
Ad 971Too small£1
Ad 898Too small£1
Ad 974Too small£1
Ad 995Too small£1
Ad 903Too small£1
Ad 467Too small£1
Ad 896Too small£0
Ad 1036Too small£0
Ad 899Too small£0
Ad 455Too small£0
Ad 1041Too small£0
Ad 468Too small£0
Ad 268Too small£0
Ad 448Too small£0
Ad 470Too small£0
Ad 893Too small£0
Ad 466Too small£0
Ad 459Too small£0
Ad 911Too small£0
Ad 322Too small£0
Ad 906Too small£0
Ad 461Too small£0
Ad 463Too small£0
Ad 905Too small£0
Ad 462Too small£0
Ad 908Too small£0
Ad 374Too small£0
Ad 453Too small£0
Ad 377Too small£0
Ad 457Too small£0
Ad 894Too small£0
Ad 451Too small£0
Ad 1011Too small£0
Ad 456Too small£0
Ad 901Too small£0
Ad 994Too small£0
Ad 1037Too small£0
Ad 895Too small£0
Ad 897Too small£0
Ad 909Too small£0
Ad 269Too small£0
Ad 449Too small£0
Ad 469Too small£0

How a stage is decided

Every ad goes down the same path. The gates at the top decide whether an ad can be judged at all; the checks in the middle measure it; the ladder at the end names the stage, and each stage is defined by the one action it asks for.

1
Is it still taking real money?
7-day spend of £300+ or 3%+ of account spend.
NoToo small
YesCarry on
2
Is there a baseline to compare against?
At least 7 days and 5,000+ impressions in the 28 days before this week. Under 21 days of baseline the ad is scored with low confidence: it can reach Close, never Fatigued, because launch-period numbers reverse too often to cut on.
NoToo new
YesCarry on
3
Is Meta still spending on it?
Daily spend this week at 50%+ of its baseline daily spend. Below that Meta has already moved the money, so nothing is leaking.
NoMonitor · pulled back
YesCarry on
4
Run the eight checks and roll them up into three families
Each check scores Moderate or Strong against the bars in the table below. A family takes the strongest score of its checks, so two related signals never count twice. Attention and Audience are leading (no attribution lag); Return is lagging. Click rate and CPM are judged net of the account's own move; hook and hold against the ad's own baseline; frequency against a ceiling of 2.5 / 3 for prospecting and 5 / 8 for retargeting ad sets.
Attention
Click rate · Hook rate · Hold rate
Leading. Fewer people react to the creative.
Audience
Cost to reach · Audience wear
Leading. The same people are being reached, at a rising price.
Return
Cost per sale · Return vs best · Purchases
Lagging. The money has started to follow. 'Hard' = Strong, or Moderate on an ad with 10%+ of spend. Best-week on its own, with this week's ROAS and purchases not falling, never counts as hard.
5
Is it over-scaled rather than tired?
Daily spend at 150%+ of baseline, return down, and no leading family tripped. That is diminishing returns from scale: a different fix.
NoMonitor · over-scaled
YesCarry on
5b
Is it the site, not the ad?
Purchases collapsed (zero on an ad normally doing 5+ a week, or down 60%+ on one doing 10+) while click rate held. People are still clicking and not buying, which points at stock, the landing page or the pixel, never the creative.
NoMonitor · check site
YesCarry on
6
Is it below the breakeven line?
This week's ROAS against 2.46x from the margin sheet. Not the account average: that is dragged down by the big spenders themselves and lifted by retargeting and subscriber campaigns, so cold ads sit below it structurally. Below breakeven unlocks Fatigued; above it the worst outcome is Close.
7
Pick the stage: first match from the top wins
Fatigued · Cut today
Below breakeven and Return hard and at least one leading family tripped. Or: below breakeven, 10%+ of spend and under half its own best week, even if this week looks flat (slow decay). Withheld, stopping at Close, for ads under 21 days of baseline unless they are a 10%+ spender below breakeven, and for any client whose breakeven is not set from the margin sheet.
Close · Refresh this week
Return hard but still above breakeven. Or a Strong leading family with a Moderate return fall. Or purchases down 50%+ with spend held.
Highly likely · Brief the replacement
Return not yet hard, but both leading families tripped, or one of them Strong. The money has not moved; the warning signs have.
Monitor · Watch
One Moderate signal on its own, or Return moving with no leading family agreeing (likely attribution lag), or audience-not-creative: ad set frequency high while clicks and hooks hold, so the fix is a broader audience, not a new cut.
None · Nothing
Clean or improving.
8
Has it persisted?
Compared with the ledger entry from about a week ago, never with yesterday's run (three daily runs share six of seven days, which is one week read three times). A leading family still tripped a week on lifts Monitor to Highly likely; a Return family still tripped lifts Highly likely to Close. Persistence can confirm, never create, an alert.
9
Is it the whole account, not this ad?
If more than half of the material ads trip the same family on the same day, the run is labelled account-wide and Fatigued and Close are demoted to Monitor. Pott, 18 Jul 2026: ROAS fell on every ad with clicks, CPM and frequency flat, and the cause was site conversion rate, not creative.

The eight checks

What each one measures, where it trips, and why it earns a place.

CheckFamilyWhat is measuredTrip wireLagWhy it is in
1. Click rate
Are fewer people clicking?
Attention Link clicks / impressions, last 7 days vs the 14 days before Down 10% = moderate, 20% = strong. No lag The first thing to go when an audience has seen a creative enough. Moves days before revenue does.
2. Hook rate
Are fewer people stopping on the video?
Attention 3-second video views / impressions, videos only, vs the ad's own baseline Down 10% = moderate, 20% = strong. No lag Same signal as click rate for video, read earlier in the scroll. Judged against the ad's own baseline, not the account's, because the account hook rate moves with the image/video mix. Counted in the same family so a video does not score twice.
3. Hold rate
Of those who stopped, are fewer staying?
Attention ThruPlays / 3-second views, videos only, vs the ad's own baseline Down 10% = moderate, 20% = strong. No lag A video can still stop people and lose them two seconds later once they recognise it. Hold rate catches that before click rate does.
4. Cost to reach
Is it costing more to show this ad?
Audience Ad CPM move minus the account's CPM move over the same windows Up 15% = moderate, 25% = strong, net of the account. No lag Meta charges more to keep showing a creative its audience is ignoring. Judged net of the account so a Q4 auction rise does not flag every ad.
5. Audience wear
Are the same people seeing it again and again?
Audience Ad set 7-day frequency, this week vs last week Rising 10%+ and above 2.5 = moderate, above 3 = strong. No lag Ad set frequency, not ad frequency: in a broad set the audience wears out across the whole set. Reach falling with spend and CPM flat is the same thing, so reach is not a separate check.
6. Cost per sale
Is each sale costing more?
Return Spend / purchases this week vs the baseline. Read only if this week spent 3x the baseline cost per sale, and only if the shortfall is unlikely to be chance Up 20% = moderate, 35% = strong, and the chance of this few sales at the baseline rate must be under 20% / 10%. Needs 8+ baseline purchases. Not counted if ROAS rose (bigger baskets). Lags 1-3 days The money signal, read as cost per sale rather than ROAS because ROAS also moves with basket size, which is a product-mix question. It arrives late (attribution lag), so on its own it never makes the top stage. The chance test stops one missing sale on a 5-a-week ad reading as decay.
7. Return vs best
Is it far below its own best week?
Return This week's ROAS as a share of the ad's best rolling 7 days (promo weeks excluded) At 70% of best = moderate, 50% = strong. Best week needs 10+ purchases. Lags 1-3 days Catches slow decay. Pott Ad 707 fell 3.0x to 1.1x without any single week tripping a week-on-week bar. BFCM weeks are excluded or every ad reads 'off its best' in December.
8. Purchases
Have purchases collapsed?
Return Purchases per week vs the baseline weekly rate Down 30% = moderate, 50% = strong. Not scored under 5 recent purchases. Lags 1-3 days Volume guard so a ROAS fall driven by one big order does not read as fatigue. The floor stops 4 vs 6 purchases reading as a 33% collapse.

Why the rules are shaped this way

Only material ads, and only while spend is held
An ad Meta has already pulled money off cannot leak more, and a £40 ad cannot leak enough to matter. The watcher exists to stop spend leaking, so it only looks where the money is.
Families, not a signal count
Reach down with spend and CPM flat is frequency up by another name, and click rate and hook rate move together on video. Counting them separately would let one cause score three times.
Net of the account
CPM and ROAS are judged against the account's own move over the same windows. A Q4 auction rise or a site-wide conversion dip then cancels out instead of flagging every ad at once.
Return alone never makes the top stage
Purchases attribute back over 1-3 days, so the newest days always look worse than they are. A return fall needs a leading family to agree before anything is cut.
Breakeven, not the account average
Account average ROAS is the wrong line: the big spenders drag it down and retargeting lifts it. The bar is each client's breakeven from the margin sheet (2.46x here).
Own best week catches slow decay
Pott Ad 707 fell from 3.0x to 1.1x without any week tripping a week-on-week bar. Promo weeks (BFCM) are excluded from 'best', or every ad reads as off its best in December.
Age is shown, never a trigger
Pott Ad 153 ran eight months as the number two ad by purchases. Days running is on the card for context and as a sort tie-breaker; it never moves a stage.
A chance test on small numbers
Most ads do 2 to 10 sales a week, and one sale either way swings cost per sale by 30 to 50%. At the baseline rate this week's spend should have bought N sales; if seeing this few is more than 20% likely by chance, the fall is not counted. Below 5 purchases the return checks are also marked low confidence.
Cost per sale before ROAS
ROAS falls when baskets shrink and rises when they grow, and neither is the creative's doing. The return check reads cost per sale, and a cost-per-sale rise with ROAS up is logged as bigger baskets, not fatigue. ROAS keeps one job: the breakeven line.
A four-week baseline
The ad's normal is the 28 days before the judged week, so one odd fortnight does not become the baseline and weekday mix is balanced. Under 21 days of baseline the ad is low confidence and stops at Close, unless it is a big spender below breakeven, because that leak does not depend on the baseline.
Check the site before the creative
If purchases collapse while click rate holds, the ad is still doing its job and something after the click is broken: stock, the page or the pixel. That ad is routed to a site check, not a refresh, and the September 2026 backtest showed those ads recovered on their own.
Retargeting wears slower
A warm audience can see an ad five to eight times before it tires; a cold one two to three. Retargeting ad sets are spotted by name (never by the word 'warm', because Pott's prospecting campaigns are called Cold & Warm) and get the higher ceilings.
Persistence across non-overlapping data
Escalation compares with the ledger from about a week earlier, never with yesterday's run. Three consecutive daily runs share six of seven days.
Audience versus creative
Ad set frequency is used, not ad frequency. If the set is worn but every ad's clicks and hooks hold, the fix is a broader audience or a lower minimum; a new cut on its own will not help.
Generated 20/10/2026, 19:53:36 by scripts/meta-fatigue-watch. Read-only: nothing in the ad account was changed.