Facebook Ads Not Spending? A Diagnostic Checklist, In Order

Budget sitting untouched is not one problem, it is about eight, and they need checking in a specific order. Start at the wrong end and you will spend a week tuning bids on a campaign that was never eligible to deliver.

Disclosure. We manage paid social accounts, so weigh the recommendation at the end accordingly. Where a figure below comes from Meta we say so; where it comes from the industry repeating itself, we say that too, because on this topic the sources disagree with each other more than usual.

First, is it delivery or enforcement?

Before you touch a single setting, rule out the thing no amount of optimising will fix. Ads that do not spend because an asset is restricted look a lot like ads that do not spend because the auction is not clearing.

Check these three, in this order:

If any of those is your answer, stop reading and go fix it. Everything below assumes your assets are in good standing and your ads are approved.

The checklist, in order

Work down the list. Most stalled campaigns fail on one of the first three, and the later items are pointless until the earlier ones are clean.

Diagnostic order. Later checks mean nothing if an earlier one is failing.
#CheckWhat a failure looks like
1Asset standing and ad approvalEnforcement notice, or ads in review or rejected
2Payment method liveFailed charge, expired card, billing threshold hit
3Schedule and statusAd set paused, set to start later, or already ended
4Account spending limit“Spending limit reached”, and delivery stops account-wide
5Audience sizeEstimated reach very small, or ad sets overlapping
6Bid or cost capCap set below the clearing price, so you lose every auction
7Budget vs target costDaily budget too small for your target cost per result
8Learning phase and conversion volumeLearning Limited, or too few events to model on
The eight checks, split into the two kinds of problem Checks one to four are on-or-off problems: asset standing and ad approval, payment method, schedule and status, account spending limit. Checks five to eight are auction economics: audience size, bid or cost cap, budget against target cost, and learning phase and conversion volume. The first group must be clean before the second is worth looking at. 12 34 56 78 Asset standing and ad approval Payment method live Schedule and status Account spending limit Audience size Bid or cost cap Budget vs target cost Learning phase and volume Switched off, blocked, or out of money Auction economics, where the advice argues
The top group is on or off. Nothing in the bottom group is worth tuning until it is clean.

Items 1 to 4 are simple on-or-off problems. Something is switched off, blocked, or out of money. Items 5 to 8 are auction economics, and that is where the published advice starts arguing with itself.

Budget floors, where the sources disagree

You will find confident rules for how big a daily budget must be, relative to what you will pay per result. They do not agree.

Published budget guidance. Neither multiplier traces to Meta documentation.
RuleOn a RM50 target cost per resultStatus
Daily budget at least 10× target cost per resultRM500/dayThird-party
Daily budget around the cost goalRM250/dayThird-party
At least US$5 to 10 a day per ad set for testingThird-party

A factor-of-two gap on the main budgeting rule is not a rounding error. We are not going to average them into a number that sounds more certain than the evidence is.

Here is what survives the disagreement, and it is worth more than either multiplier. A daily budget that cannot buy several results a day cannot produce a stable signal. If your target is RM50 a result and you spend RM60 a day, you are asking the system to optimise on roughly one event. It will deliver erratically or not at all. No bid change fixes arithmetic.

Meta’s own learning phase guidance backs the direction, even without a number. It says that “if you set a very small or inflated budget, the delivery system has an inaccurate indicator of the people for whom the delivery system should optimise.”

Audience size, three numbers for three things

Three thresholds get passed around, and people quote them interchangeably even though they answer different questions.

  • 1,000 people. Described as the minimum for an ad to deliver at all.
  • 200,000. Described as the level below which Learning Limited becomes a risk.
  • 1 million or more. Described as a sensible starting breadth for conversion campaigns.

These are not rival claims about the same thing, which is exactly why quoting one as “the minimum audience size” misleads people. All three are third-party, and we could not trace any of them to Meta documentation we could read.

Here is the reliable version. Narrow targeting in a market the size of Malaysia pushes costs up fast and cuts the number of auctions you can enter. Broad targeting with strong creative usually delivers more cheaply than narrow targeting with weak creative. And if two of your ad sets chase the same people, they are bidding against each other with your money.

The learning phase and the 50 figure

The most-quoted number in Meta advertising is that an ad set needs about 50 events in a week to leave the learning phase. Updated 13 August 2026: we have now read Meta’s own page and can quote it.

Meta says ad sets leave the learning phase once they can deliver stably, and that this “usually occurs after about 50 results in the week after the ad set’s last significant edit.”

Two details matter in that sentence. Meta says results, not “optimisation events”, which is how the figure usually gets repeated. And Meta frames it as what usually happens, not a threshold you unlock at exactly 50.

What follows is the useful part. The result is whatever you chose as your goal, such as a purchase, a lead or an install. If your conversion event realistically cannot fire around 50 times a week at your budget, the problem is which event you picked, not your bid. Optimising for a rarer event than your volume supports is one of the most common reasons a well-funded campaign under-delivers.

The practical move is to optimise for a more frequent event further up the funnel, and to accept you are buying a weaker signal in exchange. That is a trade, not a fix.

One more thing Meta documents here, and most guides skip. It tells you to avoid high ad volumes, because when you run many ads and ad sets the system learns less about each one.

What resets learning

Significant edits restart the learning phase. Meta says so directly, and it names “frequent budget changes (which can cause an ad set to re-enter the learning phase)” among the things to avoid.

What Meta does not publish is a percentage. The thresholds you see quoted come from elsewhere, and they disagree.

Budget-change thresholds said to reset learning. All third-party.
ClaimSource type
Budget increases over 30% reset learningThird-party
Increases over 20% in one change trigger re-learningThird-party
Raise in 15 to 20% steps every few daysThird-party

Reported consistently as resetting learning whatever the percentage: changes to targeting, bid strategy, optimisation event, and creative.

The safe reading is the conservative one. If nobody knows whether the line is 20% or 30%, move in steps below both. Raising budget slowly costs you a few days. Resetting learning on a campaign that had just settled costs you a lot more.

Raising budget without resetting learning

The section above leaves you with a genuine problem. You need more spend, budget changes can push an ad set back into learning, and nobody outside Meta knows where the line is. Here is how we handle that, labelled as practice rather than policy, because Meta publishes no percentage.

  • Move in steps below the lowest quoted threshold. The claims in circulation are 20% and 30%. Staying under the smaller one costs a few extra days and removes the question entirely.
  • Change one thing per step. A budget rise and a targeting tweak on the same day means you cannot tell which caused what happened next, and targeting changes are reported to reset learning at any size.
  • Wait for the ad set to settle before the next step. Meta ties the learning window to the period after the last significant edit, so consecutive edits keep restarting the clock you are waiting on.
  • Scale by duplication only when you accept the cost. A duplicate starts its own learning phase from zero. Sometimes that is worth it to keep a proven ad set untouched; it is not a way to avoid learning, it is a way to move it somewhere else.
  • If you need spend up sharply, do it once and deliberately. One large increase, then leave it alone for the week. Repeated increases are the pattern Meta explicitly names, and they cost more than a single larger step.

The honest bit. None of this makes a budget increase free. It is a way of paying the cost once, on purpose, at a moment you chose, instead of paying it repeatedly without noticing.

Bid caps and cost caps

This is the most direct way to stop delivery completely, and you will not see it unless you go looking.

Set a bid cap of RM8 when the auction is clearing at RM15 and you lose essentially every auction. Spend does not slow down. It stops. The campaign looks broken, and it is doing exactly what you told it.

Reported practice is to remove caps during the learning phase, then bring cost controls back once you have stable cost data to base them on. That guidance is third-party, but the mechanic behind it is not in doubt. A cap below the clearing price is an instruction not to buy.

If spend stopped suddenly right after you added a cost or bid cap, that is your answer. No other check needed.

“Spending limit reached”

An account spending limit is a hard ceiling you or someone on your team set. When it is reached, delivery stops across the whole account, not just one campaign.

It catches people because it gets set once, often months earlier, then forgotten. Everything looks right at campaign level. Nothing delivers. The tell is that every campaign stopped at the same moment, rather than one slowly degrading.

Do not confuse it with the billing threshold, which is how much you run up before Meta charges your card. A failed charge at that threshold also stops delivery, but the fix is the payment method, not the limit.

Which limits exist, who sets each one, and how they move is covered in the ad account spending limit.

Approved but not running

Here is a common and specific case. The ad shows as approved and still does not deliver. Approval means it passed review. It does not mean it won an auction.

Work through these in order. Is the ad set active and inside its schedule? Is the account spending limit hit? Is the audience big enough to have auctions to enter? Is a cap sitting below the clearing price? Is the budget big enough to buy more than a fraction of a result per day?

If all of that is clean and it still does not deliver, the usual remaining cause is that the ad is losing auctions on quality. The creative is not earning engagement, so the system stops showing it. That is a creative problem dressed up as a delivery problem, and the fix is new creative, not a higher bid.

FAQ

Why are my Facebook ads not spending the budget?

Check in this order. Asset standing and ad approval, payment method, schedule, account spending limit, audience size, bid or cost cap, budget against your target result cost, and conversion volume. Most stalled campaigns fail on one of the first four, which are on-or-off problems rather than economic ones.

My ads are approved but not running. Why?

Approval only means the ad passed review. Delivery still depends on winning auctions. The usual causes are an account spending limit, a cap set below the clearing price, an audience too small to generate auctions, or a budget too small to buy a meaningful number of results.

How much budget do Facebook ads need to deliver?

The published rules disagree by a factor of two. Some say 10× your target cost per result, others about 5×, and neither traces to Meta documentation. What survives the disagreement is the mechanic. A budget that cannot buy several results a day cannot produce a stable signal. Meta’s own guidance warns that a very small budget gives the delivery system an inaccurate indicator.

Is 50 conversions a week a real Meta rule?

Close to it, and we have now read the page. Meta says ad sets usually leave the learning phase after “about 50 results in the week after the ad set’s last significant edit”. Note the wording. Meta says results, not optimisation events, and says usually rather than always.

Does increasing budget restart the learning phase?

Meta names frequent budget changes as something that can push an ad set back into learning. It publishes no percentage. The 20% and 30% thresholds you see quoted are third-party and disagree, so move in steps below both. Targeting, bid strategy, optimisation event and creative changes are all reported to reset learning whatever their size.

My spend stopped suddenly across every campaign. What is that?

Everything stopping at once points at an account-level cause, not a campaign one. An account spending limit reached, a failed payment at the billing threshold, or enforcement on an asset. Campaign settings are the wrong place to look.

How do I raise budget without resetting the learning phase?

Meta publishes no percentage, so there is no threshold to stay safely under. What removes the question is moving in steps below the lowest figure anyone quotes, changing one thing at a time, and letting the ad set settle between steps — because Meta ties the learning window to the period after the last significant edit. There is a fuller version in raising budget without resetting learning.

My ad set says Learning Limited. Is that the same as not spending?

No, and treating them as the same wastes time. Learning Limited describes an ad set that cannot gather enough results to model on; it usually still delivers, just unstably. Not spending at all is nearly always one of the first four checks in the list above. Fix the delivery stop first, then worry about the signal.

One campaign slowed down but the others are fine. Where do I look?

A single campaign degrading while the account keeps spending points at auction economics rather than an account-level block, so start at check five. The pattern that points the other way is everything stopping at the same moment, which is an account-level cause.

Should I just duplicate the ad set to restart it?

Only if you want a fresh learning phase, because that is what you get. A duplicate begins from zero. It is a reasonable move when you want to leave a proven ad set untouched, and a poor one if you were hoping to skip learning rather than relocate it.

Sources

  • Meta Advertising Standards, read directly. Used here for the enforcement side of the triage in the first section, and for the 24-hour ad review figure.
  • Meta Business Help Centre, About the learning phase, read in a browser on 12 August 2026. Where we got the “about 50 results” wording, the significant-edit reset, the warning on frequent budget changes, the guidance on realistic budgets, and the advice to avoid high ad volumes.
  • Budget multipliers (10× and 5×), audience thresholds (1,000 / 200,000 / 1 million), and the learning-reset percentages (20% and 30%) are all third-party, and in each case the sources contradict each other. We have shown the disagreement instead of averaging it.
  • The diagnostic ordering, the figure and the budget-stepping practice are ours. They organise what the sources say and disagree about; they are not additional policy.

Related reading: if the cause turns out to be enforcement rather than delivery, start with restricted ad accounts or what to do when the business portfolio is restricted. If it is a ceiling rather than a stall, see the ad account spending limit.

Start Now

Ready to Build Your Growth Engine?

Message HuGes on Telegram. Share your offer, target country, platform, KPI, and current problem. We can arrange an online meeting and propose the best solution.

Start With Telegram