Conversion Tracking Basics: How to Measure Leads and Sales Properly
Define what counts as a conversion, set up GA4 and Tag Manager events, test them and keep personal data out of analytics.
What the Meta Pixel and Conversions API do, why to use both, how to avoid duplicate events and how to check everything in Events Manager.
Meta Ads can only optimise towards what it can see. If a lead or a purchase never reaches Meta, the system cannot learn from it, and your reports will undercount real results. That is why advertisers talk about the Meta Pixel and the Conversions API (often shortened to CAPI) so much.
The Pixel and the Conversions API are two routes for sending the same kind of events to Meta. Used together and set up carefully, they give more complete data. Set up carelessly, they count every lead twice. This guide explains what each does, how they work together, and how to check the result.
The Meta Pixel is a snippet of JavaScript on your website. When someone views a page, submits a form or buys something, it sends an event such as PageView, Lead or Purchase to your Meta dataset (the area in Events Manager where events are collected). Meta uses these events to:
Events can be standard (named by Meta, like Lead) or custom. Use standard events where they fit, because they are widely understood by the system. A typical set for a service business is PageView, ViewContent, Lead and Contact. For a shop, add AddToCart, InitiateCheckout and Purchase.
The Pixel depends on the visitor's browser. Ad blockers, browser privacy features, restricted cookies, slow page loads and people closing the page early can all stop an event from being sent. On iPhones and some browsers, privacy changes have made browser-only tracking less complete than it used to be.
The result is that Meta may see fewer conversions than really happened. That affects both reporting and optimisation, because the system has less data to learn from. This is the problem that server-side tracking is meant to reduce.
The Conversions API sends events from a server to Meta, not from the browser. Your website, CRM or tag server collects the event and passes it on, along with customer information parameters (such as hashed email or phone number) that help Meta match the event to a person who saw the ad. Because it does not depend on the browser, it can fill gaps the Pixel leaves.
It is not a replacement for good measurement design. It also does not bypass consent: you should only send data you are entitled to send. Meta recommends running the Pixel and the Conversions API together, known as a redundant setup, but check the current documentation for its latest guidance.
Note: The Conversions API is also useful for events that happen away from your website, such as a lead marked as "qualified" or "purchased" in your CRM. Sending these back helps Meta learn which leads are valuable.
If the same lead is sent by the Pixel and by the Conversions API, Meta needs to know it is one lead, not two. Meta's documented method is to send matching event names and matching event IDs from both sources, so it can keep one. Where event ID is missing, Meta may try other matching parameters, but the cleanest approach is to send an ID.
There are time limits on how close together the events must arrive for matching to work. Check the current documentation for the details, because they may change.
Warning: Do not use random, different IDs for each side. Also avoid sending the same Lead event from both a plugin and a custom tag. Duplicate setups from several tools are the most common cause of inflated lead counts.
The right method depends on how your site is built.
| Platform | Common approach |
|---|---|
| Shopify | Use the built-in Meta or Facebook and Instagram channel integration, which can enable both Pixel and Conversions API. See our Shopify services. |
| WordPress and WooCommerce | A reputable official or partner plugin with server-side events, or a tag manager setup |
| Custom or static sites | Google Tag Manager with a server container, direct server code or a partner integration |
| CRM leads | Send offline events from the CRM, with the lead's ID and consent in place |
For many small businesses, a partner integration or plugin is the simplest and most reliable route. For custom needs, Google Tag Manager with server-side tagging gives control, but it costs more to host and maintain. Pick the lightest method that gives accurate events. Make sure only one tool is sending each event.
Events Manager is where you confirm that data is flowing. After setup:
Our conversion tracking basics article covers the wider approach to testing tracking across platforms.
Tracking must respect the rules that apply to your visitors. In India, the Digital Personal Data Protection Act 2023 sets obligations around consent and personal data, and its rules continue to be rolled out, so take current professional advice. If you also reach visitors in the EU, UK or other regions, their laws may apply too.
Meta generally recommends using both together, because each can catch events the other misses. A Pixel-only setup can still work for a small campaign, but may give less complete data. Check the current documentation for the recommended setup.
Use Test Events and the diagnostics in Events Manager. If you see the same action reported twice from different sources without deduplication, check that the event names and event IDs match. Also compare Meta numbers with your actual leads.
It is a score in Events Manager showing how well the customer information you send can be matched to Meta accounts. Sending more valid parameters, with consent, usually improves it. Treat it as a guide, not a goal in itself.
On platforms like Shopify it can be switched on through an integration. On custom sites it needs more technical work, such as a server container or custom code. Choose a method you can maintain and test properly.
The Pixel and the Conversions API work best as a pair, with clean deduplication and regular checks in Events Manager. If your lead counts look wrong, or you want server-side tracking built properly, contact us and we will audit your setup. Our Meta Ads service includes tracking set-up.