A few months ago the owner of a children's clothing store came to us. Her Facebook ads had "stopped working" almost overnight. Same budget, same creatives, yet reported purchases dropped by nearly half. When we compared the orders in her store with Ads Manager, the picture changed: sales had not fallen at all. Only what Meta could see had fallen.
The cause was dull and very common. A theme update had wiped the Meta Pixel code from the thank-you page, and there was no server-side connection through the Conversions API. The algorithm suddenly lost half its signals and began optimizing blind.
This guide explains how Meta Pixel works, why it is no longer enough on its own, and how to pair it with the Conversions API so your ads learn from real data.
What Meta Pixel is and why it matters
Meta Pixel (formerly the Facebook pixel) is a small JavaScript snippet placed on every page of your site. When a visitor views a page, adds a product to the cart or completes an order, the pixel sends a message to Meta. That is how the ad system learns what people did after clicking an ad.
The data serves three different purposes:
- Measurement. How many purchases, leads or sign-ups a campaign produced and at what cost.
- Optimization. The algorithm looks for people similar to those who already converted. More and cleaner signals mean better targeting.
- Audiences. Remarketing lists such as "viewed a product page in the last 14 days" or "added to cart but did not buy".
If the pixel is missing or misconfigured, all three suffer. A campaign can look like a failure while it actually drives sales, and budget gets allocated by gut feeling instead of data.
Standard and custom events
Meta Pixel works with events. PageView fires automatically on every page load. On top of it you add standard events that Meta understands natively:
- ViewContent - viewing a product or service
- AddToCart - adding to cart
- InitiateCheckout - starting checkout
- AddPaymentInfo - payment method entered
- Purchase - completed order, with value and currency
- Lead - submitted inquiry form
- CompleteRegistration - account sign-up
When no standard event fits, create a custom one, such as a click on the phone button. The rule is simple: optimize campaigns for the event closest to revenue that still has enough volume. For a store that is usually Purchase, for a service business it is Lead.
Why Meta Pixel alone now misses conversions
The pixel runs in the visitor's browser. Years ago that was enough. Today several obstacles sit between your site and Meta:
- Browser restrictions. Safari and Firefox block third-party cookies and shorten the life of some first-party cookies.
- iOS App Tracking Transparency. Since iOS 14.5 many iPhone users decline tracking in apps, including Facebook and Instagram.
- Ad blockers. Extensions such as uBlock block requests to Meta outright.
- Cookie banners. Under GDPR the pixel must not load without consent, so people who decline disappear from the data.
- Technical errors. Slow loading, redirects to payment gateways, a deleted thank-you page.
Depending on the audience, the pixel alone can miss 10 to 40 percent of real conversions. For an algorithm that learns from examples, that is a big loss.
What the Conversions API is and how it complements Meta Pixel
The Conversions API (CAPI) attacks the problem from the other side. Instead of the browser telling Meta what happened, your server does. When an order is saved in your database, the server sends a Purchase event straight to Meta, independent of the browser, blockers or iOS.
The Conversions API does not replace Meta Pixel. The two channels work together. The pixel keeps collecting rich behavioral signals from the browser, while CAPI makes sure key events reach Meta even when the browser fails.

Deduplication: the most common mistake
When the same event comes from both the pixel and the server, Meta has to know it is one purchase, not two. That is done with an event_id. Both channels send the same identifier (for example the order number) and the same event name. Meta sees the match and counts the purchase once.
Without deduplication reports inflate, ROAS looks fantastic and the algorithm learns from sales that never happened. We have audited accounts where "double" purchases led the owner to raise budgets before discovering the real return was half as high.
Event Match Quality
Server events are only as useful as Meta's ability to match them to a person. You send hashed data: email, phone, name, city, postcode, plus the fbp and fbc cookies and the visitor's IP. Events Manager shows a score from 0 to 10 per event. Aim for 6 or higher on Purchase and Lead. Below 5 usually means email or phone is missing.
Data is hashed with SHA-256 before sending, but that does not remove your GDPR obligations. Send only with consent and describe it in your privacy policy.
How to set up Meta Pixel and the Conversions API
There are several routes. The right one depends on your platform and how much control you want.
Option 1: The platform's official integration
Shopify, WooCommerce (via the official Facebook for WooCommerce plugin) and most large platforms offer a built-in Meta connection covering both pixel and CAPI. It is the fastest start. The downside is limited flexibility, and deduplication sometimes breaks after updates. If you run WooCommerce, check every plugin update.
Option 2: Conversions API Gateway
Meta's Gateway runs in the cloud and automatically mirrors pixel events to the server. No coding needed, but it carries a monthly hosting fee and cannot see events the pixel never captured.
Option 3: Server-side Google Tag Manager
This is the route we most often recommend for serious advertisers. You run a server container of Google Tag Manager on your own subdomain, such as track.yoursite.com. The browser sends data to your subdomain, and the server forwards it to Meta, Google Ads, GA4 and TikTok. You gain longer cookie life, full control over data and a single point of management.
Option 4: Direct integration in code
With a custom backend, a developer can call the Conversions API directly when an order is created. This is the most reliable method for Purchase, because the event fires exactly when the order exists. It requires development work but is essential when payments go through an external gateway and users do not always return to your site.
Comparing setup methods
| Method | Complexity | Accuracy | Flexibility | Best for |
|---|---|---|---|---|
| Meta Pixel only | Low | Low to medium | Medium | Testing, very small budgets |
| Platform integration | Low | Medium to high | Low | Small Shopify/WooCommerce stores |
| CAPI Gateway | Medium | High | Low | No developer, standard events |
| Server-side GTM | Medium to high | High | High | Several ad platforms, growing budgets |
| Direct code integration | High | Very high | Very high | Custom systems, external payments |
How to check that Meta Pixel works correctly
Installing the code is not the end. This is the checklist we run after every implementation:
- Meta Pixel Helper. A Chrome extension that shows which events fire on each page and flags errors.
- Test Events in Events Manager. Open the site through the test link and place a test order. You should see the event twice, once from Browser and once from Server, marked as deduplicated.
- Compare with real sales. For a week, compare Purchase counts in Ads Manager with orders in your store. A gap of 10 to 15 percent is normal due to attribution. More means a problem.
- Value and currency. Make sure Purchase carries the right amount and the EUR currency.
- Event Match Quality. A score under 5 on key events means you should add email and phone.
- Domain verification. Verify the domain in Business Manager and set event priorities.
Typical issues we find in audits
- The pixel is installed twice, once by hand and once via a plugin.
- Purchase fires on every reload of the thank-you page.
- Lead fires on button click rather than on successful form submission.
- The pixel loads before cookie consent is given.
- An old pixel from a previous agency still sends data to someone else's account.
Meta Pixel, data and your ad strategy
Accurate tracking is the foundation of every decision in Facebook advertising. With clean data you can use Advantage+ campaigns with confidence, scale winning ad sets and cut losers without guessing.
A coffee store we work with moved from pixel only to server-side GTM with the Conversions API. Reported purchases rose by about 22 percent with no change in real orders; Meta simply saw more of them. After three weeks of learning, cost per purchase fell by almost a fifth.
The same logic applies elsewhere: Google Ads has Enhanced Conversions, TikTok has the Events API. If you build server infrastructure, build it once for all of them. We handle this as part of our automation work when connecting stores, CRMs and ad accounts.
Frequently asked questions
Do I need the Conversions API if I already have Meta Pixel?
If you spend more than a token amount on Facebook and Instagram ads, yes. The pixel alone misses a meaningful share of conversions due to iOS, blockers and declined consent. CAPI fills that gap.
Does the Conversions API replace the pixel?
No. Meta recommends running both, deduplicated with event_id. The pixel provides browser signals, the server guarantees delivery of key events.
Is it legal to send emails and phone numbers to Meta?
Yes, within GDPR. Data is hashed, but you still need a legal basis, usually consent via your cookie banner, documented in your privacy policy.
How long does setup take?
A plugin integration takes a few hours. Server-side GTM with deduplication and testing usually takes a few working days. The algorithm then needs one to three weeks to adapt.
How much does the Conversions API cost?
Meta's API itself is free. Costs come from hosting the server container or Gateway (roughly 10 to 100 euros a month for most small and mid-sized sites) and setup time. For WEBPROGRESS projects we prepare an individual quote.
Next step
If you are not sure your Meta Pixel records everything, it almost certainly does not. Compare last month's orders with Ads Manager. A big gap means a data problem, not an ad problem.
WEBPROGRESS sets up Meta Pixel, the Conversions API and server-side tracking as part of our advertising services. Contact us for a review of your current setup and an individual quote within 24 hours.


