Asset 20 8 2
Does AI recommend your business? Run the free check →

Join 15,000 business owners, marketers and entrepreneurs. The Sunday newsletter you'll be annoyed only arrives once a week.

Article

Meta Conversions API: What It Does, How It Differs From the Pixel and How to Avoid Double Counting

The Meta Conversions API is a way to send your marketing data to Meta directly from your server, website platform, app or CRM, instead of relying only on the Meta Pixel in a visitor's browser. Meta says the data is less affected by browser loading errors, connection problems and ad blockers, which helps its ad system lower your cost per result. Most businesses run it alongside the pixel, not instead of it.

The detail that trips people up is double counting. If the pixel and the Conversions API both send the same purchase, Meta needs to know it's one sale, not two. That only works when both events share the same event name and the same event ID, or, if there's no event ID, the same external ID or fbp value. Without that, your reports show more conversions than you really had.

Pixel vs Conversions API

Meta PixelConversions API
Where it runsIn the visitor's browserOn your server, platform, app or CRM
What can block itBrowser settings, connection issues, ad blockersMeta says it's less affected by these
Events it can sendWebsite eventsWebsite, app, offline and messaging events
SetupBase code or a partner integrationPartner integration, Meta-enabled web-only option, or manual
Meta's adviceUse itUse it alongside the pixel

What the Conversions API can send

Meta describes it as a single API for events from websites, physical stores, email, business chat, phone, mobile apps and offline sources. In practice that splits into four groups:

  • Website events. The same events the pixel sends, plus later actions such as subscriptions after a purchase, in-store actions and customer scores.
  • App events. Meta says you can send new event data without maintaining the Facebook SDK for iOS or Android or waiting for app updates.
  • Offline events. In-store purchases, so you can measure store sales driven by ads, build audiences from them and run lift studies.
  • Messaging events. Actions in business chats on Messenger, Instagram or WhatsApp. Meta says optimisation is currently only available for purchase events on Messenger.

Meta also notes that the old Offline Conversions API was due to be discontinued in May 2025, and recommends moving offline uploads to datasets through the Conversions API.

Why Meta pushes it

Meta's Business Help Center gives four reasons to use the Conversions API for website events:

  1. Better connectivity, which helps reduce cost per result when it runs with the pixel.
  2. Optimising for later actions like subscriptions or in-store purchases, not just the first click.
  3. Better measurement of how ads affect online and offline results.
  4. More matched events. You can include extra customer information parameters that raise your event match quality.

Meta is clear that website events sent through the Conversions API are linked to your pixel and used for the same optimisation and reporting. They also follow the same privacy controls and Business Tools terms, and Meta says the API isn't designed to get around rules such as Apple's App Tracking Transparency or Europe's ePrivacy Directive.

How to set it up

In Events Manager, when you connect a website, Meta asks you to choose Conversions API and Meta Pixel or Meta Pixel only. If you pick both, the options are:

Setup optionWho it suits
Partner integrationBusinesses on a supported platform. Meta says many partners, such as Shopify and WooCommerce, handle deduplication parameters for you
Meta-enabled, web-only Conversions APIBusinesses that want Meta to guide a website-only setup
Manual setupBusinesses with a developer. Events Manager can create personalised instructions to send them

Meta says many integrations don't need a developer at all. If your site is built on Kartra, I've covered that route in connecting Kartra to the Facebook Conversions API.

Deduplication: the step you can't skip

If you send the same event from the browser and the server, Meta needs two matching values to merge them:

  1. The event_name must match, for example Purchase from both.
  2. The event_id must be identical for both events.
  3. Optionally, add external_ID or fbp. Meta can deduplicate on the event name plus one of these if there's no event ID.

When the two events are similar, Meta says it keeps the one it received first. If you send different events from each source, for example add to cart from the browser and purchase from the server, you don't need deduplication at all. You can check which events were received, merged or dropped with the test events tool in Events Manager.

Work with me

Want AI doing the heavy lifting in your marketing?

I build the systems that handle the boring 80 percent, so you get your week back. Done properly, with the human kept in.

Lead ads and the Conversions API

For lead ads, Meta's developer documentation says you can send your CRM data about which leads turned out to be good back to Meta through the Conversions API. That lets Meta optimise for quality leads rather than any form fill.

My advice

If you sell online and spend real budget on Meta ads, set up the Conversions API next to your pixel, and use your platform's partner integration if it has one, because that usually sorts the deduplication for you. Then send a test purchase and check Events Manager shows it once, not twice. For the wider setup, my guide on conversion tracking for Meta ads walks through event choices.

Frequently asked questions

What is the Meta Conversions API?

It's a way to send marketing events to Meta from your server, platform, app or CRM rather than only from the pixel in the browser, so fewer events are lost to ad blockers and browser issues.

Do I still need the Meta Pixel if I use the Conversions API?

Meta recommends using both. Website events sent through the Conversions API are linked to your pixel and used for the same optimisation and reporting.

How do I stop double counting with the pixel and Conversions API?

Send the same event_name and an identical event_id from both sources. Meta can also deduplicate using external_ID or fbp if there's no event ID.

Do I need a developer for the Conversions API?

Not always. Meta says many partner integrations, such as Shopify and WooCommerce, don't need a developer and handle deduplication for you.

Can the Conversions API send offline sales?

Yes. Meta says it supports offline events such as in-store purchases, which you can use for measurement, audiences and lift studies.

Published and maintained by the Lilach Bullock team, covering marketing, AI and business growth.
Your buyers are asking AI who to use. Does it say you?

See for free whether ChatGPT, Claude, Perplexity, Gemini and Google name you, and get the plan to become the answer.

Check my AI visibility →
Sundays only

Get the Sunday newsletter.

One email a week. AI experiments, marketing tactics, and the workflows Lilach is building right now in her own business.

Subscribe free

Let’s get your marketing running on AI.

Book a free 30-minute call

We figure out what you need, where AI fits in, and what working together would look like.

Book the call →

Or take the 30-second calculator

You’ll see the hours and the money quietly leaking out of your week, and the three workflows worth building first.

Take the calculator →

Or grab the free AI resource library

Prompt packs, templates, checklists, and swipe files. The exact tools I build for paying clients. Yours, free.

Get the library →
Keep reading

More from the blog.