All answers

Why are my Facebook ads not spending?

An ad set that spends nothing almost always has one of six causes: the ad is still in review, the schedule has not started, the audience is too small or over-narrowed by exclusions, the bid cap or cost cap is below what the auction clears at, the daily budget is too low relative to your target CPA, or there is a billing or account-quality problem. Check them in that order, because the first three account for most cases and take seconds to rule out.

Last updated 2026-08-11

Review and schedule first

An ad in review does not deliver, and a scheduled ad set does not start early. Both show plainly in the delivery column, and both are mistaken for a targeting problem more often than anything else. Review normally clears within a day but can take longer around policy-sensitive categories or after account changes, and an ad edited while active goes back into review, which is why a small copy tweak can stop a running ad for hours. Check the delivery column before changing anything: the single most common self-inflicted wound here is rebuilding targeting on an ad set whose only problem was that its start date is tomorrow.

Bid and budget floors

A bid cap or cost cap set below the clearing price means you simply lose every auction, which looks identical to zero delivery but has a distinctive signature: impressions at or near zero with the ad set active and approved. The quick test is to switch to the default lowest-cost bidding on a duplicate; if it spends immediately, your cap was the ceiling. Separately, a daily budget below roughly 2x your target CPA cannot produce the ~50 weekly optimisation events an ad set needs to stabilise, so delivery stays throttled and erratic rather than zero, which is a different symptom with the same underlying arithmetic.

Audience size and exclusions

Stacked exclusions (purchasers, engagers, lookalike overlaps) can quietly reduce a large audience to almost nothing, and the failure is invisible because each exclusion looked reasonable when it was added. Meta shows an estimated audience size at the ad set level; if it is tiny or the meter sits in the red, that is your answer. Two related traps: a custom audience that has gone stale because its data source stopped syncing, and geographic or age narrowing copied from another campaign where it made sense. When diagnosing, remove exclusions one at a time and watch the estimate, because the culprit is usually a single stacked list, not the whole set.

Account-level problems

A failed payment method, a spending limit that has been reached, or a restricted account will stop delivery across everything at once. If every ad set went quiet simultaneously, look at the account before you touch any targeting: billing settings, the account spending limit, and account quality status. Spending limits are a recurring silent killer because they are set once, often by someone else, and forgotten until the account hits them mid-month. Payment failures similarly stop everything with only a quiet notification. The diagnostic shortcut is scope: one ad set misbehaving is a settings problem, all of them at once is an account problem.

A five-minute diagnostic order

Work top down and change nothing until you have looked at everything. One: read the delivery column status for the exact ad set. Two: check ad review status on each ad inside it. Three: check schedule and start dates. Four: check the audience size estimate. Five: check bid strategy and any caps. Six: check account billing and spending limits. The reason for the discipline is that changing variables while diagnosing destroys the evidence: if you widen the audience, raise the budget and reset the bid cap in one session, delivery may resume and you will never know which change mattered or what it cost you.

Low spend versus no spend

Zero spend and disappointing spend are different problems. Zero spend is binary and almost always one of the six causes above. An ad set spending a fraction of its budget is usually an auction-competitiveness problem: the audience is fine but Meta finds few winnable impressions at your effective bid, or the creative's early engagement is poor enough that delivery deprioritises it. For underspend, the levers are creative quality, broader targeting and bid strategy rather than the checklist above. Diagnosing underspend with the zero-spend checklist wastes time, because everything on it will look fine while the real issue is that the auction does not want what you are offering at the price you offer it.

A brand-new ad set that has spent nothing for under an hour is usually not broken, it is just starting. Give delivery a few hours before diagnosing, or you will change three variables at once and learn nothing.

Launch your next test in one click.

Volume Creatives bulk-launches hundreds of Meta ads, enhancements off, naming and tracking applied automatically.

Try the launcher