TL;DR
When your Facebook ads stop working, check in this order:
(1) Pixel and tracking: is Meta recording your conversions at all?
(2) Audience: is the ad reaching the right people?
(3) Creative: is the ad resonating?
(4) Offer and landing page: is the destination converting visitors?
(5) Budget and bidding: is there enough spend to generate signal?
Skipping straight to creative is the most expensive mistake you can make.
The 5 most common reasons Facebook ads stop working
- Pixel not firing: Meta can't see your conversions, so it's optimizing against no signal and spending your budget on an audience it has never seen convert
- Audience too small or saturated: The campaign can't reach enough new users at your spend level, or frequency is so high the same people keep seeing the same ad
- Creative fatigue: CTR declining week-over-week means the audience has stopped responding to the creative, not that the campaign is fundamentally broken
- Landing page failure: High click rate but near-zero conversion rate on the destination page points to speed, message match, or offer clarity problems after the click
- Budget below the minimum data threshold: Campaigns judged before spending 3–5x the target CPA are being cut before Meta's algorithm has enough data to optimize
Quick Triage: Identify Your Symptom First
Before running the full diagnostic, find your row in this table. It routes you directly to the layer most likely causing your problem.
Quick Triage: Match your symptom to the right diagnostic layer
| Symptom | Most likely layer | Jump to |
|---|---|---|
| Zero impressions, zero spend | Audience or policy issue | Layer 2 + check ad approval status |
| Impressions but zero conversions | Layer 1 (Pixel) - start here | Layer 1 below |
| Impressions and clicks but no sales | Layer 4 (Landing page) | Layer 4 below |
| Sales occurring but not showing in Meta | Layer 1 (attribution/pixel) | Layer 1 below |
| Previously working campaign suddenly stopped | Layer 3 (creative fatigue) or Layer 5 (bidding) | Layer 3 or Layer 5 below |
| High spend, very few conversions | All layers - run full diagnostic | All sections below |
| Learning Limited status | Layer 5 (budget/bidding) | Layer 5 section |
If you're unsure which row matches, start at Layer 1 (Pixel). The 5 minutes spent verifying tracking is never wasted regardless of where the actual problem turns out to be.
5-Layer Diagnostic Flowchart
Use this to find your entry point before running the full diagnostic.
Campaign is failing
|
v
+-------------------------------+
| Zero impressions, zero spend? |--Yes--> Check ad approval status -> Layer 2
+---------------+---------------+
| No
v
+-------------------------------+
| Impressions but zero |--Yes--> LAYER 1: Pixel & Tracking
| conversions? | (Test Events tool first)
+---------------+---------------+
| No
v
+-------------------------------+
| Clicks but no sales? |--Yes--> LAYER 4: Offer & Landing Page
+---------------+---------------+
| No
v
+-------------------------------+
| CTR declining week-over-week? |--Yes--> LAYER 3: Creative
+---------------+---------------+
| No
v
+-------------------------------+
| Learning Limited or |--Yes--> LAYER 5: Budget & Bidding
| high spend, few conversions? |
+---------------+---------------+
| No
v
Run full diagnostic
Layers 1 -> 2 -> 3 -> 4 -> 5Read the flowchart top to bottom. Each layer assumes the layers above it have been checked and cleared. Do not jump to creative or budget diagnosis before verifying the Pixel.
Layer 1: Pixel & Tracking Check
What is the Facebook Pixel?
The Facebook Pixel (now called Meta Pixel) is a snippet of JavaScript code installed on your website that reports visitor actions back to Meta's ad delivery system. When a customer completes a purchase, the Pixel fires a Purchase event. This tells Meta which ad drove that conversion and lets the algorithm find more users likely to buy. If this signal breaks, Meta optimizes against no data.
Check this first, before changing anything else in the campaign.
If your Pixel isn't firing correctly, Meta is optimizing against incomplete or incorrect conversion data. Your campaign may be spending against an audience that has never been seen to convert, because conversions are invisible to Meta. Creative testing, audience optimization, and bidding strategy mean nothing if the conversion signal is broken.
How to verify your Pixel is working
Meta Events Manager, Test Events tool
Fire a live test conversion on your site and watch for it to appear in the real-time events stream. If nothing appears after 30 seconds, the Pixel isn't firing on that page.
Meta Pixel Helper (Chrome extension)
Install the extension, visit your site, and it will display which Pixel events are firing on each page and flag errors: missing fbq() calls, duplicate events, misconfigured event types. Look for red error icons.
Check the Purchase event specifically
Verify the Pixel fires on your order confirmation page with the correct event type (Purchase) and that it passes a value parameter. A Pixel firing PageView on the thank-you page instead of Purchase is one of the most common setup errors.
Check Event Match Quality (EMQ) in Events Manager
Meta defines EMQ on a scale of 0–10. Scores below approximately 4 generally indicate attribution quality worth investigating. Improve EMQ by passing hashed email, phone, or name parameters alongside the event. (Meta EMQ docs: https://www.facebook.com/business/help/765081237991954)
Check for Conversions API (CAPI)
If you're not running CAPI alongside your browser Pixel, iOS-driven tracking loss can make a significant share of conversions invisible to Meta. Some accounts see losses in the 20–40% range depending on demographics and iOS consent rates. (Meta CAPI docs: https://developers.facebook.com/docs/marketing-api/conversions-api)
If the Pixel is broken
Fix it before changing anything else. A corrected Pixel frequently reveals that the campaign was performing far better than it appeared. The conversions were real; they just weren't being recorded.
Layer 2: Audience Check
Prerequisite
Only continue here after Layer 1 (Pixel) has been verified and is firing correctly. Audience analysis built on a broken Pixel produces unreliable conclusions because the data doesn't reflect real performance.
If your Pixel is verified and firing correctly, check whether your audience targeting is the problem.
Signs of an audience issue
- CTR consistently below roughly 0.5% for cold prospecting traffic (a common practitioner benchmark, not an official Meta threshold; acceptable CTR varies by industry, creative format, and audience)
- Frequency rising above roughly 4 for cold audiences within 7 days, a common signal of saturation, though tolerance varies by audience size, campaign objective, and creative quality
- Very low reach relative to daily budget, suggesting the audience may be too small for your spend level
What to check
Audience size: Open your ad set and check the estimated audience size in the targeting panel. For Lowest Cost campaigns, audiences under 100,000 often cause delivery instability. For Cost Cap campaigns, combining a small audience with a tight cap creates delivery stalls.
Audience overlap: If you're running multiple ad sets with overlapping definitions, they compete against each other in the same auction. Meta's Audience Overlap tool (Audiences > Actions > Show Audience Overlap) shows the percentage overlap between ad sets. Overlap above 20–25% between cold prospecting sets is a common practitioner threshold. Meta does not publish an official overlap cutoff.
Targeting restrictions: If you're advertising in a Special Ad Category (housing, credit, employment, social issues), Meta restricts targeting options significantly. Verify your campaign isn't accidentally assigned to a restricted category, which silently removes demographic and interest targeting controls.
The fix
Broaden the audience. Enable Advantage+ Audience to let Meta optimize beyond your manually defined parameters. If using interest targeting, test broadening to a wider interest or removing interest targeting entirely. Broad targeting frequently outperforms narrow interest stacks on accounts with enough conversion history.
Layer 3: Creative Check
Prerequisite
Only investigate creative after Layers 1 (Pixel) and 2 (Audience) have been confirmed. A creative problem diagnosis is only valid when the conversion signal is clean and delivery is confirmed to be reaching the right people.
If tracking is working and audience isn't the problem, check whether the creative has fatigued or was never resonating. Facebook ads not converting despite healthy delivery most often points to a creative problem once Layers 1 and 2 are ruled out.
Signs of a creative problem
- CTR was acceptable in Week 1 but has declined over subsequent weeks (creative fatigue)
- Click-through rate is consistently below roughly 0.8% for cold traffic (a practitioner benchmark; actual acceptable CTR varies by industry, placement, and offer type)
- The ad has been running 4+ weeks without a creative refresh (fatigue is expected at this point, not exceptional)
What to check
CTR over time: Pull your ad performance broken down by week using the Breakdown > Time > Week option in Ads Manager. If CTR was 1.5% in Week 1 and is 0.6% in Week 4, that's creative fatigue, not a broken campaign. The fix is new creative, not restructuring the campaign.
When frequency rises and CTR falls together, the fix is new creative — not a new campaign structure.
Frequency alongside CTR: If frequency is rising and CTR is falling simultaneously, the audience has seen the ad enough times that it has stopped registering. Creative refresh or audience expansion resolves this.
Creative fundamentals (for new campaigns with zero conversions from launch)
- Does the ad stop the scroll? The first 0–3 seconds of a video or the static visual of an image must work in isolation. Assume the viewer's thumb is mid-swipe and your text hasn't been read yet.
- Is the value proposition immediate and clear? Assume the reader won't read the headline. The visual and the first line of copy must carry the entire message.
- Is there a specific CTA? 'Shop Now' and 'Get Offer' outperform 'Learn More' for conversion-optimized campaigns. Generic CTAs signal a generic offer.
Layer 4: Offer & Landing Page Check
Prerequisite
This layer applies specifically when CTR is healthy but conversions are near zero. Verify Pixel, audience, and creative before attributing a conversion problem to the landing page.
'Getting clicks but no sales' is Layer 4's signature symptom. The ad is working, people are clicking, but they're not buying after they arrive. Meta ads not converting despite healthy CTR is most often a landing page or offer problem, not a campaign problem.
Signs of a landing page problem
- CTR is healthy (1%+ for cold, 2%+ for warm audiences) but conversion rate is near zero
- Landing page conversion rate in GA4 is below 1% for e-commerce (under 0.5% is a page problem, not a traffic problem)
- High bounce rate on the landing page session (GA4 bounce rate above 70% on a product or cart page indicates the page isn't meeting visitor expectations)
What to check
Page load speed: A page taking more than 3 seconds to load on mobile loses a significant percentage of paid traffic before they see the offer. Run your URL through Google PageSpeed Insights and prioritize fixes for the Mobile score. Google and Deloitte's 2019 research found that as page load time increases from 1 to 3 seconds, the probability of a mobile visitor bouncing increases by 32% (Think With Google, 2019).
Core Web Vitals vs. conversion rate
Core Web Vitals (LCP, CLS, INP) are a Google ranking signal that measure technical page performance. A passing Core Web Vitals score does not guarantee strong conversion rates. A page can pass all Core Web Vitals thresholds and still convert at 0.3% because of offer clarity, message match, or trust signal problems. Use PageSpeed Insights as a starting diagnostic, not a conversion ceiling.
Message match: Does the landing page deliver exactly what the ad promised? If the ad says '50% off all orders this weekend' and the landing page shows full-price product with no promotional banner, visitors feel misled and leave immediately.
Mobile experience: DataReportal's 2024 report indicates 98.5% of Facebook's monthly active users access via mobile devices. This represents user access patterns, not a guaranteed ad click split, but mobile should be your default testing environment for any landing page receiving Meta traffic. Is the primary CTA button visible without scrolling? Does the checkout require more than 3 steps?
Offer clarity: A visitor should be able to answer three questions within 5 seconds of landing: What is this? What does it cost? Why should I buy now? If any of these require scrolling or reading additional copy to answer, conversion rates drop.
Trust signals: Product reviews, security badges, return policy language, and social proof should be visible without scrolling for pages receiving cold traffic. Warm retargeting audiences tolerate more friction; cold audiences do not.
Layer 5: Budget, Bidding & Minimum Spend Check
Prerequisite
All prior layers must be verified before evaluating budget performance. The 3–5x CPA minimum spend rule assumes tracking is confirmed. If the Pixel was broken during the spend period, the conversion data is not a reliable baseline for this calculation.
The minimum spend rule before judging a campaign
A campaign with insufficient data cannot be fairly evaluated. Before concluding that a campaign isn't working, verify you've spent enough to draw a conclusion.
Spend at least 3–5x your target CPA before drawing conclusions
This is a practitioner guideline, not an official Meta requirement. Meta's own documented threshold is approximately 50 conversions per ad set per week to exit the learning phase, which may correspond to very different spend levels depending on your CPA. The 3–5x rule is a useful decision heuristic for evaluating early-stage campaigns. It assumes tracking has been verified first. Spend from a period when the Pixel was broken does not count toward this threshold.
If your target CPA is $40, spend at least $120–$200 before deciding the campaign doesn't work. Cutting spend before that threshold is one of the most common causes of self-reported 'Facebook ads not working' situations that turn out to be adequate campaigns killed too early.
Bidding problems that cause fb ads not working
Cost Cap set below market CPA: This is the most common bidding mistake on conversion campaigns. If your Cost Cap is $25 and the actual market CPA for your product is $45, the campaign either won't spend at all or will spend without finding the $25 conversions that don't exist at scale. Fix: switch to Lowest Cost temporarily to find the real market CPA, then set the Cost Cap at market CPA +20% once you have data.
What does 'Learning Limited' mean in Meta Ads Manager?
'Learning Limited' is a delivery status that appears when an ad set cannot complete Meta's learning phase because it isn't generating enough conversion events. Meta requires approximately 50 conversion events per ad set per week to exit the learning phase and stabilize delivery (Meta Business Help: https://www.facebook.com/business/help/112167992830700). Until that threshold is met, delivery is unstable and CPA is typically inflated. This status appears in the Delivery column of Ads Manager directly below the ad set name.
Learning Limited status: If your ad set shows 'Learning Limited' in Ads Manager, the bidding or budget structure is preventing the algorithm from collecting enough conversion data. Fix causes: daily budget too low relative to CPA (budget / CPA x 7 should exceed 50 events per week), Cost Cap set below market CPA, or too many ad sets splitting a small total budget.
Budget exhausting too early in the day: If your daily budget depletes by midday, delivery stops for the remaining hours. Check the Delivery column. If it shows 'Budget Limited' by noon, either increase the daily budget or switch from standard to accelerated delivery to diagnose whether pacing is the constraint.
Master Troubleshooting Table
Match your symptom to a specific cause and fix. This table covers the most common failure patterns across all 5 diagnostic layers.
Master Troubleshooting Table - 15 common failure patterns across 5 diagnostic layers
| Symptom | Likely cause | Diagnostic step | Fix |
|---|---|---|---|
| Zero impressions, zero spend | Ad rejected or under review | Check ad status column in Ads Manager | Appeal rejection or edit the flagged element |
| Impressions but zero conversions | Pixel not firing on conversion page | Use Test Events tool in Events Manager: fire a live purchase | Fix Pixel installation on the confirmation page |
| Impressions but zero conversions | Purchase event firing on wrong page | Review Events Manager event log by URL | Move Purchase event trigger to order confirmation page only |
| Clicks but no sales | Landing page not converting | Check GA4 conversion rate for the specific landing page URL | Improve mobile UX, load speed, and message match |
| Clicks but no sales | Offer unclear or not compelling | Review landing page: can visitor answer 'what, how much, why now' in 5 seconds? | Rewrite headline and CTA; add trust signals above the fold |
| Previously working campaign declined | Creative fatigue | Pull CTR by week in Ads Manager: Breakdown > Time > Week | Refresh creative with new visuals and copy |
| Previously working campaign declined | Audience saturation | Frequency rising while CTR falls simultaneously | Expand audience or launch a new audience ad set |
| Good CTR, zero conversions | Pixel tracking wrong page | Test Events in Events Manager while navigating through purchase flow | Fix Purchase event placement |
| Good CTR, zero conversions | Landing page loading too slowly on mobile | Google PageSpeed Insights: Mobile score | Fix largest contentful paint and eliminate render-blocking resources |
| Learning Limited status | Budget too low relative to target CPA | Check: (Daily Budget / Target CPA) x 7 should be >= 50 events per week | Increase budget or reduce the number of active ad sets |
| Learning Limited status | Cost Cap set below market CPA | Switch to Lowest Cost temporarily and observe actual CPA | Set Cost Cap at observed market CPA + 20% |
| High spend, very few conversions | Campaign judged before minimum data threshold | Check total spend vs (Target CPA x 3) | Spend minimum 3–5x target CPA before evaluating performance |
| ROAS looks far worse than GA4 shows | Attribution window or model mismatch | Compare Meta 7-day click window vs GA4 last-click (known difference, not a bug) | Use Meta data for campaign optimization; GA4 for business reconciliation |
| Ad running but conversions not in Meta | CAPI not implemented | Events Manager: check for server events vs browser events | Implement Meta Conversions API |
| Facebook ads stopped working after iOS update | Browser Pixel signal loss | Events Manager: check event match quality score on Purchase | Implement CAPI + enable Advanced Matching with hashed customer data |
Illustrative Example: The Most Common Zero-Conversion Root Cause
Composite example
The following scenario illustrates the most frequent root cause pattern in zero-conversion campaigns: a Pixel misconfiguration. It is a composite example representing a real failure mode, not a single documented incident.
The situation: An e-commerce store running a Meta Ads campaign for a skincare product spent $900 over 12 days with zero reported conversions in Ads Manager. The advertiser had already tested three different creative variants and switched the bidding strategy from Cost Cap to Lowest Cost, with no improvement. The next planned step was to pause the campaign entirely.
Step 1 - Check the Pixel first: Before touching anything else, the advertiser opened Meta Events Manager and ran the Test Events tool. They navigated through their site to the checkout page and stopped. The Purchase event was not firing on the order confirmation page. It was firing on the cart page.
What happened: The developer had placed the Purchase event trigger on the 'Proceed to Checkout' button click rather than the order confirmation page load. Every visitor who clicked 'Checkout', including those who abandoned before paying, was being counted as a purchase in Meta's system. Actual purchases were invisible.
The fix: The Purchase event was moved to the order confirmation page (/thank-you) and tested again using the Test Events tool. The event fired correctly. The campaign was left unchanged.
The result: Within 48 hours, 28 purchases appeared in Ads Manager. The campaign had been converting throughout the 12-day period. Meta's algorithm had been receiving no purchase signal and could not optimize delivery toward buyers, but the underlying campaign and audience were performing. Fixing the Pixel was the entire fix.
The lesson
$900 spent on creative testing and bidding changes while the Pixel was broken was wasted effort. Layer 1 takes 5 minutes. Run it first.
When to Kill a Campaign vs Optimize It
Making this call is genuinely hard. The framework below covers both directions.
Kill the campaign (or pause and rebuild) when:
- The Pixel was broken and you've been running for more than 7 days. All conversion data from that period is corrupted; the campaign's algorithmic learning is built on incorrect signals and cannot be salvaged.
- The landing page conversion rate is below 0.5% and you've confirmed the traffic quality is good. A page problem this severe will not be solved by campaign-level adjustments.
- Frequency has reached 10+ on a small audience and you've already rotated creative twice with no improvement. The audience is genuinely exhausted.
- You've changed targeting, creative, or bidding more than 3 times in 30 days. Constant edits prevent the algorithm from stabilizing, and a clean reset is often faster than continued micro-adjustment.
Optimize (don't kill) when:
- The Pixel is verified working and total spend is below 3x your target CPA. You don't have enough data to render a verdict yet.
- CTR was strong early but fell recently. That's a clear symptom of creative fatigue with a clear fix (new creative). The campaign structure isn't the problem.
- One specific diagnostic layer has an identified problem that hasn't been fixed yet. A broken Pixel fixed is not the same as a bad campaign.
The reset principle
If you do rebuild, don't duplicate the existing campaign and change one element. That carries forward the corrupted learning signal. Create a genuinely new campaign with new structure, fresh creative, and verified tracking from day one.
Frequently Asked Questions
Frequently Asked Questions
Summary
When Facebook ads not working is what you're seeing, always verify the Pixel before touching the creative. A broken Pixel means every other analysis is built on bad data. The 5-layer diagnostic (Pixel > Audience > Creative > Offer > Budget) covers the root causes of underperformance in the order they should be investigated. Fix one layer at a time. If you've confirmed the Pixel is working and want to run this diagnostic against your actual account data automatically, AdAdvisor's AI-assisted diagnostic does this automatically using MCP.
One-Page Diagnostic Checklist
Work through each layer in order. Do not proceed to the next layer until all items in the current layer are confirmed.
Layer 1: Pixel & Tracking
- Test Events tool: Purchase event fires on order confirmation page (not cart, not checkout button)
- Meta Pixel Helper: no red error icons on any page in the purchase flow
- Event Match Quality (EMQ) on Purchase events: approximately 4/10 or above
- CAPI implemented alongside browser Pixel (critical for iOS traffic)
Layer 2: Audience
- Audience size: above 100,000 for Lowest Cost campaigns
- Frequency: below 4.0 for cold audiences within 7 days
- Audience overlap between ad sets: below 20–25%
- Campaign not accidentally assigned to a Special Ad Category
Layer 3: Creative
- CTR trend: not declining week-over-week (pull Breakdown > Time > Week)
- Frequency rising while CTR falls? (fatigue signal: rotate creative)
- Cold traffic CTR above 0.8%
- Ad creative running more than 4 weeks without refresh?
Layer 4: Offer & Landing Page
- Page load speed on mobile: below 3 seconds (Google PageSpeed Insights)
- Message match: landing page delivers exactly what the ad promised
- Mobile checkout: CTA button visible without scrolling; 3 steps or fewer to purchase
- GA4 landing page conversion rate: above 1% for e-commerce
- Trust signals visible above the fold (reviews, return policy, security badges)
Layer 5: Budget & Bidding
- Total spend above 3–5x target CPA before evaluating performance (tracking must be verified first)
- Cost Cap set at or above actual market CPA (switch to Lowest Cost temporarily to measure)
- Ad set not showing 'Learning Limited' in the Delivery column
- Daily budget not exhausting before end of day ('Budget Limited' in Delivery column)
Final check
- No more than 3 targeting, creative, or bidding changes made in the past 30 days
- If rebuilding: genuinely new campaign, not a duplicate with one element changed




