There's a bad habit in performance marketing that costs Shopify advertisers a lot of money: killing creatives based on gut feel, then replacing them with worse creatives based on the same gut feel.
Creative fatigue is real, but it doesn't show up the way most operators think it does. CTR doesn't fall off a cliff. CPMs don't suddenly double. The signals are subtle, mixed, and easy to misread. This guide is the rule set we use to call fatigue accurately — early enough to react, late enough not to kill winners that still have legs.
What fatigue actually looks like
Creative fatigue isn't a single metric going bad. It's a pattern across several:
- Frequency climbing past your audience's tolerance
- CTR drifting down, usually 7-day rolling
- CPM rising as Meta works harder to find people who haven't seen the ad
- CPA inflating as a downstream consequence
- Hook rate (3-second video views / impressions) dropping
Any one of these on its own is noise. Two or three together is signal.
The 7-day rolling window rule
We don't make fatigue calls based on yesterday's data. Meta's auction is volatile enough day-to-day that a single bad day can look like a fatigue signal when it's actually just a soft Tuesday.
The window we use:
- Primary: 7-day rolling, compared to the prior 7 days
- Secondary: 14-day rolling for slow-spending campaigns
- Never: Single-day comparisons. Ignore them.
A creative is fatiguing when the trend across both windows is consistent.
Threshold rules we use
Here's the rule set we apply across most Shopify accounts. Adjust to your category, but the relative thresholds tend to hold.
Frequency
- Under 2.0 in a 7-day window: healthy
- 2.0-3.0: monitor
- 3.0+: refresh creative or expand audience
- 4.0+: kill or pause
CTR (link click-through rate)
- Drop of 15-25% versus prior 7 days: monitor
- Drop of 30%+ versus prior 7 days: confirmed fatigue
- Drop of 50%+ in a single day: ignore — that's auction noise
CPM
- Up 10-20% week over week: normal volatility
- Up 30%+ sustained: fatigue contributing
- Up 50%+ sustained: structural issue, not just creative — check audience saturation and competitor activity
Hook rate (3-second views / impressions)
- Above 30%: strong, ride it
- 20-30%: typical for proven creative
- Below 15%: hook is failing — refresh first 3 seconds before killing the whole ad
- Drop of 25%+ from baseline: fatigue signal
CPA
- Inflating 15%+ over the prior 7 days at constant spend: confirmed fatigue
- Inflating only when budget scales: not fatigue, that's scaling tax
- Volatile with no trend: don't act
What to do when fatigue is confirmed
Don't immediately kill the ad. Run this checklist first:
-
Is the audience saturated? Check reach versus addressable market. If you've reached 30%+ of your target audience in 30 days, the creative isn't the only problem. Expand audience or accept the saturation.
-
Is hook rate the issue or full-watch? If hook rate is fine but watch-through is dropping, the body of the ad is fatiguing. Recut, don't replace.
-
Has the offer changed? Sometimes the "creative" looks fatigued but it's actually a competitor's promo eating your conversion rate. Check for exogenous causes before you blame the ad.
-
Is it across all placements? A creative can fatigue on Reels but still work in feed. Restrict placements before killing entirely.
-
What does the comment section look like? A fatigued creative often shows shifted sentiment — fewer engaged comments, more "saw this 100 times" energy. That's social proof of saturation.
Refresh strategy: edit vs. replace
When fatigue is confirmed, the question is whether to edit or replace.
Edit when:
- Hook rate dropped but watch-through and CTR were strong
- The product/offer is still working — only the framing is tired
- You have an obvious A/B variant available (different opening line, different aspect ratio, different first frame)
Replace when:
- Multiple metrics fatigued together
- The creative is over 60 days old
- You've already edited it once and it fatigued again
- The underlying angle (problem, hook, audience) feels stale to you watching it cold
Fatigue patterns by creative type
Static UGC reviews. Tend to fatigue at 45-60 days. Hook rate stays high until it doesn't. Replace, don't edit — the format is the format.
Founder-story videos. Often outperform their fatigue signal. Frequency can push to 4+ before performance breaks because the content feels native. Watch CPA, not frequency.
Studio product demos. Fatigue fast — 21-30 days typical. The polished feel works against them on repeat viewing. Cycle through 4-6 demos rather than scaling one.
Carousel ads. Hard to read fatigue on. Use the campaign-level signal (frequency, CPA) more than the ad-level signal.
Dynamic product ads. Don't fatigue the same way — they're auto-rotating product images. Watch the catalog feed quality, not creative fatigue.
Common mistakes
Killing on day-one CPA. Day one is noise. Wait for 5-7 days unless you're losing money so fast you have to.
Replacing all creatives at once. This resets learning across your campaign. Refresh 2-3 at a time on a rolling basis.
Refreshing during a scaling phase. If you're scaling budget, don't also change creatives. You won't know what caused the performance shift. Sequence the changes.
Ignoring frequency in retargeting. Retargeting audiences are small. Frequency hits 5+ fast. Refresh retargeting creative more often than prospecting.
Trusting Meta's "fatigue" warnings. They're directionally useful but conservative. By the time Meta flags fatigue, you should have already moved.
Build a refresh calendar
We keep a simple Notion board for each client account with three columns:
- In rotation: currently running, performance metrics
- In production: being shot or edited, expected ready date
- In testing: new concepts running in ABO test campaigns
Every Monday, we review which "in rotation" creatives are showing fatigue signals, which "in production" can move into rotation, and what we need to brief next.
The goal is never to be in a position where you need to kill a creative and have nothing to replace it with. That's how operators end up scaling dead winners — not because the creative is good, but because the alternative is worse.
What to do this week
Pull a 30-day report on every active creative. Calculate week-over-week change in frequency, CTR, hook rate, and CPA. Anything with two or more red signals goes on the refresh list. Anything with one signal goes on the watchlist.
Then make sure you've got 4-6 new concepts in production. Creative pipeline is the actual bottleneck for most accounts — not knowing when to kill ads.
For more, see our Meta CBO vs ABO guide, our framework for hook rate benchmarks by vertical, and the TikTok ads creative volume framework for an adjacent take on cross-platform creative cadence.