Skip to content

Meta Conversions API

Meta Conversions API for lead gen: send Meta deals, not form fills.

Every Meta click is captured with its fbclid, followed through your CRM, and sent back with the deal value attached.

  • Hashed match keys on every event
  • Deduplicated with your pixel
  • Live in 21 minutes, no developer

Rated by teams that send Meta more than form fills

  • Google
  • TrustpilotRated 4.9 out of 5 on Trustpilot4.9
  • G2Rated 5.0 out of 5 on G25.0
  • CapterraRated 5.0 out of 5 on Capterra5.0

Conversions API events from

  • Trading.de logo
  • Swedish Cold logo
  • Trustfactory logo
  • MLK Digital logo
  • CPC AG logo
  • DaxoMedia logo
  • Contentbär logo
  • Hivebuy logo
  • OBVIOUS logo

The same Lead event, pixel only and through the API

Your workspace
Event match qualityLead event, Meta Conversions API, last 7 days
8.7/10Through LeadJourney5.4 pixel only, same form
  • Email, hashed
  • Phone, hashed
  • First and last name, hashed
  • Click ID (fbc) from the fbclid
  • Browser ID (fbp)
  • IP address and user agent
  • External ID
  • Date of birth

Meta computes the score in Events Manager from the customer information each event carries. These are the fields this one carried.

The definition

What is the Meta Conversions API?

In short

The Meta Conversions API (CAPI) sends conversion events from your server to Meta, alongside or instead of the pixel. Each event carries hashed customer information that Meta matches to a person and scores out of 10, and an event ID that deduplicates it against the pixel. For lead generation it is how booked calls and closed deals reach the algorithm.

  • Send events server to server

    The event leaves your server, not the visitor's browser, so an ad blocker, iOS or a declined cookie cannot stop it on the way. That capture layer is server-side tracking.

  • Carry the match keys

    Hashed email, phone and name, the click ID (fbc) and browser ID (fbp), IP and user agent. Meta matches on these and reports it as event match quality; a bare event scores low.

  • Deduplicate against the pixel

    A browser event and a server event for the same conversion share an event ID and an event name, so Events Manager counts one conversion, not two, and you can keep the pixel running.

  • Send outcomes, not only form fills

    For lead gen the conversion that matters happens in the CRM weeks later. The API is how a booked call, a qualified lead and a closed deal reach Meta. See the Meta Ads integration.

Why the pixel is not enough for lead gen

Meta optimises on the conversions it receives. From a pixel, that is form fills, and not all of them.

A lead gen funnel gives Meta one browser event, the form, and the pixel loses a share of even that. Everything that decides whether the campaign made money happens afterwards, in the CRM.

  • The pixel stops at the form. Meta learns who fills in forms and finds more of them. It never learns which of them booked, qualified or bought.
  • Form fills are cheap signals. Optimising on them rewards the audiences that click and fill, not the ones that close. Cost per lead falls while cost per customer climbs.
  • A share of the form fills never arrive. iOS, Safari's cookie cap, ad blockers and declined banners take their cut before the browser event fires.
  • Low match quality wastes the events that do arrive. A pixel event carries little customer information, so Meta cannot land it on the ad that earned it.
  • Hand-built CAPI is a project. A Gateway to deploy or a server GTM container to host, tag templates, an access token, event IDs on both sides, and a developer to keep all of it current.
  • Offline conversions by CSV are always late. Uploading last month's closed deals teaches the algorithm what worked last month, after the budget has moved on.

The algorithm is not wrong. It is doing exactly what the form fill told it to. Send it the deals and it finds buyers.

Watch it

What you send Meta decides what it optimises for

A walkthrough of sending qualified leads and closed revenue back through the API, instead of every form fill at the same value.

4:35 minutesAll videos

Case studies

What changes once the attribution is right

One measured result per customer, with the person, the role and the company behind it.

  • Portrait of Karsten Guhr

    Tax and accounting

    54% better lead quality after using LeadJourney for marketing

    Karsten Guhr

    Managing Director

    Read the story
  • Portrait of Nikita Yatsun

    SEO agency

    95% clarity about marketing KPIs and a foundation to scale

    Nikita Yatsun

    Managing Director

    Read the story
  • Portrait of Florian Buck

    Klickkraft GmbH

    Business coaching

    €10-20k in monthly Meta spend, tied to qualified leads and revenue per ad

    Florian Buck

    Managing Director

    Read the story
  • Portrait of Marc Richard

    LinkedIn growth agency

    2x customer retention, once every LinkedIn touchpoint was tracked to revenue

    Marc Richard

    CEO

    Read the story
  • Portrait of Andreas Malkow

    Digital publishing

    Which article produced the lead and the revenue, across AI and organic search

    Andreas Malkow

    CEO & Head of PR

    Read the story
  • Portrait of Philipp Nessmann

    SEO and GEO agency

    Proven ROI on every retainer, from organic and AI search leads through to revenue

    Philipp Nessmann

    Managing Director

    Read the story
  • Getreach

    Backlinks marketplace (SaaS)

    0 to 100k in revenue from paid ads alone, inside the first month

    Getreach

    getreach.com

    Read the story

How the data moves

The click comes in from Meta. The deal goes back to Meta.

The click lands on your own subdomain with its fbclid. The CRM reports each stage change, and LeadJourney sends the mapped stages back to Meta with hashed match keys and the deal value, deduplicated against the pixel.

Meta and where your leads convert

LeadJourney

Sent server to server

What Meta receives

  • Lead
  • Schedule
  • Qualified lead (custom)
  • Purchase, with value

The stages come from your CRM

and 100+ more by webhook
Lead, Schedule, Purchase and custom events back to Meta with hashed match keys and values

Meta and your CRM

Meta on one side, the CRM your stages live in on the other.

The Conversions API events come from wherever the lead converts and moves: the CRMs, forms, schedulers and payment tools below. Google, LinkedIn and Microsoft get the same events through their own APIs.

Ad platforms

Spend, campaign structure and click IDs come in. Closed deals go back out as offline conversions.

All traffic channels

Organic channels

Unpaid clicks from search and social, attributed per post, per video and per keyword.

All traffic channels

AI search engines

The traffic your analytics still files under direct. No setup, the tracking script separates it.

All traffic channels

CRM and sales

Lead stage and deal value flow in. Every campaign sees the revenue it actually produced.

All CRM and sales tools

What the software does

Everything a Conversions API setup has to do, without the project.

fbclid and fbp captured first-party

The click ID is recorded on your own subdomain the moment the visitor lands and kept for months, so an event fired from a CRM stage six weeks later still carries the fbc Meta matches the click on.

CRM stages mapped to Meta events

Choose which stage becomes which event: new lead to Lead, meeting booked to Schedule, deal won to Purchase, anything else to a custom event. Native for HubSpot, Pipedrive, Close and Attio, a webhook for Salesforce and 100+ more.

Hashed match keys on every event

Email and phone from the CRM record, hashed on the server, plus the fbclid, the fbp, IP address and user agent. More identifiers per event is the only lever event match quality has.

Server to server, deduplicated

Events go through the Conversions API with an event ID your pixel shares, so a conversion both of them saw counts once in Events Manager. Keep the pixel as the browser signal, or run without it.

Offline conversions with the deal value

A deal that closes three weeks after the click goes back as a Purchase event with its won amount and currency, so value based bidding and cost caps optimise against real numbers. See offline conversion tracking.

Live in 21 minutes, nothing to host

No Conversions API Gateway to deploy, no server GTM container to pay for, no access token to rotate. One script on your site, Meta and the CRM connected by OAuth, the stages mapped.

Why the event matters more than the pipe

Meta finds more of whatever you send it. Send it customers.

The Conversions API is a pipe, and a pipe only carries what you put in it. Fed form fills, Meta finds form fillers. Fed booked calls and closed deals with values and high match quality, it finds the people who become those. LeadJourney's job is having the right events.

Inside the setup

What the Conversions API looks like once the CRM is feeding it.

Your workspace
Conversions API feedSent to Meta, last hour
Live
  • LeadForm on /pricing · Mira SchulzEmail, phone, fbclidMatched
  • ScheduleCalendly booking · Tom BeckerEmail, phone, fbclidMatched
  • QualifiedLead (custom)HubSpot stage change · Fintory€38,000 valueSent to Meta
  • LeadPixel event, same form as row oneSame event IDDeduplicated

Four rows, three conversions. The fourth is the pixel's copy, counted once.

The event feed

Every event on its way to Meta, with what it carried and whether it matched.

A live log of every Conversions API event: the CRM stage or form that fired it, the match keys, the value attached, and the status Meta returned.

  • Lead, Schedule, Purchase and custom events in one log
  • Hashed email, phone and click ID listed per event
  • Pixel duplicates marked as deduplicated, not dropped silently
  • Match status and value on every row
Your workspace
Stage to event mappingHubSpot pipeline to the Meta Conversions API, last 30 days
342Events sent to Meta
4Stages mapped
50Carried a deal value
CRM stageMeta eventValue sent
New leadLeadNo value
Meeting bookedScheduleNo value
QualifiedQualifiedLead (custom)Deal value
Closed wonPurchaseWon amount + currency
Closed lostNot sentNot sent

The 50 events with a value are the ones the algorithm learns buyers from.

Stage mapping

Which CRM stage becomes which Meta event, and what value rides with it.

The mapping is a table you fill in once. Each CRM stage you choose becomes a standard or custom Meta event, fires the moment the stage changes, and carries the deal value where there is one. Nothing you have not mapped is ever sent.

  • Standard events (Lead, Schedule, Purchase) or a custom event name per stage
  • Deal value and currency from the CRM on the stages that have one
  • Fires on the stage change, not on a monthly upload
  • Lost deals stay home: only mapped stages leave
Your workspace
Events received by MetaPixel only against pixel plus Conversions API, last 30 days
Pixel only214events, the form fills and bookings that survived the browser
Pixel plus Conversions API342events, deduplicated, CRM stages included
Added by the API+128 events Meta never saw
EventPixel onlyPixel + CAPI
Lead176231
Schedule3861
QualifiedLead (custom)029
Purchase, with value021

The last two rows are the ones that teach Meta what a buyer looks like. The pixel has never sent one.

Pixel only against pixel plus API

What Meta received before and after the Conversions API was switched on.

The same account, the same 30 days, two ways of feeding Meta. Pixel only: the form fills that survived the browser. Pixel plus Conversions API: every Lead and Schedule, deduplicated, plus the won deals it never saw.

  • Every event received, matched and deduplicated per type
  • The rows the pixel cannot produce: QualifiedLead and Purchase
  • The events the browser dropped, arriving server to server
  • The same figures, readable in Events Manager

Live in 21 minutes

The Conversions API set up in three steps

No Gateway to deploy, no server GTM container to host, no access token to paste.

  1. 1About 5 minutes

    Install first-party

    Point a subdomain at LeadJourney and add one script to your site. Every Meta click is captured with its fbclid on your own domain, past ad blockers and iOS, from the first visit.

  2. 2About 10 minutes

    Connect Meta and your CRM

    Sign in to Meta by OAuth; there is no access token to paste and no Gateway to deploy. Connect the CRM where the stages live: native for HubSpot, Pipedrive, Close and Attio, a webhook for Salesforce and the rest.

  3. 3Same day

    Map the stages

    Choose which CRM stages become which Meta events and which of them carry a value. The existing pixel stays and is deduplicated from the first event, and every event that leaves is in the log.

How it compares

The pixel alone, a server you host yourself, and a managed layer fed by the CRM.

What you needMeta AdsPixel onlyServer-side Google Tag ManagerConversions API Gateway / server GTMLeadJourney
Where the event is sent fromNo: The browser, if the script loadsYes: A server you deploy and pay forYes: A managed first-party layer
Events after the form fillNo: Stops at the formPartly: Only with a CRM webhook and tags you buildYes: Any CRM stage, with the deal value
Match keys on every eventPartly: Advanced matching a developer wiresPartly: Whatever the browser passed to the containerYes: Hashed email and phone from the CRM, fbclid, fbp
Deduplication with the pixelNo: One count, no server copyPartly: Automatic in the Gateway, configured in server GTMYes: Event ID shared automatically
Who builds and maintains itYes: One pixel, one tagNo: Hosting, updates, templates, a developerYes: 21 minutes, no developer
Consent, hosting and DPANo: Third-party and cookie-dependentPartly: Region and consent handling you configureYes: Frankfurt, consent-aware, Art. 28 DPA

What changes

What changes once Meta hears about the deal, not just the form.

Up:

Events Meta can learn from

Booked calls, qualified leads and closed deals with values arrive as conversions, so the algorithm optimises on buyers instead of on the people most likely to fill in a form.

Up:

Event match quality

Hashed email and phone from the CRM, the fbclid and the fbp on every event give Meta more to match on than the pixel ever carried, and a matched event is one it can credit.

Down:

Cost per qualified lead

When Meta bids on the people who book and buy, the cost of a lead that sales actually wants falls, even where the cost per form fill rises.

Done:

Conversions the pixel dropped

Form fills lost to iOS, ad blockers and declined banners arrive server to server, deduplicated against the ones the pixel did catch.

Done:

Nothing to host or rotate

No Gateway instance, no server GTM container, no access token in a spreadsheet. The layer is managed and the subdomain is yours.

Lasting:

Ads Manager and the CRM agree

The Purchase events carry the CRM's won amounts, so the revenue Meta reports is a number your pipeline can confirm.

Original reviews

What our customers wrote, word for word

4.9 out of 5 across 11 public reviews. Quoted as they were left, shortened only by dropping whole sentences.

  • 5 out of 5 starsGoogle

    Before LeadJourney, we had no reliable tracking concept for our five-figure ad spend. We were manually building spreadsheet and CRM reports, inaccurate and time-consuming. Within two days, everything was set up. For the first time, I know exactly what I pay per lead and which campaigns actually bring in the best-qualified prospects.

    Florian BuckCEO, Klickkraft GmbH
  • With LeadJourney we are able to track all our leads and connect them with sales and attribution data to make better decisions. In the first month of using it we scaled from 0 to 100k revenue from paid ads only.

    GetreachBacklinks Marketplace (SaaS)
  • 5 out of 5 starsG2

    LeadJourney finally fixed my Marketing Analytics. It goes way beyond basic Ad Tracking Software. The Customer Journey Report saves hours of digging, and capturing everything from Offline Conversions to AI Search Tracking makes it the Best B2B Attribution Platform available.

    Sascha LenzMarketing Manager
  • 5 out of 5 starsTrustpilot

    Connected LeadJourney for 2 clients, setup took literally 20 minutes each. The data became more accurate, the reports actually make sense. Now clients look at the dashboard and the 'why don't the numbers match?' questions are gone.

    Alexander SamarPerformance Marketing Agency
  • 5 out of 5 starsGoogle

    With LeadJourney, we have finally found a tool that provides us with the data we need to scale our performance marketing campaigns. The most important KPI is no longer lead price but cost per qualified lead.

    Steffen SiesingCEO, Bilanzmanufaktur GmbH
  • 5 out of 5 starsG2

    The ability to track both online and offline conversions in one unified dashboard has given us insights we never had before. Our ROI has improved dramatically since we started integrating LeadJourney with our CRM. We're finally able to see the full customer journey, and it's been a game changer for our strategy.

    Andre WitzelFounder, Trading.de
  • 5 out of 5 starsTrustpilot

    The ability to seamlessly integrate data from multiple channels and see real-time insights has significantly improved our campaign results. We now focus on metrics that truly matter, like ROI and qualified leads.

    Nikita YatsunCEO, RLV Media GmbH

Common questions

The Meta Conversions API, the questions lead gen advertisers ask

What media buyers and marketing teams want to know before they send Meta more than the pixel does.

What is the difference between the Meta pixel and the Conversions API?

The pixel is JavaScript in the visitor's browser that sends events to Meta from there. The Conversions API sends them from a server. The browser is where iOS, ad blockers and consent banners intervene, and where knowledge of the visitor ends at the form fill. The API is not stopped in the browser and can carry events the browser never sees, such as a deal closing in the CRM. Meta recommends running both, deduplicated by event ID.

Do I need a developer, a Conversions API Gateway or server-side GTM?

No. The Gateway and server GTM are ways to host the server that sends the events. LeadJourney is that server, managed, on a subdomain you own: one script, Meta and the CRM connected by OAuth, the stages mapped, about 21 minutes. The Stape comparison puts the hosted container next to the managed layer.

Which events should a lead gen advertiser send?

Lead when the form is submitted, Schedule when a meeting is booked, a custom event such as QualifiedLead when sales accepts the lead, and Purchase with the won amount and currency when the deal closes. The guide to the Meta Conversion API for lead generation explains what each one teaches the algorithm.

What is event match quality, and will my score go up?

Event match quality is the score, out of 10, that Meta gives each event in Events Manager for how much customer information it carries: hashed email, phone, name, click ID, browser ID, IP address, external ID. More identifiers per event means a higher score and more conversions credited to the ad that earned them. LeadJourney controls what the score measures, the identifiers on the event; Meta computes the score, so no honest vendor promises a number. What every event carried is in the log.

Will it double count against my existing pixel?

No. Server events carry an event ID and event name the pixel shares, so a conversion both of them saw is counted once in Events Manager. You can keep the pixel as the browser signal or run without it; the server events do not depend on it.

Can it send closed deals with their value weeks after the click?

Yes. The fbclid is captured at click time and kept for months on the server, so a Purchase event fired from a CRM stage in week six still carries the click Meta matches it to, with the won amount and currency from the CRM record. That is offline conversion tracking without the CSV upload.

Is sending hashed customer data to Meta GDPR compliant?

Hashed match keys are how the Conversions API is designed to work, and they are not a way around consent. LeadJourney reads your consent state, hashes email and phone on the server before they leave, lets you choose which stages and which fields are sent, is hosted in Frankfurt and signs an Art. 28 data processing agreement. Nothing you have not mapped is ever sent.

How is this different from the Meta Ads integration page?

The Meta Ads integration page covers the whole loop with Meta: spend and campaign import, the click capture, attribution across every touchpoint, audience sync and the Conversions API. This page is the Conversions API part of it in depth, for the advertiser whose question is how CRM outcomes get back to Meta and what each event has to carry.

See it in your own Events Manager

See your CRM stages arrive in Events Manager.

Book a demo and we open your Events Manager together: what the pixel sends today, and how a closed deal becomes a Purchase.

Your workspace
One lead, three events to MetaFrom the Instagram click to the Purchase event
MSMira SchulzNorthwind LogisticsPurchase sent
  1. Meta AdsClicked a lead ad in Instagram, fbclid captured first-partyDay 1
  2. Lead eventForm on /pricing. Sent with hashed email, phone and fbc, deduplicated with the pixelDay 1
  3. Schedule eventBooked a demo through CalendlyDay 3
  4. Purchase eventDeal moved to Closed won in HubSpot, €91,000 sent as the valueDay 34
Events matched in Meta3 of 3

The pixel would have sent the first one. Meta learnt what a buyer looks like from the last one.