Your campaign is on, the budget is set, and nothing is happening. Either Ads Manager says Not delivering, or it says Active and the spend column sits at zero. These are two different problems with two different answers — and in Pakistan the most common cause is not your targeting, your creative, or anything to do with the algorithm. It is your card.
Below are eleven causes in roughly the order they turn out to be the answer, what to check for each, and three things people do in a panic that make it worse.
First, Which Problem Do You Have?
Open Ads Manager, set the date range to Today, and look at the Delivery column and the Amount Spent column together. Three combinations, three different places to look.
Checking both columns before you change anything saves most of the guesswork.
The Eleven Causes
Your payment method failed
In Pakistan this is the single most common reason ads stop, and it almost never announces itself usefully. Meta tries to charge, the bank declines, delivery halts within hours.
You hit an ad account spending limit
A cap somebody set months ago on the whole ad account. The moment total spend reaches it, every campaign stops at once — and the account looks perfectly healthy otherwise. If everything died on the same day for no reason, check this before anything else.
The schedule ran out
An end date that passed, a lifetime budget that finished, or a start date still in the future. The status reads Completed or Scheduled rather than Not delivering, which is easy to skim past.
The ad is in review, or was rejected
New ads wait for review, and editing a live ad sends it back into review. Rejections often sit quietly at ad level while the campaign above still says Active.
Something above it is switched off
The hierarchy is campaign → ad set → ad, and an off switch at any level stops everything below it. A live ad inside a paused ad set still shows its own toggle as on.
Your bid or cost cap is too low to compete
The classic cause of Active-but-zero-spend. With a bid cap or cost cap set below what the auction is actually clearing at, your ad simply never wins — and that is not an error, so nothing is flagged.
The audience is too small
Usually from stacking: a narrow city radius, plus age limits, plus three layers of detailed targeting, plus an exclusion list. Each filter looks reasonable alone. Together they leave almost nobody.
The budget is too small for the event you chose
Optimising for purchases or conversions on a very small daily budget gives the system too few events to work from. It will often spend little rather than spend badly.
Learning limited
Meta needs roughly 50 optimisation events per ad set per week to leave the learning phase. Below that, the ad set stays in Learning limited and delivery is held back.
Your own ad sets are bidding against each other
Two or three ad sets aimed at overlapping audiences means you are in your own auction, pushing your own costs up and your own delivery down.
An account, page or asset restriction
Least common, most alarming. The ad account, the Facebook page or the Business Manager itself is restricted, so nothing will deliver regardless of campaign settings.
Meta bills in USD, so every charge on a Pakistani card is an international transaction. That is where most of these failures come from, and none of them are a problem with your campaign:
- International transactions are switched off on the card by default at several banks — you enable it in the banking app, often with a validity window that expires.
- Online or e-commerce use is disabled separately from international use. Both have to be on.
- 3D-Secure OTP not completing, usually because the registered mobile number is out of date.
- A per-transaction or monthly international limit that is lower than Meta's charge.
- Insufficient balance at the moment Meta retried — the charge comes when a billing threshold is reached, not on a fixed date, so it can land on an awkward day.
If ads stop at roughly the same point every month, it is almost certainly this rather than anything you changed.
Three Things That Make It Worse
Deleting and rebuilding
You throw away everything the ad set had learned and restart the learning phase from zero. Almost never the right first move.
Editing again and again
Significant edits push the ad back into review and can reset learning. Change one thing, then wait — give it 24 hours before touching it again.
Tripling the budget
A large sudden budget increase destabilises delivery on an ad set that is already struggling. If you must raise it, go up in steps of roughly 20%.
What to Do, In Order
Ads delivering normally but no enquiries arriving is a different fault entirely, and it is the one we see most often in audits — leads sitting in Meta's Leads Centre with nobody collecting them, or a WhatsApp number nobody checks. If spend looks healthy and the phone is quiet, start with the seven places leads get lost instead.
Still Showing Zero After All That?
Send us a screenshot of your Ads Manager with the Delivery and Amount Spent columns visible. We'll tell you which of the eleven it is — and if it's a five-minute billing fix, we'll just say so.
💬 Send a screenshot on WhatsApp Book a free account reviewNo obligation · No pitch if nothing is wrong · Replies in Pakistan working hours
Frequently Asked Questions
Why do my Facebook ads say "Not delivering"?
"Not delivering" means Meta has identified a specific blocker, and the status itself is clickable — it states the reason. The most common are a failed payment or unpaid balance, an ad account spending limit that has been reached, a schedule that has ended, an ad still in review or rejected, or an audience that is too small to deliver to.
Why are my Facebook ads active but not spending any money?
If the status is Active and spend is zero, nothing is technically broken — your ad just isn't winning auctions. The usual causes are a bid cap or cost cap set below the real clearing price, an audience narrowed by too many layered filters, a daily budget too small for the optimisation event you chose, or an ad set stuck in Learning limited.
Why do Facebook ads stop running in Pakistan specifically?
Because Meta bills in USD, every charge on a Pakistani card is an international transaction. Cards commonly have international or online transactions disabled, a per-transaction limit below Meta's charge, or an expired mobile number blocking the 3D-Secure OTP. If your ads stop at roughly the same point each month, the payment method is the first place to look.
How long does it take for ads to start delivering after I fix the problem?
Usually within a few hours for a billing or spending-limit fix. An ad resubmitted for review typically clears within 24 hours. After any significant edit, allow a full day before judging the result or changing anything else.
Should I delete the campaign and start again?
No, not as a first step. Deleting discards everything the ad set has learned and restarts the learning phase from zero. Almost every cause on this list is fixed without rebuilding — work through billing, spending limit, schedule and review status first.
What does Learning limited mean?
Meta needs roughly 50 optimisation events per ad set per week to exit the learning phase. Below that threshold the ad set stays in Learning limited and delivery is held back. The fix is consolidation: fewer ad sets with larger budgets, rather than many small ones all short of the threshold.
Related Reading
If the ads are delivering but the enquiries aren't arriving: the seven places your leads get lost. If you're setting campaigns up from scratch: how to run Facebook ads that actually sell and what a lead actually costs in Pakistan.
Changes coming to ad accounts this month: the 28 and 30 October Meta updates. On working with an agency: what Meta Ads management costs and the Meta Ads service.