Meta Conversions API

    Meta Conversions API Setup for Accurate Conversion Tracking

    I help businesses run the Meta Pixel and the Meta Conversions API (CAPI) together, using a browser and server-side tracking setup that suits their website. That covers Pixel setup, CAPI integration, deduplication of browser and server events, Google Tag Manager and server-side GTM, and integrations for Shopify, WooCommerce and custom sites.

    • Meta Pixel setup
    • Meta Conversions API integration
    • Browser & server event deduplication
    • GTM & server-side GTM
    • Shopify & WooCommerce integrations

    Why the Meta Pixel alone may not be enough

    The Meta Pixel runs in your visitor's browser, and the browser is not always a dependable place to measure conversions. When some events never reach Meta, or arrive without enough customer information, Meta has less data to attribute results and optimise your campaigns. Sending the same events from a server through the Conversions API gives Meta a second, more dependable signal.

    • Browser privacy features can limit cookies and the data the Pixel collects
    • Ad blockers and network interruptions can stop Pixel requests from being sent
    • Events can arrive in Meta with missing values or customer parameters
    • Browser and server events can disagree, or be counted twice, without deduplication

    Who this service is for

    Shopify & WooCommerce stores

    Store owners who need purchases, add-to-carts and checkouts sent to Meta once, with the correct value and currency.

    Ecommerce businesses

    Brands on other platforms, including custom-built stores and digital product shops, that rely on Meta Ads for sales.

    Marketing agencies

    Agencies that need Meta Pixel and CAPI implemented properly for their clients, including white-label work.

    Lead-generation businesses

    Service businesses that need form submissions, bookings and other leads tracked reliably in Meta.

    Businesses with Pixel problems

    Anyone seeing errors in Events Manager, duplicate purchases, missing events or a low Event Match Quality score.

    What I offer

    Each project is scoped to your website and goals. These are the parts of a Meta Pixel and Conversions API setup I work on, and when you'd need each one.

    Meta Pixel installation & configuration

    Installing the Pixel through GTM or your platform's integration, with standard events and parameters. Needed when you're starting out, or when your current Pixel was added by several apps or developers.

    Meta Conversions API integration

    Sending the same events server-to-server so Meta receives them even when the browser doesn't deliver them. Needed when Meta Ads are an important sales or lead channel.

    GTM web and server-side tracking

    A GTM web container that captures events, and a server container on Stape.io or Google Cloud that forwards them to Meta from your own tracking subdomain.

    Server-side tracking setup

    Event deduplication using event_id

    Giving each browser and server event the same event name and event_id so Meta counts it once. Needed whenever the Pixel and CAPI both send the same event.

    Advanced matching & customer information parameters

    Sending customer information such as email and phone, normalised and hashed, plus parameters like fbp and fbc, so Meta can match events to people.

    Event Match Quality review

    Reviewing the Event Match Quality score for each event in Events Manager and identifying which parameters are missing. Useful when Meta shows low match quality warnings.

    Ecommerce event tracking

    ViewContent, AddToCart, InitiateCheckout and Purchase with product IDs, values and currency that match your catalog. Needed for ecommerce campaigns and catalog ads.

    Lead-generation conversion tracking

    Tracking forms, bookings and other lead actions as Meta events, including embedded and third-party tools where possible. Needed for lead-generation campaigns.

    Meta CAPI troubleshooting & audits

    Diagnosing Events Manager errors, duplicate or missing events, catalog mismatches and conflicting plugins or apps, then fixing the cause.

    Consent-aware tracking configuration

    Configuring the Pixel and CAPI to respect your cookie banner and consent choices, so events are only sent when your consent setup allows it.

    How Meta CAPI works

    A typical setup sends each event to Meta twice: once from the browser and once from your server.

    Browser events
    1. Website
    2. Meta Pixel
    3. Meta Events Manager
    Server events
    1. Website
    2. GTM web container
    3. Server-side GTM
    4. Meta Conversions API
    5. Meta Events Manager

    Meta deduplicates the two copies when the browser and server events use the same event name and the same event_id. The browser event and the server event are then counted as one conversion, and Meta can use the details from both.

    My implementation process

    01

    Tracking requirements & initial audit

    I review your current Pixel, Events Manager and website, and agree which events and values Meta needs to receive.

    02

    Tracking architecture & event planning

    You get a plan listing each event, its trigger, parameters, event_id and whether it's sent from the browser, the server or both.

    03

    Meta Pixel & CAPI implementation

    I build the Pixel and Conversions API setup in GTM and server-side GTM, or through your platform's integration where that fits better.

    04

    Deduplication & parameter configuration

    I configure event_id deduplication, advanced matching and customer information parameters for each event.

    05

    Testing with GTM Preview & Meta Test Events

    Every event is tested in GTM Preview, server container preview and Meta's Test Events tool, including real test conversions.

    06

    Final verification & documentation

    Once events are confirmed in Events Manager, you receive documentation and a walkthrough of the setup.

    Platforms & integrations

    Every platform gives different access to pages, checkout and data, so the implementation method changes from site to site.

    Shopify

    Built around Shopify's customer events and checkout limitations, with server events sent through server-side GTM.

    Shopify conversion tracking

    WooCommerce

    A dataLayer for store events, sent through GTM and a server container, avoiding stacked tracking plugins that fire the same event.

    WordPress

    GTM-based tracking for forms, bookings and key pages on non-store WordPress sites.

    Webflow

    GTM added through custom code, with form tracking and custom JavaScript where customer data needs to be collected.

    Payhip

    Workarounds for limited checkout access, such as a thank-you page redirect where GTM can fire the purchase.

    Custom websites

    A dataLayer specification your developers implement, or that I implement with access to the code.

    Google Tag Manager

    The web container that captures events and sends them to the Pixel and the server container.

    Stape.io

    Managed hosting for the server-side GTM container, with a custom tracking subdomain.

    Google Cloud / Cloud Run

    Self-hosted server-side GTM for teams that prefer to run their own infrastructure.

    What you receive

    • A working Meta Pixel and Conversions API setup for your agreed events
    • Deduplicated browser and server events using matching event names and event_id
    • Advanced matching and customer information parameters configured per event
    • Test results from GTM Preview and Meta Test Events
    • Documentation of every event, trigger and parameter
    • A recorded walkthrough and 30 days of post-launch support

    Meta Pixel & CAPI client case studies

    Three published projects where I implemented or repaired a Meta Pixel and Conversions API setup.

    WooCommerce

    WooCommerce duplicate purchase fix

    Meta Ads was reporting purchases twice because of a plugin-based CAPI setup with no proper event_id deduplication. I replaced it with a custom GTM web and server setup on Stape.io, with a custom domain, a custom loader and a clean event_id strategy shared by the Pixel and CAPI.

    Read the WooCommerce case study
    Payhip

    Payhip Meta Pixel & Conversions API

    Payhip offers no GTM access on checkout pages and no backend access. I built a custom thank-you page redirect so GTM could fire the Purchase event, sent to Meta through both the Pixel and the Conversions API with event_id deduplication.

    Read the Payhip case study
    Shopify

    Shopify Meta CAPI fix

    A Shopify store relying on native integrations and PagePilot had Events Manager errors, purchases not matching the catalog, duplicate events and weak match quality. I rebuilt the tracking with GTM web and server containers on Stape.io and the Conversions API, with event_id deduplication and live purchase testing.

    Read the Shopify case study

    Ways to work together

    I work remotely with businesses and agencies worldwide.

    Request a Meta CAPI setup

    Tell me about your website, platform and the events you need. I'll reply with how I'd set it up.

    Request a setup

    Fix an existing setup

    Seeing duplicates, errors or missing events in Events Manager? Request an audit of your current Pixel and CAPI.

    Request an audit

    Discuss a project

    Planning a larger tracking project or agency work? Book a call to talk through the scope.

    Book a call

    Frequently asked questions

    What is the Meta Conversions API?

    The Meta Conversions API (CAPI), formerly called the Facebook Conversions API, lets your server send website events directly to Meta. It works alongside the Meta Pixel, which sends events from the visitor's browser.

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

    In most setups, yes. Meta recommends using the Pixel and the Conversions API together. The Pixel captures browser activity, CAPI sends events from your server, and deduplication makes sure each event is only counted once.

    How does Meta deduplicate Pixel and CAPI events?

    When a browser event and a server event have the same event name and the same event_id, Meta treats them as one event. That's why each event needs a shared event_id generated on the website and passed to both.

    What is Event Match Quality?

    Event Match Quality is a score in Meta Events Manager that shows how well the customer information sent with an event can be matched to a Meta account. Sending more relevant, correctly formatted parameters, such as hashed email and phone, usually improves it.

    Do I need server-side GTM for the Conversions API?

    Not always. Some platforms offer their own CAPI integration. Server-side GTM gives you more control over which events and parameters are sent, and works across platforms, so I recommend it when a site needs a custom or more reliable setup.

    Can you fix duplicate purchases in Meta?

    Yes. Duplicates usually come from several apps or plugins sending the same event, or from browser and server events without a shared event_id. I find the source, remove conflicting tracking and set up deduplication.

    What access do you need?

    Usually admin access to your Meta Business Manager and Events Manager, Publish access to Google Tag Manager, and access to your website or platform. If code changes are needed, I can make them or give your developer exact instructions.

    How much does a Meta CAPI setup cost?

    It depends on your platform, the number of events and whether server-side GTM is needed. Share your project details on the contact page and I'll reply with a quote.

    Ready to set up Meta Pixel and Conversions API properly?

    Share your website and the events you need to track, and I'll tell you how I'd set it up.

    Request a Meta CAPI Setup