Every winning ad has an expiry date. It just isn't printed anywhere.
One week it's your best ad. A few weeks later, same ad, same audience, and every sale costs twice as much.
Nothing broke. The ad got tired.
The short version
Ad fatigue is when the same people see your ad so many times that they stop responding, so every result costs more.
Meta even flags it now. When an ad's cost per result climbs above your past ads, the Delivery column in Ads Manager can show "Creative limited". Around double, it can show "Creative fatigue".
By then you've already paid for it. The goal is to see it coming.
The melting ice cube
Here's how I think about a winning ad: it's an ice cube on a warm day.
It's at its best the day it starts winning. From then on, it's melting. Slowly at first, then faster as more of your audience has seen it.
You can't stop the melt. You can only have the next ice cube ready.
Why fatigue gets expensive
Meta runs an auction for every ad slot. It rewards ads people are likely to respond to.
When people keep scrolling past your ad, Meta predicts they'll keep doing it. Your ad wins fewer auctions at the same price, so reaching people costs more. Fewer of the people you do reach click. Fewer of those buy.
It compounds, because cost per result is built from all three:
Cost per result = CPM ÷ (1,000 × CTR × conversion rate)
Fatigue nudges CPM up and click-through rate down at the same time. Two small moves become one big jump in cost per result.
The four signals
These usually show up in this order:
1. Frequency creeps up. The same people are seeing the ad more often, while reach flattens.
2. Click-through rate slides. Week over week, a smaller share of viewers click.
3. Hook rate drops. On video, fewer people make it past the first three seconds. (Here's how to track hook rate.)
4. Cost per result climbs. CPM rises, conversions slow, and the ad that carried the account starts dragging it.
The test I use: compare the ad's last seven days against its first seven days at a similar spend. If the first three signals have all moved the wrong way, it's fatigue.
Frequency on its own means little. Frequency rising while CTR falls means everything.
It might not be fatigue
Before you kill a tired-looking ad, rule out the impostors:
- Seasonality. If CPMs jumped across your whole account in November, that's the auction, not the ad.
- Broken tracking. Clicks steady but conversions near zero usually means the Pixel or Conversions API stopped reporting. (Here's how the Conversions API should be set up.)
- The landing page. A price change, a slow page, or an out-of-stock product looks like fatigue from inside Ads Manager.
Why bigger budgets burn ads faster
Fatigue is a math problem. The more you spend against the same group of people, the faster they see the ad enough times to tune it out.
Fatigue speed ≈ daily budget ÷ audience size
That's why an ad can last for months on a small budget and burn out in a few weeks after you scale it.
It's also why narrow audiences fatigue fastest. Broad targeting gives Meta more fresh people to show the ad to, so the melt slows.
Scaling spend without scaling creative just speeds up the melt.
The refresh rhythm
The fix isn't to catch fatigue faster. It's to never depend on one ad long enough to feel it.
I call it the refresh rhythm: new creative enters the account on a fixed schedule, whether or not anything looks broken.
1. Iterate before you replace. A tired winner's angle often still works. Give it a new hook, a new first frame, or a new format. Variations are cheap, and they reuse what you already proved.
2. Test new angles every week. Iterations buy you weeks. New angles buy you months. You need both, and the ratio depends on your spend.
3. Build the replacement early. The time to make an ad's successor is while it's still winning, not when Meta flags it.
4. Widen the audience. If the creative still converts but frequency is climbing, give it more people before you give it more money.
This is the whole reason I deliver creative on a fixed monthly volume. More on that in you don't have a media buying problem.
Pool rule 003Be prolific. Volume finds winners.
What not to do
- Don't raise the budget on a tiring ad. You'll just reach the same people faster.
- Don't duplicate the ad set to "reset" it. The audience has still seen the ad. You throw away the learning and keep the fatigue.
- Don't change five things at once. If you swap the hook, the offer, and the audience together, you'll never know what fixed it.
- Don't kill on day one. A bad day isn't fatigue. My rules for when to call it are in the kill rules I actually use on Meta.
Quick answers
How long does a Facebook ad last before fatigue? There's no fixed number. It depends on budget, audience size, and how strong the creative is. Watch the signals, not the calendar.
What frequency is too high? It depends on the account. The trend matters more than the number. Rising frequency is only a problem when CTR and cost per result move with it.
Is creative fatigue the same as ad fatigue? Practically, yes. "Creative fatigue" is the term Meta uses in Ads Manager.
Does Advantage+ prevent fatigue? Broad, automated delivery slows it by reaching more new people. It can't stop the same creative from wearing out.
Can an old winner come back? Sometimes. After a few months off, a past winner can work again, especially with a fresh hook.
The one-line version
Ads don't die suddenly. They melt. Keep the next one in the freezer.