Most accounts do not have a rule for when to turn off Meta ads. They have a mood. Somebody opens Ads Manager on a Tuesday morning, sees a cost per install that looks wrong, and switches something off. By Friday they have switched off two of the three ads that were about to work and kept the one that had already stopped working.
Killing ads is the highest frequency decision in a performance account and the one least likely to be governed by anything written down. It is also the decision where being systematically slightly wrong compounds fastest, because every premature kill destroys calibration you paid for and every late kill funds an ad the audience has already stopped watching.
This is the framework we use: what has to be true before you are allowed to judge an ad at all, how to adjust for the reporting lag that makes most Tuesday morning verdicts wrong, and how to choose between the three genuinely different actions people all call "killing it".
Key takeaways
- Turning an ad off is three different decisions wearing one name: refresh the execution, pivot the psychological position, or retire the idea. Doing the wrong one is expensive in a different way each time.
- No ad qualifies for judgement until it has spent roughly three times your target cost per result and run for at least three to five days, closer to seven on iOS.
- On iOS, today's numbers are not today's performance. SKAdNetwork postbacks arrive on a delay, so read a seven day rolling view and never kill on a single day of data.
- Diagnose at zone level before ad level. One dying ad is an execution problem, four dying ads in the same psychological position is a positioning problem, and only the second one justifies abandoning the idea.
- A fading winner should have its budget cut, not its switch flipped. It still buys results more cheaply than an untested replacement does during calibration.
The three decisions hiding inside "kill it"
Before you can decide when to turn off Meta ads, you have to know which of three actions you are actually taking. They have different triggers and different costs, and most of the damage in an account comes from performing one while believing you are performing another.
Refresh
A refresh is a new execution of an idea that is still working. Same psychological position, same core argument, different hook, creator, edit or opening frame. You refresh when performance is declining but the underlying idea has not been disproven, which is the most common situation and the one people most often mistake for failure.
Pivot
A pivot is a move to a different psychological position while keeping the product and audience the same. You pivot when several distinct executions of the same idea have all failed, because at that point the evidence points at the argument rather than at the asset. Pivots need calibration time, so treat them as new work rather than as an edit.
Retire
A retirement is taking an idea out of rotation entirely, either because it has been comprehensively beaten or because the audience has seen it enough that no execution revives it. Retirement is permanent in practice but not in principle: retired concepts often work again months later against a partly refreshed audience, which is why archiving beats deleting.
What has to be true before you judge an ad
The first rule is that most ads people turn off never earned a verdict. Meta's delivery system needs roughly 50 optimisation events in a rolling seven day window to stabilise an ad set, which tells you how much data the platform itself considers the minimum for a reliable read. An individual ad judged on nine installs is being judged on noise, and turning it off is not a decision, it is a coin flip with extra steps.
Our working thresholds before an ad is eligible for any verdict:
- Spend. At least three times your target cost per result on that single ad. Below that, one unusually cheap or expensive result moves the average more than the creative does.
- Time. Three to five days minimum on Android, five to seven on iOS. New psychological positions need three to five days of calibration before the delivery system has any idea who to show them to.
- Learning state. If the ad set is still in the learning phase, cost is expected to be unrepresentative. Volatility during learning is the system working, not the creative failing.
There is one clean exception. Qualitative kills do not need thresholds. A broken hook, a wrong end card, a policy risk, an unreadable caption on mobile: take it out immediately, because you are not measuring performance, you are correcting a production error. If you want the arithmetic behind per concept minimums at different budget levels, we worked it through in our guide to how much to spend testing each creative concept.
Adjust for the lag before you adjust the account
The single biggest cause of premature kills on mobile app accounts is reading iOS numbers as though they were live. They are not. SKAdNetwork postbacks arrive on a delay, so an ad you are looking at on Tuesday is showing you a version of Sunday, with the most recent days systematically understated. Yesterday always looks like the worst day in the account, because yesterday is the least complete.
Three practical rules follow. Read a seven day rolling window rather than a daily view. Never kill anything on a single day of data, no matter how bad it looks. And when you do make a decision, exclude the most recent 48 to 72 hours from the read entirely, because those numbers will move and they will move in your favour. The mechanics are in our post on reading performance under SKAdNetwork postback delay.
When to turn off Meta ads: the decision order
Once an ad is eligible for judgement and the lag has been accounted for, work through these in order. The order matters, because each step rules out a cheaper explanation than the one after it.
- Is this a production fault? Watch the ad on a phone with the sound off. A surprising share of underperformance is a technical or craft problem rather than a strategic one, and no amount of budget fixes it.
- Is the hook rate falling or was it never there? A hook rate that started low means the creative never earned attention. A hook rate that started strong and has since declined means fatigue. These look identical in cost per result and demand opposite responses, so check hook rate before anything else.
- Is frequency doing the damage? Past 3.0 in a seven day window on cold audiences is the standard point at which costs start climbing for reasons that have nothing to do with how good the ad is. If the ad is saturated rather than weak, the answer is coverage, not deletion.
- Is it just this ad, or the whole zone? If other executions of the same psychological position are still healthy, refresh. If every ad in that position is declining together, the position is the problem and you pivot.
- Has the idea been tested properly, or just tested once? Retire an idea after several genuinely different executions have failed it, not after one. One failed ad is evidence about an ad.
Zone level reads beat ad level reads
The most valuable habit in this whole framework is refusing to diagnose a single ad in isolation. An ad is one execution of one psychological position, and the interesting question is almost never whether that specific file is working. It is whether the position it occupies is still available to you.
Group your ads by the position they take rather than by campaign or launch date, then read performance by group. One ad down inside a healthy group is an execution problem with a cheap fix. A whole group declining together while other groups hold is a positioning problem, and no amount of new hooks inside that group will rescue it. Accounts that only ever read at ad level end up producing twenty variants of a dead idea, which is the core failure mode we described in our guide to Meta ads creative fatigue for mobile apps.
Pace matters here too. In our experience gaming creative fatigues in one to two weeks at scale, health and fitness in three to four, and finance or software in five to eight. If you are in a fast vertical and your kill decisions are monthly, you are not running a framework, you are running an autopsy.
The sunk cost trap
The most expensive ad in most accounts is the one somebody spent a lot of money producing. Shoot days, creator fees and three rounds of edits create a reluctance to switch the thing off that has nothing to do with its performance, and everybody involved can feel it happening while it happens.
The production cost is gone either way. The only live question is which asset should receive the next pound of media spend, and an expensive ad that is not working has no claim on it. The reverse error is just as common and less discussed: cheap assets get killed too fast precisely because nobody minds losing them, so an AI generated concept that would have worked gets three days and a shrug while an expensive one gets three weeks and a rescue plan. Set the thresholds by budget and by data, then apply them identically regardless of what the asset cost to make.
What to do with a winner that is fading
Fading winners are where most accounts lose the most money, because the instinct is binary and the situation is not. A top performer whose hook rate has slipped is still, usually, the cheapest media you own. Its replacement has to spend three to five days calibrating before it performs at all, so switching the winner off on Monday means paying for that calibration with no support underneath it.
Cut the budget instead of the ad. Let the fading winner run at a reduced level while its replacement calibrates, then retire it once the new work is delivering. Start the replacement early, at the first sustained hook rate decline rather than when cost per result finally moves, because by the time cost moves you are already weeks late. Our creative refresh calculator works out how far ahead of that curve your spend level requires you to be.
One structural warning. Ad level kills and restarts are cheap, but ad set level changes are not. Pausing an ad set for seven days or more puts it back into the learning phase when you restart it, and large edits reset it immediately, so a tidying up session can cost you a week of stability across the account. The rules for what resets calibration are in our guide to the Meta ads learning phase.
Frequently asked questions
How long should you run a Meta ad before turning it off?
Long enough to produce a readable number of optimisation events, which on most mobile app accounts means at least three to five days and closer to seven on iOS. Meta's own delivery system needs roughly 50 optimisation events in a rolling seven day window to stabilise an ad set, so judging a single ad on a handful of results is judging noise. If the ad has not yet spent around three times your target cost per result, you do not have a verdict, you have an opinion.
When should you turn off a Meta ad that is still in the learning phase?
Almost never on cost, because cost during learning is expected to be volatile and unrepresentative. The exceptions are qualitative rather than statistical: an ad with a broken hook, a policy problem, a wrong end card or an obvious production error should come out immediately whatever the numbers say. Otherwise, turning ads off mid learning resets the calibration you have already paid for and guarantees you never see the settled performance you were trying to measure.
Is it better to pause a Meta ad or delete it?
Pause it. Pausing keeps the ad, its history and its social proof intact, so you can restart it later or reuse the post ID, whereas deleting throws that away permanently. Be aware that pausing an ad set for seven days or more sends it back into the learning phase when you restart it, so a long pause is closer to a fresh launch than to a resume. At ad level, pausing is almost always the right move.
How do you know if a Meta ad is fatigued or just having a bad week?
Look at hook rate and frequency rather than at cost per result, because cost is the last metric to move and the most affected by reporting lag. Genuine fatigue shows as a sustained decline in hook rate on the same audience with frequency climbing past 3.0 in a seven day window, and it does not recover on its own. A bad week without those two signals is usually auction seasonality or a reporting artefact, and it tends to correct within a few days.
What should you do with a winning Meta ad that is starting to fade?
Do not switch it off, harvest it. A fading winner still buys results more cheaply than an untested replacement will during its own calibration period, so cut its budget rather than killing it and let it run underneath the new work. At the same time, ship variants of the underlying idea while it still has life in it, because the concept usually has more room left than the specific execution does.
Deciding this for you
Knowing when to turn off Meta ads is mostly a discipline problem rather than an analysis problem. The rules are not complicated: earn the verdict before you deliver it, respect the lag, read at zone level, and start the replacement before the winner dies. What is hard is holding to them on a Tuesday morning when the number looks bad and somebody wants an answer.
We are a performance creative agency for mobile apps, and a good part of the job is making these calls consistently so an account is not rebuilt from scratch every time a single day looks ugly. If you want that running on your account, apply to work with us. We take a small number of mobile app clients per quarter.