
Tax and accounting
54% better lead quality after using LeadJourney for marketing
Karsten Guhr
Managing Director
Read the storyMeta Conversions API
Every Meta click is captured with its fbclid, followed through your CRM, and sent back with the deal value attached.
Rated by teams that send Meta more than form fills
Conversions API events from
The same Lead event, pixel only and through the API
Meta computes the score in Events Manager from the customer information each event carries. These are the fields this one carried.
The definition
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.
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.
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.
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.
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
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 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
A walkthrough of sending qualified leads and closed revenue back through the API, instead of every form fill at the same value.
Case studies
One measured result per customer, with the person, the role and the company behind it.

Tax and accounting
54% better lead quality after using LeadJourney for marketing
Karsten Guhr
Managing Director
Read the story
SEO agency
95% clarity about marketing KPIs and a foundation to scale
Nikita Yatsun
Managing Director
Read the story
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
LinkedIn growth agency
2x customer retention, once every LinkedIn touchpoint was tracked to revenue
Marc Richard
CEO
Read the story
![]()
Digital publishing
Which article produced the lead and the revenue, across AI and organic search
Andreas Malkow
CEO & Head of PR
Read the story
SEO and GEO agency
Proven ROI on every retainer, from organic and AI search leads through to revenue
Philipp Nessmann
Managing Director
Read the storyGetreach
Backlinks marketplace (SaaS)
How the data moves
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
The stages come from your CRM
Meta and your CRM
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.
Spend, campaign structure and click IDs come in. Closed deals go back out as offline conversions.
The traffic your analytics still files under direct. No setup, the tracking script separates it.
Lead stage and deal value flow in. Every campaign sees the revenue it actually produced.
What the software does
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.
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.
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.
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.
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.
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
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
Four rows, three conversions. The fourth is the pixel's copy, counted once.
The event feed
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.
The 50 events with a value are the ones the algorithm learns buyers from.
Stage mapping
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.
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
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.
Live in 21 minutes
No Gateway to deploy, no server GTM container to host, no access token to paste.
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.
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.
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
| What you need | LeadJourney | ||
|---|---|---|---|
| Where the event is sent from | No: The browser, if the script loads | Yes: A server you deploy and pay for | Yes: A managed first-party layer |
| Events after the form fill | No: Stops at the form | Partly: Only with a CRM webhook and tags you build | Yes: Any CRM stage, with the deal value |
| Match keys on every event | Partly: Advanced matching a developer wires | Partly: Whatever the browser passed to the container | Yes: Hashed email and phone from the CRM, fbclid, fbp |
| Deduplication with the pixel | No: One count, no server copy | Partly: Automatic in the Gateway, configured in server GTM | Yes: Event ID shared automatically |
| Who builds and maintains it | Yes: One pixel, one tag | No: Hosting, updates, templates, a developer | Yes: 21 minutes, no developer |
| Consent, hosting and DPA | No: Third-party and cookie-dependent | Partly: Region and consent handling you configure | Yes: Frankfurt, consent-aware, Art. 28 DPA |
What changes
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.
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.
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.
Form fills lost to iOS, ad blockers and declined banners arrive server to server, deduplicated against the ones the pixel did catch.
No Gateway instance, no server GTM container, no access token in a spreadsheet. The layer is managed and the subdomain is yours.
The Purchase events carry the CRM's won amounts, so the revenue Meta reports is a number your pipeline can confirm.
Original reviews
4.9 out of 5 across 11 public reviews. Quoted as they were left, shortened only by dropping whole sentences.
“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.”
“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.”
“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“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“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“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 GmbHRead the reviews where they were left
Common questions
What media buyers and marketing teams want to know before they send Meta more than the pixel does.
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.
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.
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.
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.
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.
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.
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.
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
Book a demo and we open your Events Manager together: what the pixel sends today, and how a closed deal becomes a Purchase.
The pixel would have sent the first one. Meta learnt what a buyer looks like from the last one.