
It is 6pm. Your best prospecting ad set has a ₹50,000 daily budget and has spent ₹6,000 (an illustrative example, but you have seen a day like it). Nothing looks broken in Ads Manager. The status says Active.
When Meta ads are not spending budget, the cause is usually one of 10 things: billing, spending limits, ad review, rules or schedules, a tight cost cap, a small audience, too many ad sets, ad set limits, a rare optimisation event or weak ads. This guide checks them in the order that finds the cause fastest.
A slow day may be normal pacing, not a fault. Meta does not spend a daily budget evenly every day: on some days it may spend up to 75% more than the daily budget, and it keeps weekly spend within 7 times the daily budget (Mega Digital, Oct 2026). So one slow day inside a normal week is not a fault.
A lifetime budget works differently. It is a fixed limit for the whole flight, not an average, so Meta paces against the end date.
| What you see | Likely normal | Likely broken |
|---|---|---|
| One day at 60% of budget, the week near 7x daily | Yes | No |
| ₹0 or near ₹0 spend for 24 hours | No | Yes: check the hard blocks |
| Spend below 50% of budget for 3+ days | No | Yes: check the soft limits |
| Spend stops on one ad set, others fine | No | Yes: the problem sits in that ad set |
The last row comes from a useful practitioner rule: if other campaigns in the account still spend, the problem is the ad set, not the account (r/FacebookAds).
If spend is at or near zero, the cause is usually a block, not the auction. Check these 4 first, because each takes a minute and each stops delivery outright.
A failed payment, an outstanding balance, an expired card or a reached spending limit stops delivery (Mega Digital). Look for a red banner in Ads Manager and open Billing and payments.
Indian brands have a specific history here. When RBI's additional factor of authentication rules for recurring card payments came in during 2021, auto-debits for Facebook ads could fail and campaigns could pause. The fixes then were adding a fresh card, prepaying or paying manually (Velocity, May 2021). If you pay by card on auto-debit, a declined charge is the first thing to rule out.
Spending limits cap spend no matter what the budget says. You set the account spending limit and the campaign spending limit yourself, and teams often forget them after a test. Meta can also apply its own daily spending limit, mostly on new business accounts, ad accounts and Pages (Jon Loomer).
That Meta limit explains a common new-account story. One advertiser planned $1,000 over 4 days on a fresh account and spent $80 (r/FacebookAds). That is an anecdote, not a rule, but it matches the pattern.
An ad that sits in review or has a rejection does not deliver (Mega Digital). Open the Delivery column at ad level, not campaign level. A campaign can show Active while every ad inside it waits for review.
Automated rules can pause ads or change bids without anyone noticing (Jon Loomer). Check Activity history for the ad set and look for changes you did not make by hand.
Also check the schedule. Only lifetime budgets can run on an ad schedule, so a dayparted ad set spends only in the hours you allowed. A Reach campaign also has a default frequency cap of 1 impression every 7 days, which can hold spend down on a small audience (same source).
If spend is steady but low, Meta is choosing not to spend, usually because your settings make the auctions too expensive or too few. These 6 checks need more judgement than the hard blocks.
A tight cost control is the most common reason for a Meta ads not spending full budget problem. Meta's own documentation says a cost cap "may not spend full budget once you hit the cap", and a bid cap may not spend full budget either (Meta for Developers). For minimum ROAS, setting the benchmark too high "may lead to under-delivery".
Meta describes the trade-off plainly. Lowest cost with no cap is the strategy for when you want to spend your full budget, and the cost of that choice is no control over cost (same source).
Say your cost cap is ₹600 but your account's recent CPA is ₹850 (illustrative). Meta will find few auctions that clear ₹600, so it spends a fraction of the budget. Raise the cap towards your real CPA in steps, or test a lowest cost ad set beside it. We cover cost cap and bid cap trade-offs in more depth in how to scale Meta ads without losing ROAS.
A small audience runs out of people to show ads to, so spend stalls. The fix is to broaden targeting, switch on audience expansion or lower the budget to fit the audience (Jon Loomer).
D2C accounts shrink audiences by accident through exclusions. One practitioner pointed out that stale exclusion audiences can quietly narrow delivery (r/FacebookAds). If you exclude purchasers, engagers and several lookalikes at once, check what is left.
Too many ad sets on a small budget leave each one too little to work with. One advertiser ran a $50 sales campaign across 5 ad sets with 3 ads each and saw no spend after 24 hours; the replies told them to consolidate into 1 or 2 ad sets (r/FacebookAds).
In rupee terms (illustrative): ₹20,000 a day across 8 ad sets is ₹2,500 each. If your CPA is ₹900, each ad set can buy fewer than 3 purchases a day, and Meta has little to learn from.
With Advantage campaign budget, an ad set minimum or maximum spend limit overrides Meta's budget allocation. A maximum that is too low caps the ad set even when it performs well. Jon Loomer advises avoiding these limits except in extreme situations (Jon Loomer).
If the ad set optimises for an event that rarely fires, Meta has few signals and spends cautiously. Meta's guidance is a budget large enough for at least 10 optimised actions a day (Jon Loomer).
So a ₹5,000 daily budget optimising for purchases at a ₹2,000 CPA (illustrative) gets about 2 or 3 purchases a day, well short of 10. Either raise the budget or optimise for an earlier event, such as add to cart, until volume builds. If the ad set also shows Learning limited, read our guide to Meta ads learning limited before you edit it, because some edits reset learning.
Poor performance slows delivery on its own (Jon Loomer). If an ad's results fall, Meta shows it less and spend drops with it. Look at CTR and CPM by day for the ad set. A rising CPM with falling CTR points to the ads, not the settings. Our piece on Meta ads CPM increases in India helps separate a market CPM rise from an account problem.
Work from the top of this table down and stop at the first check that fails. Most causes show up in the first 4 rows.
| # | Check | Where to look | Fix |
|---|---|---|---|
| 1 | Payment failed or balance zero | Billing and payments, red banner | Pay now, add a backup method, top up prepaid funds |
| 2 | Spending limit hit | Account settings, campaign settings | Raise or remove the limit |
| 3 | Ads in review or rejected | Delivery column at ad level | Fix the policy issue or replace the ad |
| 4 | Schedule, end date or rule | Ad set schedule, Activity history, Rules | Remove the rule or widen the schedule |
| 5 | Cost cap, bid cap or minimum ROAS | Ad set bid strategy | Move the cap towards real CPA, or test lowest cost |
| 6 | Audience too small | Audience size estimate, exclusions | Broaden, add expansion, trim exclusions |
| 7 | Too many ad sets | Campaign structure | Consolidate into fewer ad sets |
| 8 | Ad set spend limits | Advantage campaign budget settings | Remove or loosen the limits |
| 9 | Rare optimisation event | Ad set optimisation | Budget for 10 events a day, or optimise earlier in the funnel |
| 10 | Weak ads | CTR and CPM by day | Refresh creative |
Two habits help. Read the Delivery column, Activity history and a breakdown by day before you touch anything (Jon Loomer). And change one thing at a time, so you know what fixed it. If the fix means a bigger budget, the marketing budget planner helps you size it.
Duplicating the ad set is a common reflex. It helps some advertisers and not others; one reported ads still stuck in Preparing after a duplicate (r/FacebookAds). Treat it as a last step after the 10 checks, not the first.
Under-spend is not always a problem. A cost cap that holds spend back is doing its job if the ad set would otherwise buy customers above your break-even CPA.
Say your break-even CPA is ₹1,100 and a cost-capped ad set spends ₹30,000 of a ₹50,000 budget at ₹950 per purchase (illustrative). Removing the cap might spend the full ₹50,000, but the extra ₹20,000 could come in at a CPA above ₹1,100 and lose money. Decide on margin, not on whether the budget got used.
The opposite failure exists too. One advertiser reported heavy overspend on junk traffic despite a cost cap in place, which fits Meta's note that cost cap adherence "is not guaranteed" (r/FacebookAds; Meta for Developers). Watch both directions.
The expensive part of under-spend is noticing it late. A winning ad set that spends a third of its budget for 3 days costs you the orders it would have bought, and nobody gets an alert for money Meta did not spend.
Clevrr AI is an AI performance marketer for D2C brands. Klev, Clevrr's AI agent, sends morning reports and alerts by email, Slack and WhatsApp, and acts through the official Meta and Google Ads APIs while respecting learning phases. That way the team starts the day knowing which ad sets moved and why, instead of finding out at the next weekly review.
An active Meta ad that does not spend usually hits a hard block: a failed payment, a spending limit, an ad still in review, or a schedule or rule. Check the Delivery column at ad level and the billing page first. If those are clear, look at your cost cap or bid cap, audience size and how many ad sets share the budget.
Yes, a cost cap can stop Meta from spending your full budget. Meta's documentation says a cost cap may not spend the full budget once it hits the cap, and bid caps behave the same way. If the cap sits below your real CPA, Meta finds few auctions that qualify. Raise it in steps or test a lowest cost ad set.
Yes, Meta can spend more than your daily budget on some days. With a daily budget, Meta may spend up to 75% more on a given day while keeping the week within 7 times the daily budget. Judge spend over a week, not a single day, before you decide your ads are under-delivering or overspending.
When Meta ads are not spending budget, check in order: billing, spending limits, review status and rules first, then caps, audience, structure, optimisation event and creative. Most causes show up in the first 4 checks. And before you remove a cap to force spend, ask whether the extra spend would earn its margin.
If you want a daily view of which ad sets moved and why, start free with 500 credits on Clevrr AI.
Join hundreds of D2C brands using Clevrr AI to automate their growth and efficiency.
Join 500+ D2C founders using Clevrr AI to automate their operations and scale faster.
Get Started Free