Facebook Ad Not Delivering? A Systematic Troubleshooting Guide

Angrez Aley

Angrez Aley

Senior paid ads manager

20255 min read

When a Facebook ad isn't delivering, the cause is usually one of five things:

  1. Ad status (disapproved, in review, paused)
  2. Budget or spending limits
  3. Audience issues (too narrow, overlap)
  4. Bidding problems
  5. Creative or relevance decline

This guide walks through each systematically. Start at the top—most delivery issues resolve within the first two checks.

Quick Diagnostic Checklist

Before diving deep, run through this rapid triage:

CheckWhere to LookCommon IssueFix
Ad StatusDelivery column in Ads ManagerIn Review, Disapproved, or OffWait 24h for review; fix policy violation and resubmit
Account Spending LimitBilling & Payment SettingsHit self-imposed capIncrease or remove limit
Campaign/Ad Set BudgetCampaign or ad set settingsBudget too low to competeIncrease to competitive level
Payment MethodBilling & Payment SettingsCard declined, expiredUpdate payment method
Learning PhaseDelivery column shows "Learning"New campaign, unstable deliveryWait for ~50 conversions; avoid edits

If none of these apply, continue to the detailed sections below.


Level 1: Ad Status Issues

Check the Delivery column in Ads Manager first. This tells you exactly what's happening.

Status Meanings

StatusWhat It MeansAction
ActiveAd is runningIf zero impressions, problem is elsewhere
In ReviewAwaiting policy checkWait up to 24 hours; don't edit (resets queue)
DisapprovedPolicy violationRead the reason, fix the issue, resubmit
LearningAlgorithm gathering dataBe patient; avoid changes
Learning LimitedNot enough conversionsBroaden audience or lower optimization goal
OffManually pausedTurn on if unintentional
ScheduledStart date in futureCheck schedule settings

Disapproval Reasons

Common policy violations that trigger disapproval:

  • Prohibited content — Certain products, claims, or imagery
  • Landing page issues — Broken links, mismatched content, pop-ups
  • Personal attributes — Ad implies knowledge of personal characteristics
  • Misleading claims — Exaggerated results, fake urgency
  • Before/after images — Prohibited in many categories
  • Text in image — Excessive text overlay (less common now)

Fix process:

  1. Read the specific rejection reason in Ads Manager
  2. Fix the flagged issue (ad creative or landing page)
  3. Resubmit for review
  4. If you believe it's an error, request manual review

"Active" But Zero Impressions

The most frustrating scenario. Ad shows "Active" but nothing's happening.

Likely causes:

  • Budget too low to win auctions
  • Audience too small
  • Bid cap too restrictive
  • Audience overlap causing suppression
  • Scheduling issues (ad set scheduled for future)

Move to Level 2 and Level 3 checks below.


Level 2: Budget and Spending Limits

Financial constraints are the second most common delivery blocker.

Account Spending Limit

A hard cap on total account spend. Once hit, all campaigns stop—regardless of individual budgets.

Location: Billing & Payment Settings → Account Spending Limit

Fix: Increase or remove the limit.

This is easy to forget if you set it months ago. Check it first when all campaigns suddenly stop.

Campaign/Ad Set Budget

Budget must be sufficient to compete in auctions. Meta's algorithm won't bother entering auctions it can't win.

Symptoms of insufficient budget:

  • Zero or near-zero impressions
  • "Learning Limited" status
  • Erratic, minimal spend

Minimum viable budgets (rough guidelines):

Optimization GoalMinimum Daily BudgetRationale
Link Clicks$5-10Low-cost events
Landing Page Views$10-20Slightly higher quality
Leads$20-50Mid-funnel goal
Purchases$50-100+Needs ~50 conversions/week

These vary by industry and competition. The underlying rule: budget should support ~50 optimization events per week to exit learning phase.

The math:

```

Minimum Daily Budget = Target CPA × 50 events ÷ 7 days

Example: $25 CPA target → $25 × 50 ÷ 7 = ~$179/day minimum

```

If your budget can't support 50 weekly conversions at your target CPA, either:

  • Increase budget
  • Lower optimization goal (e.g., Landing Page Views instead of Purchases)
  • Accept longer learning phase

Payment Method Issues

Obvious but overlooked. If your card is declined, expired, or over limit, ads stop.

Check: Billing & Payment Settings → Payment Methods

Look for failed payment alerts. Update card details if needed.


Level 3: Audience and Targeting Issues

Your ad is active, budget is fine, but delivery is dead or minimal. Audience problems are likely.

Audience Too Small

Over-segmentation kills delivery. Stacking narrow interests, demographics, and exclusions can shrink your audience to an unworkable size.

Symptoms:

  • Very low or zero impressions
  • High CPMs (when delivery does happen)
  • "Audience too small" warnings

Minimum audience sizes:

Campaign TypeMinimum Recommended Reach
Prospecting (cold)1-2 million+
Lookalike1 million+
Retargeting1,000+ (smaller is acceptable)

Fixes:

  • Remove unnecessary interest layers
  • Broaden demographic restrictions
  • Use broader Lookalike percentages (3-5% instead of 1%)
  • Consider Advantage+ Audience for algorithm flexibility

Audience Overlap

Multiple ad sets targeting the same users = bidding against yourself.

When your own ad sets compete, Meta picks a "winner" and suppresses the others. Result: one ad set gets all delivery, others get nothing.

Common overlap scenarios:

  • Prospecting targeting "digital marketing" interest
  • Retargeting targeting "all website visitors"
  • Same users exist in both → overlap

Using the Audience Overlap Tool

Location: Audiences section in Meta Business Suite

Process:

  1. Select two or more audiences (checkbox)
  2. Click three-dot menu (...)
  3. Choose "Show Audience Overlap"
  4. Review overlap percentage
Overlap %SeverityAction
<10%LowGenerally fine
10-20%ModerateConsider exclusions
20-30%HighExclusions recommended
30%+CriticalExclusions required

Fixing Overlap with Exclusions

Build exclusions into your campaign structure:

Ad Set TypeExclude
Prospecting (Broad)All website visitors, all customers, email list
Prospecting (Lookalike)All website visitors, all customers, other Lookalikes
Retargeting (7-day visitors)Purchasers (7-day)
Retargeting (8-30 day visitors)7-day visitors, Purchasers (30-day)

Without proper exclusions, you pay prospecting CPMs for users you could retarget cheaper—or suppress delivery entirely.


Level 4: Bidding and Auction Issues

Budget is adequate, audience is valid, but still no delivery. The problem may be how you're entering the auction.

Bidding Strategy Mismatch

StrategyHow It WorksDelivery Risk
Highest VolumeMaximize results within budgetLow risk—aggressive delivery
Cost Per Result GoalTarget average CPAMedium risk—if cap too low, no delivery
Bid CapHard ceiling on auction bidHigh risk—can completely block delivery
ROAS GoalTarget minimum returnMedium risk—may limit delivery if target too high

If delivery is blocked:

  • Switch to Highest Volume temporarily to gather data
  • If using Cost Cap, increase cap by 20-30%
  • If using Bid Cap, raise significantly above historical average

Bid Cap Too Low

Manual bid caps offer control but create delivery risk.

Example: You set $0.50 bid cap for link clicks in a niche where average CPC is $2.00. You'll lose every auction.

Fix:

  1. Check historical data for actual cost per result
  2. Set bid cap 10-20% above that average
  3. Lower gradually as you gather data

Or remove bid cap entirely and use Cost Per Result Goal for softer cost control.

CBO Starving Ad Sets

Campaign Budget Optimization (CBO) distributes budget to top performers automatically. But this can starve new or slower-starting ad sets.

Scenario:

  • Campaign has 4 ad sets
  • Ad Set A gets quick early wins
  • CBO pours entire budget into Ad Set A
  • Ad Sets B, C, D get zero delivery

When to use Ad Set Budgets (ABO) instead:

  • Testing new audiences or creative (need equal distribution)
  • Launching new ad sets that need time to learn
  • When CBO consistently favors one ad set

CBO fix: Set minimum spend limits per ad set (if available) to guarantee each gets budget.


Level 5: Creative and Relevance Issues

Technical setup is correct, but delivery declines over time. The problem is likely creative fatigue or poor relevance.

Ad Fatigue Symptoms

  • Frequency climbing (same users seeing ad repeatedly)
  • CTR declining week-over-week
  • CPA rising while other metrics stable
  • Negative feedback increasing (hides, reports)
  • Relevance diagnostics dropping

When users tune out, Meta reduces delivery. The algorithm prioritizes user experience over advertiser spend.

Ad Relevance Diagnostics

Location: Ads Manager → Customize Columns → Ad Relevance Diagnostics

DiagnosticWhat It MeasuresConcern Level
Quality RankingPerceived ad quality vs. competitorsBelow Average = problem
Engagement Rate RankingExpected engagement vs. competitorsBelow Average = problem
Conversion Rate RankingExpected conversion rate vs. competitorsBelow Average = problem

Interpreting combinations:

QualityEngagementConversionLikely Issue
Below AvgBelow AvgBelow AvgCreative is weak across the board
AverageBelow AvgAverageCreative doesn't engage but converts when clicked
AverageAverageBelow AvgPost-click experience (landing page) problem
Below AvgAverageAverageAd quality perception issue (image/video quality)

Creative Fatigue Timeline

Creative lifespan depends on audience size and budget:

Audience SizeDaily BudgetTypical Creative Lifespan
500K$502-3 weeks
1M$1003-4 weeks
5M+$500+4-6 weeks
Retargeting (small)Any1-2 weeks

Higher frequency = faster fatigue. Monitor frequency; when it exceeds 3-4 and CTR drops, refresh creative.

Creative Refresh Strategies

1. Rotation schedule

Don't wait for performance to crash. Queue new creative and rotate every 2-4 weeks proactively.

2. Diverse angles

Test different messaging approaches:

  • Benefit-focused vs. pain-point
  • Social proof vs. product features
  • UGC-style vs. polished production

3. Dynamic Creative

Upload multiple images, videos, headlines, descriptions. Meta tests combinations automatically and serves best performers to each user.

4. AI-assisted generation

Tools like Ryze AI and other creative platforms can generate variations at scale, reducing the manual bottleneck of producing fresh creative constantly.

Landing Page Issues

Creative looks fine, but relevance scores are low. Check post-click experience.

Common landing page problems:

  • Slow load time (>3 seconds on mobile = high bounce)
  • Message mismatch (ad promises X, page delivers Y)
  • Poor mobile experience
  • Intrusive pop-ups
  • Broken functionality

Meta penalizes ads that lead to poor user experiences. A great ad with a bad landing page will get suppressed.


Level 6: Technical and Tracking Issues

Everything looks correct, but something's still broken. Time to check the technical layer.

Pixel and Tracking Issues

If Meta can't verify conversions, it won't optimize effectively—and may reduce delivery.

Verification checklist:

  • [ ] Meta Pixel installed on all pages
  • [ ] Pixel fires correctly (test with Meta Pixel Helper extension)
  • [ ] Key events configured (ViewContent, AddToCart, Purchase, Lead)
  • [ ] Events verified in Events Manager → Test Events
  • [ ] Conversions API (CAPI) implemented for server-side tracking
  • [ ] Event Match Quality score 6.0+ (ideally 8.0+)

Common tracking issues:

  • Pixel installed but events not firing
  • Events firing on wrong pages
  • Duplicate events (counting conversions twice)
  • CAPI not implemented (losing iOS conversions)

Optimization Goal Mismatch

New accounts with fresh pixels often fail because the optimization goal is too ambitious.

The problem: You tell Meta to optimize for Purchases, but your pixel has zero purchase data. The algorithm doesn't know who to target.

The solution: Start with upper-funnel goals and work down:

Pixel MaturityRecommended Optimization Goal
Brand new (0-50 events)Landing Page Views
Early (50-500 events)Add to Cart or Initiate Checkout
Established (500+ events)Purchase

"Season" your pixel by gathering data on easier goals before pushing for conversions.

Placement Restrictions

Over-restricting placements limits where Meta can find impressions.

Common mistake: Manually selecting only Feed placements because "that's where my audience is."

Problem: You're limiting the algorithm's ability to find cheap, effective impressions elsewhere.

Recommendation: Use Advantage+ Placements (automatic) in most cases. Let the algorithm find users across:

  • Facebook Feed, Stories, Reels
  • Instagram Feed, Stories, Reels, Explore
  • Audience Network
  • Messenger

Only restrict placements if you have data showing certain placements underperform significantly.


The Learning Phase: When to Wait vs. When to Act

What Is Learning Phase?

When you launch a new ad set (or make significant edits), Meta's algorithm needs data to figure out who to target. This is the "Learning Phase."

Goal: ~50 optimization events within 7 days

During learning:

  • Performance is unstable
  • Costs may be higher than expected
  • Delivery may be inconsistent

Learning Phase Timeline

ScenarioExpected Duration
High budget, broad audience2-3 days
Moderate budget, defined audience3-5 days
Low budget, narrow audience7+ days or "Learning Limited"

When to Wait

  • Ad set is new (<3 days old)
  • Delivery is happening (even if inconsistent)
  • You're on track for 50 events/week

When to Act

  • Zero impressions after 24 hours
  • "Learning Limited" status (won't reach 50 events)
  • Costs are 3x+ above target with no improvement

What Resets Learning Phase

Avoid these changes during learning:

  • Budget changes >20%
  • Bid strategy changes
  • Audience changes
  • Optimization goal changes
  • Adding/removing creative
  • Pausing for 7+ days

Small changes are fine. Major changes reset the clock.


Troubleshooting Flowchart

Follow this order for systematic diagnosis:

```

  1. Ad Status

└── Disapproved? → Fix policy issue, resubmit

└── In Review? → Wait 24 hours

└── Active but no impressions? → Continue to #2

  1. Budget & Spending Limits

└── Account limit hit? → Increase/remove limit

└── Payment failed? → Update payment method

└── Budget too low? → Increase budget

└── All clear? → Continue to #3

  1. Audience Issues

└── Audience too small? → Broaden targeting

└── Audience overlap? → Add exclusions

└── All clear? → Continue to #4

  1. Bidding Issues

└── Bid cap too low? → Raise or remove cap

└── Cost cap too restrictive? → Increase cap

└── CBO starving ad sets? → Use ABO or set minimums

└── All clear? → Continue to #5

  1. Creative & Relevance

└── High frequency + declining CTR? → Refresh creative

└── Below Average relevance scores? → Improve creative/landing page

└── All clear? → Continue to #6

  1. Technical Issues

└── Pixel not firing? → Fix pixel installation

└── Events not tracking? → Verify events in Events Manager

└── Optimization goal too ambitious? → Lower goal temporarily

└── Placements too restricted? → Enable Advantage+ Placements

```


Automated Monitoring and Alerts

Manual troubleshooting works for small accounts. At scale, you need automated monitoring.

What to Automate

Monitoring TaskManual ApproachAutomated Approach
Delivery dropsCheck dailyAlert when impressions drop >50%
Frequency spikesWeekly reviewAlert when frequency >4
CPA increasesSpreadsheet analysisAlert when CPA exceeds threshold
Creative fatigueWatch CTR manuallyAlert when CTR drops >20% WoW
Budget pacingDaily checkAlert when underspending

Tools for Automated Monitoring

ToolPrimary FunctionBest For
Ryze AIAI-powered optimization across Google + MetaCross-platform monitoring, automated alerts
RevealbotRules-based automationBudget management, conditional alerts
MadgicxAI audiences + creative insightsMeta-specific performance tracking
Meta Automated RulesNative platform rulesBasic threshold alerts

For teams managing multiple accounts or high ad volumes, automated monitoring catches delivery issues before they drain budget.


FAQ

Why is my ad "Active" with zero impressions?

Three most likely causes:

  1. Budget/bid too low — Can't win auctions
  2. Audience too small — Not enough people to reach
  3. Silent policy issue — Ad is limited without full disapproval

Quick fixes: Increase budget by 50%, broaden audience targeting, or check for policy warnings in ad details.

How long should I wait before troubleshooting?

New ad: Wait 24 hours minimum. Some lag is normal.

Established ad that stopped: Troubleshoot immediately. Something changed.

Learning Phase ad: Wait for ~50 conversions or 7 days before making changes.

Can I force my ad to deliver faster?

Not directly, but you can improve auction competitiveness:

  • Increase budget significantly
  • Raise or remove bid caps
  • Broaden audience (gives algorithm more options)
  • Switch to Highest Volume bidding temporarily

Don't mistake aggressive spending for good strategy. Fast delivery at poor efficiency isn't the goal.

What is "Learning Limited"?

Your ad set isn't getting enough optimization events (~50/week) to exit learning phase.

Causes:

  • Budget too low for optimization goal
  • Audience too small
  • High-funnel optimization with low conversion volume

Fixes:

  • Increase budget
  • Broaden audience
  • Lower optimization goal (Landing Page Views instead of Purchases)
  • Consolidate ad sets (fewer ad sets = more data per ad set)

Why did my delivery suddenly drop?

Common causes for sudden delivery decline:

CauseSignalFix
Creative fatigueHigh frequency, declining CTRRefresh creative
Audience saturationFrequency >5, shrinking reachExpand audience
Increased competitionCPM spike, no other changesAdjust bid strategy or timing
Budget/limit hitSpending stopped abruptlyCheck account/campaign limits
Policy issueCheck ad statusReview and fix violation
Tracking brokenConversions dropped to zeroVerify pixel/CAPI

Check metrics in order: status → budget → frequency → CPM → tracking.

How do I prevent delivery issues proactively?

Campaign setup:

  • [ ] Budget supports 50+ weekly optimization events
  • [ ] Audience size 1M+ for prospecting
  • [ ] Proper exclusions to prevent overlap
  • [ ] Advantage+ Placements enabled
  • [ ] Pixel and CAPI verified

Ongoing management:

  • [ ] Monitor frequency (flag when >3)
  • [ ] Rotate creative every 2-4 weeks
  • [ ] Check relevance diagnostics weekly
  • [ ] Use automated alerts for delivery drops

Tools like Ryze AI, Revealbot, and Madgicx can automate monitoring and alert you before small issues become budget-draining problems.


Summary: Troubleshooting Priority Order

PriorityCheckMost Common Fix
1Ad statusWait for review or fix policy violation
2Spending limitsRemove account limit
3BudgetIncrease to support 50 events/week
4Audience sizeBroaden targeting
5Audience overlapAdd exclusions
6Bid strategySwitch to Highest Volume or raise caps
7Creative fatigueRefresh creative
8Relevance scoresImprove creative and landing page
9TrackingFix pixel/CAPI implementation
10Optimization goalLower goal to match pixel maturity

Work through this list systematically. Most delivery issues resolve within the first four checks. If you're still stuck at the bottom of the list, the problem is usually technical or requires a fundamental campaign restructure.

Manages all your accounts
Google Ads
Connect
Meta
Connect
Shopify
Connect
GA4
Connect
Amazon
Connect
Creatives optimization
Next Ad
ROAS1.8x
CPA$45
Ad Creative
ROAS3.2x
CPA$12
24/7 ROAS improvements
Pause 27 Burning Queries
0 conversions (30d)
+$1.8k
Applied
Split Brand from Non-Brand
ROAS 8.2 vs 1.6
+$3.7k
Applied
Isolate "Project Mgmt"
Own ad group, bid down
+$5.8k
Applied
Raise Brand US Cap
Lost IS Budget 62%
+$3.2k
Applied
Monthly Impact
$0/ mo
Next Gen of Marketing

Let AI Run Your Ads