Pixel vs Conversions API: what each one does, and when you need both
Updated
Short answer: a pixel reports an event from the visitor’s browser, and a Conversions API reports it from a server. The pixel sees the visitor directly but can be stopped on the way. The server can’t be stopped by the browser but only knows what it was told. Ad platforms ask for both, with one shared ID so the conversion is counted once.
What a browser pixel does
A pixel is a script from the ad platform that runs on your page. It reads the platform’s cookies and the click ID from the ad, and sends each event straight to the platform. It is simple to add and needs no token. It also runs in the least reliable place there is: an ad blocker, a browser’s privacy setting, a slow page or a closed tab can each stop it before the event leaves.
What a Conversions API does
A Conversions API is an endpoint your server, or a service like Pixelary, calls with an access token. Meta calls it the Conversions API, TikTok the Events API, and OpenAI has one for ChatGPT Ads. It doesn’t depend on what happens to scripts on the page, and it can carry hashed contact details, which help the platform match the event to an account.
Something still has to tell the server that the event happened. Usually that is a script on your site or a webhook from your payment provider. If that first step doesn’t run, there is nothing to send.
Side by side
| Browser pixel | Conversions API | |
|---|---|---|
| Runs in | The visitor’s browser | A server |
| Needs | A script on the page | An access token and something that reports the event |
| Stopped by | Ad blockers, browser settings, closed tabs | A dead token, a platform outage |
| Sees | Platform cookies, click IDs | What it is sent: hashed contact details, IP address, user agent, cookies passed along |
| Consent | Applies | Applies just the same |
Why platforms ask for both
Each one covers the other’s gap. Meta’s guide to running both explains how to send the same event from both sides and have one copy kept. The platform gets the browser’s cookies when the pixel gets through, and the event itself when it doesn’t.
What a server copy will not do
- It doesn’t get around consent. If a visitor said no, the server has no more right to send the event than the pixel does.
- It doesn’t promise a better ROAS. It gives the platform more complete data. What the platform does with it depends on your ads, your offer and your volume.
- It doesn’t always survive an ad blocker. If a script reports the event, a blocker that stops that script stops the server copy too. A webhook from your payment provider doesn’t have that problem.
- It doesn’t make numbers match. Platforms attribute by their own windows and models, so your own count and Ads Manager will still differ.
When a pixel alone is enough
If you are only starting out and spending little, a free pixel is a fine first step. If you advertise only on Meta and your site is simple, Meta’s free one-click setup may be all you need; here is the honest comparison. A server copy earns its keep when ad spend is real, when you run more than one platform, or when you need to see what each platform answered.
How Pixelary does it
One script on your site fires the pixels and sends a copy to our servers, which forward it to Meta, TikTok and ChatGPT Ads with the same event ID. The pixels are free on any number of sites, and server-side has a 14-day free trial: you are charged when it ends unless you cancel. The path of one event shows each step.