Perhaps the single most important metric you can set in Meta Ads is your ad performance goal:

As your ad campaign runs, Meta's AI learns and optimizes it to reach the most converting audience. It prioritizes those who convert (the "goal") and starts showing your ad to a similar audience.
How does Meta know who converted? By tracking conversions on your site, typically with the Meta Pixel.
So, what's the problem?
By using the Meta Pixel, you immediately exclude at least 20% of the most advanced and solvent 💸 users — those who could become paying customers. These 20-40% are users with ad blockers and privacy software.
Even if they purchase your goods or services, their blocker won't allow the conversion event to be sent to Meta. As a result, Meta Ads assumes this user never converted and continues to optimize your campaign for people who... don't use blockers.
While users with blockers are often the most tech-savvy and highest-spending, they are now excluded from ad optimization:
- ❌ Leads from the tech and IT market
- ❌ Leads from the crypto market
- ❌ Privacy-conscious individuals who prefer a "cleaner & safer internet"
- ...
Instead, you end up targeting:
- ✅ People who don't mind watching ads
- ✅ Users who have never installed a free ad blocker
- ✅ Individuals not using their "main device" (which a blocker installed)
- ...
This happens because the Meta conversion event gets blocked. Money wasting detected! 🔥

In this article, we'll explore how to set up or fix your conversion tracking so that Meta Ads (and any other ad provider, like TikTok or Snapchat Ads) can properly track and attribute your conversions, even from users with ad blockers.
Fixing broken conversion events caused by ad blockers, cookie restrictions, and ITP will maximize your profits from Meta Ads.
The expected result is wonderful:
💡 Your ads will finally start optimizing for your actual buying audience, increasing your targeting accuracy and ROAS (Return On Ad Spend), typically by 30-50%❗️
Does it matter if we track conversions from users with ad blockers?
Absolutely.
You might think: users with ad blockers don't see ads, so why track them?
But consider this:
- Mobile Meta App Users: System-wide ad blockers on mobile devices can't disable ads inside the Instagram or Facebook apps. These users may click on an ad, but when they land on your website in a privacy-focused browser (like Brave), their conversion won't be reported. Meta will then fail to optimize ad delivery for this user, even if they convert.
- Desktop Meta Users: In web versions of Meta's platforms, ad blockers have more control and can hide ads. However, native-looking ads that are indistinguishable from regular posts will still get through: there's simply no technical way to filter them out.
- Meta Audience Network: Meta ads aren't limited to Meta's own resources. Mobile apps and other software also display Meta ads. These ads are often not blocked, but the transition from the ad to your website will be, preventing Meta Pixel from firing and hence conversion tracking.
In short, while ad blockers can hide some ads, they don't block them everywhere. Users still click on ads, but when they land on your website, their ad blocker prevents the conversion from being reported, skewing your ad optimization away from this valuable audience.
How conversion events are tracked

There are generally two sources of conversion events, sometimes used together:
- Browser-sourced: Using the Meta Pixel, with or without tools like GTM or Signals Gateway.
↳ All blocked by ad blockers! - Server-sourced: Using the Conversions API (CAPI) to send events directly from your backend.
Don't confuse a Server-Side GTM setup with server-sourced events. ssGTM alone does not send your Facebook conversion events from the server. Events still originate from the browser and are blocked.
I won't be covering CAPI in-depth in this article, as there's no way for blockers to intercept your backend data flows. Unless... they are also browser-sourced!
You can confirm the issue by checking for blocked requests on your site using uBlock Origin or the built-in blocker in Brave. Open the Developer Tools and look at the Network tab. You will likely see either GTM or Meta Pixel blocked.

Below is an illustration of a typical Meta Pixel conversion reporting setup options, where your web browser reports conversion events to Meta:

In this flow, the browser is the starting point. When a user takes an action, the browser tries to send that event to Meta in one of three ways:
- Direct event reporting: The pixel sends data straight to
facebook.com
. - Server-side tag: The browser forwards the event to a server-side tag manager (e.g.,
gtm.yoursite.com
), which then relays it to Meta. - First-party tag: The browser sends the event to your own domain endpoint (e.g.,
yoursite.com/gtm
), which then passes it on.
All of these paths originate in the browser, meaning ad blockers can still intercept and block them.
The only exception is the Conversions API (CAPI), where events are sent directly from your server to Meta. Since they don't rely on the browser, blockers can't interfere. However, CAPI may not be suitable if you lack a server integration or the necessary parameters (like a user's email or campaign ID) to attribute the conversion.
When conversion tracking gets blocked
Most commonly, your Meta Ads conversion settings will look like this:

In this example, "Lead" is our conversion event. Whenever a user "converts" (e.g., fills out a registration form), we let Meta know by submitting a conversion event. This allows Meta to optimize our ad campaign by targeting a lookalike audience.
From the browser, we can submit this event using one of these methods:
- Calling
fbq('track', 'Lead')
in JavaScript. - Using the Event Setup Tool (which configures the same
fbq
call behind the scenes).
But if an ad blocker is enabled, this conversion event won't fire, and Meta won't be able to optimize its campaigns for your most valuable leads.
Ways to protect conversion tracking from ad blockers
There are a few scenarios you can follow to protect your Meta Ads conversion tracking:
- Managed: Add DataUnlocker to your site and enable the "meta" resource group in Network Protection. Installation is done once and requires minimal code changes.
- Manual: Ensure Meta receives ad campaign tracking events even when an ad blocker is enabled by supplying custom URL parameters and manually providing this data via CAPI.
1. Option 1: add DataUnlocker to your site
DataUnlocker is a comprehensive solution designed to fix all tracking issues, not just for Meta. It ensures you receive 100% accurate client-side data, something previously unattainable.

Here's a quick overview of setup steps:
- Add your domain: create a DataUnlocker account and add your website's domain. You get FREE filter rules tracking for your site immediatelly.
- Add a Transport Endpoint: set up a protected proxy for DataUnlocker to deliver traffic to any of your previously blocked back ends.
- Integrate Defender: tighly couple DataUnlocker Defender with your JavaScript sources, enabling DataUnlocker's protection core.
- Configure Network Protection: enable the "meta" resource group, which tells DataUnlocker to protect and proxy all requests related to Meta Pixel.
- Update Your tracking code location: for the best results, DataUnlocker offers Secure Enclave to store your tracking code, safeguarding it from blocking.
Read more here or watch our full DataUnlocker Admin walkthrough video. Feel free to reach out to our support for questions.
2. Option 2: manually protect Meta Pixel from ad blockers
If DataUnlocker isn't the right fit for your setup, you can manually implement a solution using Meta's Conversions API (CAPI) to report conversions from users with ad blockers. This requires more development work on both your frontend and backend.
Here's the process outline:
- Capture ad campaign identifiers: When a user clicks on your Meta Ad, Meta appends URL parameters like
fbclid
(Facebook Click ID) andfbc
(Facebook Browser Cookie) to your landing page URL. However, ad blockers often strip these parameters. To get around this, you must create your own custom, non-obvious URL parameters in your Meta Ad campaign's tracking settings. For example, instead offbclid
, you could use something likecampId
.

-
Store the identifiers: On your website, you'll need a custom JavaScript snippet to read these custom parameters (e.g.,
campId
) from the URL. This script must not be hosted by GTM or any other system that gets blocked. It should be part of your site's main JavaScript. Once you capture these values, you need to store them, for example, in a first-party cookie or in your backend session data. -
Send data to your server: When the user converts (e.g., fills out a form, makes a purchase), your custom JavaScript should send the captured campaign identifiers along with the conversion details to your own backend server. If the form submission is controlled by you and your backend, or the form provider has Meta's CAPI integration, ensure you pass through relevant Meta parameters.
-
Report conversion via CAPI: From your backend, you can now make a server-to-server call to the Meta Conversions API. You will send the conversion event (e.g., 'Lead', 'Purchase') along with the user's data and the
fbclid
or other identifiers you captured. This attributes the conversion back to the correct ad campaign, which is an entire purpose of this article.
This approach bypasses the browser-based Meta Pixel entirely for reporting the final conversion. However, be aware that if your website becomes popular, the custom parameters and scripts you use might eventually be added to ad blocker filter lists over time. If that happens, this manual solution will also fail, making a dynamic solution like DataUnlocker the only reliable long-term option.
Conclusion
The difference between a good and a great Meta Ad campaign lies in the data that fuels it. When ad blockers create blind spots, your campaign is flying partially blind, missing out on a segment of users that is often the most tech-savvy and has the highest purchasing power.
By ensuring every conversion is tracked — especially from users with blockers — you're not just fixing a technical issue. You are unlocking a more precise, more profitable, and more intelligent ad strategy.
The 30-50% increase in ROAS isn't just a number; it's the sound of your ads finally reaching the right people, thanks to Meta algorithms learning over time. Especially, if you're targeting people from tech industry.