Home / Blog / Facebook Ads Not Tracking Conversions

Facebook Ads Not Tracking Conversions? The Complete Fix (2026)

It's a horrible feeling. Money is leaving your ad account, Ads Manager shows zero or nearly zero conversions, and you can't tell if your ads are failing or your tracking is lying. Take a breath. In most cases the leads are real and the measurement is broken. Work through this checklist in order, top to bottom, and you'll find the break. Then we'll make sure you never have to do this again.

Full disclosure: we build DearConvert, a landing page builder with Meta's Conversions API built in. Steps 1 through 7 below work no matter what tool your pages run on. Our product only shows up in the final section, clearly labeled, so you can use the fixes and skip the pitch.
📷 Image placeholder (hero) Size: 1200 × 675 px (16:9)
What to show: A split graphic: on the left, an Ads Manager results column showing "3 leads"; on the right, an email inbox showing many new lead notifications. A big "?" between them.
Alt text: Ads Manager showing few conversions next to an inbox full of lead notifications

Step 1: Confirm the pixel is installed and firing

Start at the bottom of the stack. Install the free Meta Pixel Helper browser extension (Chrome), then open your landing page, the actual URL your ads send people to, not your homepage. The extension icon should light up and show your pixel ID with a PageView event.

Common breaks we see:

  • The pixel is on your main website but was never added to the landing page, which often lives on a different domain or a different tool.
  • A redesign or template change silently dropped the pixel snippet.
  • Two different pixel IDs are firing, and your campaign optimizes for the one that isn't on the page.

If Pixel Helper shows nothing, stop here. Everything else depends on this. Add the pixel to the landing page itself, reload, and confirm the PageView appears before moving on.

Step 2: Confirm the Lead event actually fires on submission

A firing pixel proves the wiring exists. It doesn't prove the conversion event happens. Open Events Manager, then the Test Events tab, enter your landing page URL, and submit your own form like a real visitor would. You should see a Lead event appear within seconds.

This is where most "my ads stopped tracking" mysteries live. The usual suspects:

  • The event fires on button click, not on success. If someone clicks submit with an invalid email, you count a lead that never existed. Worse, if the button code changed, you count nothing at all.
  • The event lives on a thank-you page that no longer loads. A changed redirect, a renamed URL, or a form that now submits without navigating anywhere, and your Lead event quietly dies.
  • The form is embedded from a third-party tool in an iframe. The submission happens inside someone else's page, so your pixel never sees it. This is a classic problem with embedded survey-style forms, and one of the reasons we wrote about form tools and lead gen tracking separately.
📷 Image placeholder Size: 1100 × 620 px
What to show: Screenshot of the Meta Events Manager Test Events tab with a PageView and a Lead event listed after a test form submission, timestamps visible
Alt text: Meta Events Manager Test Events tab showing a Lead event received after a test submission

Step 3: Check domain verification in Business Manager

In Business Manager, open Brand Safety, then Domains, and check that the domain your landing page lives on is verified. Verification is quick: you add a DNS record or a meta tag Meta gives you, and it confirms you own the domain.

Why it matters: domain verification is what lets you configure and prioritize your web events for that domain, and an unverified domain is a common source of event configuration problems and head-scratching gaps. It takes ten minutes and removes a whole category of weirdness. If your pages live on a subdomain of a page builder rather than your own domain, this is one more reason to connect a custom domain.

Step 4: Understand what iOS, Safari, and ad blockers silently eat

Here's the uncomfortable part: after steps 1 to 3, your tracking can be set up perfectly and Ads Manager will still undercount. That's not a bug in your setup. It's the 2026 reality of browser-based tracking.

  • iOS App Tracking Transparency lets iPhone users opt out of tracking, cutting the browser-side link between the ad tap and the conversion.
  • Safari's tracking prevention restricts the cookies and scripts the pixel relies on, degrading events from Apple devices across the board.
  • Ad blockers often block the pixel script entirely, so those visitors convert invisibly.

Together these eat a meaningful share of your conversions. This is exactly why your inbox and your CRM show more leads than Ads Manager: the leads arrived, but the browser never managed to tell Meta. Your inbox counts reality; the pixel counts what survived the browser. The gap between them is your signal loss, and no amount of pixel fiddling closes it. Only step 6 does.

Prefer pages where tracking is someone else's job? Every DearConvert Pro page fires server-side Lead events through Meta's Conversions API, deduplicated with your pixel automatically. Paste one token and stop doing tracking archaeology.

Try DearConvert free →

Step 5: Check your attribution window settings

Open your ad set and look at the attribution setting. If it's set to a narrow window like 1-day click, leads who click today and convert on Thursday won't be attributed to the ad. That can make a working campaign look broken, especially for offers people think about before signing up.

Also remember Ads Manager attributes conversions to the time of the ad interaction, not the moment the lead converted, so a day-by-day comparison against your inbox will never line up perfectly. Before declaring your tracking dead, check whether a wider window (like 7-day click) tells a different story, and compare week against week rather than day against day.

Step 6: The durable fix: run CAPI alongside the pixel

Everything up to here patches the browser path. The durable fix adds a second path that blockers can't touch: the Meta Conversions API. In one sentence, CAPI means your server tells Meta about the conversion directly instead of relying on the visitor's browser to report it.

Run it alongside your pixel, not instead of it. That's Meta's official recommendation, and the reason is deduplication: the pixel and the server send the same event ID for the same submission, so Meta counts one lead with the best data from both sources. Browser blocked? The server event still lands. Browser fine? Meta merges the two reports into one.

There are three ways to set it up: a developer coding against the API, a server-side Google Tag Manager container you host yourself, or a page builder with CAPI already built in. We wrote a full, honest comparison of all three paths in our Conversions API guide for landing pages. If you only read one link from this post, make it that one.

Step 7: Verify events are flowing in Events Manager

Once your fix is in, prove it. Go back to the Test Events tab and submit another test lead. You want to see the Lead event arrive, and if you've set up CAPI, you want to see events coming from both browser and server, marked as deduplicated rather than counted twice.

Then check the main Events Manager overview over the next day or two of real traffic. Healthy signs: Lead events flowing steadily, both connection channels reporting, and no red warnings on the event. Finally, compare a full week of Ads Manager leads against the same week in your inbox. The gap should be dramatically smaller than the one that sent you to this article.

How to never deal with this again

Notice what all seven steps have in common: they're maintenance on a machine you assembled yourself from a page tool, a form tool, a pixel snippet, and a redirect. Every moving part is a place where tracking silently breaks the next time someone edits the page.

The alternative is to use pages where the whole pipeline ships as one piece. On DearConvert Pro, the Conversions API is built in: you paste your Meta access token into site settings once, and from then on every form submission fires a server-side Lead event, deduplicated with your browser pixel automatically. There's no thank-you-page dependency, because the event fires when the submission actually happens, and no developer or tagging server anywhere. Pro is $49 a month ($39 annual), it starts with a 14-day trial with no credit card, and the plan details are on our pricing page.

To be fair about who we are: DearConvert is a newer product with a smaller template library than the old guard, and we don't do heatmaps. But if the last hour of your life was spent staring at Pixel Helper, "tracking that installs in one paste" might be the feature that matters.

📷 Image placeholder Size: 1100 × 620 px
What to show: DearConvert site settings screen with the Meta access token field and a toggle or badge showing Conversions API active
Alt text: DearConvert settings showing Meta Conversions API enabled with a pasted access token

FAQ

Why does my inbox show more leads than Ads Manager?

Because browser-based tracking loses a meaningful share of conversions to iOS App Tracking Transparency, Safari's tracking prevention, and ad blockers. The leads happen, but the pixel never gets to report them. Running the Conversions API alongside the pixel closes most of that gap.

Is the Meta pixel dead in 2026?

No. It still works for a large share of visitors and provides browser context that improves match quality. Meta's recommendation is to run it together with the Conversions API, with deduplication so each lead is counted once.

Do I need the Conversions API on a small budget?

The smaller your budget, the fewer conversions you have, and the more each lost signal hurts Meta's ability to optimize. CAPI used to require a developer, which made it a big-advertiser tool. Now that builders ship it built in for the price of a mid-tier plan, it's reasonable at almost any spend.

Will fixing tracking actually improve my results, or just my reporting?

Both, usually. Reporting improves immediately because more real conversions get counted. Performance typically improves over time because Meta's delivery system optimizes based on the conversions it sees, and now it sees more of them. Nobody honest will promise you a specific percentage.

How fast should events show up in the Test Events tab?

Within seconds of your test submission. If nothing appears after a minute, recheck that you're testing the exact URL your ads use, that the pixel ID matches, and that the event isn't waiting on a thank-you page that never loads.

Events show in Test Events but my campaign still reports zero. Why?

Check that your ad set is optimizing for the same event you're firing (Lead, not a custom event), that your attribution window isn't unrealistically narrow, and that the campaign has had enough time and budget to record conversions. Then compare against a full week, not a single day.

Keep reading

Tracking that survives iOS, Safari, and ad blockers

Landing pages with the Meta Conversions API built in. Paste a token, get deduplicated server-side Lead events on every submission.

Start free →