Skip to content

Magento and Adobe Commerce

Magento attribution, from the first ad click to the paid order

Server-side tracking in your storefront, the paid order handed over by webhook or the REST API, and the revenue back in Google, Meta and Microsoft Ads with its value.

  • Server-side, first-party
  • Multi store and multi currency
  • Hosted in the EU, DPA signed

How the data moves

  • Touchpoints and spend flowing in
  • Conversions and revenue going back
Traffic channelsWhere every journey starts
  • Google Ads
  • Meta
  • Microsoft Ads
  • LinkedIn Ads
  • Organic search
  • Organic social
  • AI search
Spend, campaigns, every visit
Offline conversions, revenue

AI Attribution Engine

LeadJourneyServer-side tracking, every channel in one journey
  • Server-side tracking of every visit
  • Multi-touch attribution per customer
  • Paid orders sent back to the ad platforms
Orders and credit memos, by webhook or API
MagentoWhere the orders are paid
  • Orders
  • Customers
  • Store views

The loop closes in the ad account. Every paid Magento order goes back to the platform that created the customer, so bidding optimises on revenue instead of add to carts.

Trusted by 100+ lead generation businesses, agencies and freelancers

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

The gap

Magento reports what you sold. GA4 and the pixels argue about who sold it.

The Magento admin is right about orders and says nothing about marketing, so the source of an order comes from GA4 and from each platform's own pixel. Those two disagree with the order list and with each other, and neither has your spend in it.

Magento tracking as most shops run it

GA4, a pixel per platform, and an export into a spreadsheet

  • Magento's own reports are sales reports. There is no campaign, no channel and no cost of acquisition in them.
  • GA4 counts the purchase in its own models, its own window and its own sampling, and stops agreeing with the order list within a week.
  • Each ad platform's pixel claims the same order for itself, so Google, Meta and Microsoft together report more purchases than you shipped.
  • The pixels run in the shopper's browser, so a declined consent banner, an ad blocker and Safari's storage limits each cost you conversions.
  • A checkout spread over several domains or a hosted payment page breaks the session, and the order lands under direct.
  • Attribution starts on the storefront. A click that landed on a campaign page or a blog elsewhere never joins the order.
  • A repeat order is credited to whatever brought it back, so the channel that acquired a customer worth five orders is never rewarded for it.
  • Nothing goes back to the ad account with the order value, so bidding optimises on carts rather than on revenue, and value based bidding runs on a flat number.

Magento with LeadJourney

One journey per customer, from the first click to the paid order

  • Every storefront visit is recorded server-side and first-party at 95%+ accuracy, so a blocked pixel or a declined banner does not cost you the source.
  • The anonymous first click is kept and stitched to the customer at checkout, so first click, last click, linear and position based models all become available.
  • The order comes from Magento rather than from a browser event, so a hosted payment page or a checkout on another domain cannot lose it.
  • Spend is pulled from Google, Meta, Microsoft and LinkedIn Ads, so ROAS and cost per order are calculated per campaign on paid order value.
  • Orders carry their store view and currency, so a multi store build is read per store instead of summed into one number.
  • Repeat orders are credited to the channel and campaign that acquired the customer, so lifetime value is reported per channel.
  • Organic search, organic social, referral and AI search (ChatGPT, Perplexity, Gemini) are separate channels next to paid.
  • The paid order goes back to Google, Meta, Microsoft and LinkedIn as an offline conversion with its value, matched on the click ID.

How it works

Magento orders in, attributed revenue back out

Both directions run on their own once the script is in the storefront and the order is being handed over. The first is what makes Magento attribution work across the whole journey. The second puts the paid order where the budget is decided.

  1. 1

    Magento revenue attribution from the first click to the paid order

    The journey is recording before the shopper reaches a product page.

    Google AdsMetaMicrosoft AdsYour storefront

    Ad clicks, click IDs, campaign parameters and every storefront session are recorded server-side across paid, organic and AI search.

    Magento

    Magento hands the order over when it is placed and paid, through a Commerce webhook, the REST API or an automation step.

    The order is matched to the journey that produced the customer, from the first anonymous click to the paid order.

    Revenue, ROAS, cost per order and repeat order value, per channel, campaign, ad and store view.

  2. 2

    The order goes back to the ad platform that earned it

    So bidding optimises on paid orders instead of add to carts.

    Magento

    An order is placed and paid, a first time customer is created, a returning customer orders again.

    LeadJourney turns it into a purchase event with the order value and currency, matched to the click ID that started the journey.

    Google AdsMetaMicrosoft AdsLinkedIn Ads

    The event reaches the platforms server to server, as an offline conversion rather than a browser pixel.

    Bidding learns which clicks become paying customers, so budget moves to the campaigns that sell.

The return path

Paid Magento orders, back in the ad account that earned them

An add to cart is not a result. Once the order is paid, LeadJourney sends that outcome and its value to the platform that produced the click, so bidding learns from orders rather than from carts.

  • Google AdsOffline conversion import

    Orders matched on gclid, with the order value for value based bidding

  • MetaConversions API

    Order paid and first order, with order value and currency

  • Microsoft AdsOffline conversions

    Orders matched on msclkid, with the order value

  • LinkedIn AdsConversions API

    Orders matched on li_fat_id, with the order value

You choose what counts as a conversion

Map any order event to any platform event. Order paid, first order, repeat order, or all three.

Value based bidding gets the real order value

The order total and its currency travel with the event, so tROAS strategies optimise on what was paid instead of a flat value.

Sent server to server

No pixel on the success page, so a hosted payment page, an ad blocker or a declined banner cannot remove the conversion.

Reporting

The questions the Magento admin and GA4 cannot answer together

Every one of these is a report in LeadJourney rather than a reconciliation. Magento stays the source of truth for orders, and LeadJourney supplies the journey that produced them.

  • Which campaign produced the orders we shipped last month, counting the first click and not only the last?

  • What does a new customer cost us in ad spend, per channel and per store view?

  • Why do Google, Meta and GA4 together claim more purchases than our order list has?

  • Which channel brings the customers who reorder, and which brings the ones who buy once?

  • How many orders started in ChatGPT, Perplexity or Gemini last quarter?

  • Which landing pages turn ad clicks into paid orders instead of abandoned checkouts?

LeadJourney and GA4 on Magento

Where GA4 and the pixels end and LeadJourney starts

GA4 counts sessions and purchases, the pixels count their own conversions, and the Magento admin counts orders. Three sources of truth is the problem this replaces.

Magento plus GA4 and pixels compared with LeadJourney, capability by capability
Where the order's source comes fromMagento plus GA4 and pixelsA browser session in GA4 and a pixel per platform, each with its own model and window.With LeadJourneyOne journey per customer recorded server-side on your own domain, and the order read from Magento itself.
One order, one countMagento plus GA4 and pixelsEvery platform counts the order it thinks it produced, so the reports add up to more purchases than you shipped.With LeadJourneyOne attribution model across every channel, so each order is counted once and the numbers reconcile with the admin.
Attribution modelsMagento plus GA4 and pixelsGA4's own models over GA4's own data, with its window and its sampling.With LeadJourneyFirst click, last click, linear and position based over the whole journey, on your own data, switchable in the report.
Checkout on another domain or a hosted payment pageMagento plus GA4 and pixelsThe session breaks, and the order lands under direct or referral.With LeadJourneyThe order arrives from Magento rather than from a browser event, so the payment page cannot lose it.
Ad spend, ROAS and cost per orderMagento plus GA4 and pixelsNo spend in Magento, and GA4's imported cost is limited to what you upload.With LeadJourneySpend pulled from Google, Meta, Microsoft and LinkedIn Ads, so ROAS is live per campaign on paid order value.
Multi store and multi currencyMagento plus GA4 and pixelsStore views and currencies are in the admin; the marketing report mixes them.With LeadJourneyRevenue and ROAS per store view and per currency, so one storefront's performance is not hidden inside another's.
Repeat orders and lifetime valueMagento plus GA4 and pixelsEach order is credited to whatever brought it back.With LeadJourneyRepeat orders credited to the channel and campaign that acquired the customer, so lifetime value is reported per channel.
Purchase events back to the ad platformsMagento plus GA4 and pixelsBrowser pixels, thinned by ad blockers and declined banners, with a flat or client-side value.With LeadJourneyOne server-side purchase event per paid order with the real order value, matched on the click ID that started the journey.
Organic search, social and AI searchMagento plus GA4 and pixelsGrouped by GA4's channel rules, with AI assistants landing in referral or direct.With LeadJourneyOrganic search, organic social, referral and AI search are their own channels, with ChatGPT, Perplexity and Gemini named.
Refunds and credit memosMagento plus GA4 and pixelsIn the Magento reports, accurately, and not in the ad platforms at all.With LeadJourneyRead alongside the order, so the revenue a campaign is credited with is the revenue you kept.
Consent and GDPRMagento plus GA4 and pixelsEvery third party tag is yours to configure, and each one is a processor of its own.With LeadJourneyFirst-party by design and processed in the EU, with a data processing agreement.

Keep Magento and keep GA4. Stop reconciling them by hand.

Magento stays the system of record for orders and GA4 stays your behavioural analytics. LeadJourney is the layer that joins the click, the spend and the paid order into one number your finance team recognises.

MCP server

Chat with your Magento revenue data

The same journeys, spend and paid orders are also served over MCP. Ask in Claude or ChatGPT, and the answer comes from your own numbers.

LeadJourney MCP connected, try any tab

Which campaigns produced our closed revenue last month?

Based on your LeadJourney data, 3 campaigns produced 148,200 EUR of closed revenue last month:

Google Ads, Brand
38 leads, 9 closed deals, 61,400 EUR. Shortest path to signature.
LinkedIn, Retargeting
21 leads, 6 closed deals, 48,900 EUR. Seven touchpoints on average.
Meta, Lookalike DACH
54 leads, 5 closed deals, 37,900 EUR. Cheapest qualified lead.

Want this as a weekly summary in Slack?

Ask anything about your lead journeys

Where did our three biggest deals this quarter come from?

Your 3 largest deals this quarter all started somewhere the last click never showed you:

42,000 EUR
First touch LinkedIn Ads, closed 63 days later after a webinar signup.
28,500 EUR
First touch Google organic, paid click on day 11, demo on day 19.
21,800 EUR
First touch a Meta video view, form filled from email six weeks on.

Want the full touchpoint list for any of them?

Ask anything about your closed deals

Which landing pages turn LinkedIn traffic into qualified leads?

3 pages take your LinkedIn traffic, and the qualified rate between them runs from 4% to 18%:

/demo/attribution
18% qualified from 214 visits. Highest intent page on the site.
/guide/server-side
9% qualified from 612 visits. Most journeys stall after the download.
/pricing
4% qualified from 488 visits. Second most traffic, lowest intent.

Want the same breakdown for Google Ads traffic?

Ask anything about your landing pages

What did each channel cost per qualified lead last week?

3 channels spent budget last week. Cost per qualified lead ran from 41 EUR to 187 EUR:

LinkedIn Ads
41 EUR per qualified lead. 2,300 EUR spent, 56 qualified.
Google Ads
88 EUR per qualified lead. 4,400 EUR spent, 50 qualified.
Meta Ads
187 EUR per qualified lead. 3,740 EUR spent, 20 qualified.

Want an alert the moment a channel passes 120 EUR?

Ask anything about your cost per lead

What do the journeys that close have in common?

3 signals show up in most of your closed deals and in almost none of the lost ones:

Pricing page, 2+ visits
In 71% of closed deals. In 12% of the ones that never closed.
Demo within 14 days
In 64% of closed deals. Median 9 days from the first click.
Second contact
In 58% of closed deals. A colleague of the lead arrives on site.

Want these three scored onto every lead in your CRM?

Ask anything about your lead journeys

Setup

Connected to Magento in about 21 minutes

One script in the storefront, one handover for the order, no re-platforming.

  1. 1About 5 minutes

    Add the tracking script to your storefront

    Add the LeadJourney script to your theme layout, or deliver it through the tag manager you already run. It records sessions, campaign parameters and click IDs across every store view.

  2. 2About 10 minutes

    Hand the paid order over

    On Adobe Commerce, a webhook on the order placed event posts it to LeadJourney. On Magento Open Source, the REST API or a Zapier, Make or n8n step reads the order and posts the same payload. Either way it is configuration rather than a module.

  3. 3Same day

    Map order events to platform events

    Choose which order events count as a conversion and which carry revenue. From then on every paid order flows back to the platform that earned it with the order value attached, and a first order can be told apart from a repeat one.

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

FAQ

What Magento merchants and agencies ask first

If yours is not here, our team answers in the chat within a few minutes.

Is there a LeadJourney extension for Magento?

Not today, and the page says so rather than implying one. Shopify is our one native shop integration. Magento connects with what the platform already gives you: the tracking script in the storefront, and the paid order handed over by a webhook on Adobe Commerce, or by the REST API or an automation step on Magento Open Source. No module to install and no core changes.

Does this work on Magento Open Source as well as Adobe Commerce?

Yes, with a different handover. Adobe Commerce has webhooks that fire on Commerce events, including the order placed event, so the order can be posted straight to LeadJourney. Magento Open Source does not have that feature, so the order is read through the REST API or handed over by a Zapier, Make or n8n step. The result in LeadJourney is the same payload either way.

What does server-side tracking change for a Magento shop?

Two things. The visit is recorded against your own domain and processed on the server, so a declined consent banner, an ad blocker or Safari's storage limits stop deciding whether the source of an order exists. And the order itself comes from Magento rather than from a pixel on the success page, so a hosted payment page or a checkout on another domain cannot lose it.

How does LeadJourney match a Magento order to an ad click?

The journey is recorded from the first anonymous visit, on the storefront and on any other page carrying the script. When the order is handed over, it is matched to that journey, and every later order from the same customer joins it. Nothing has to be stored in a custom attribute for this to work.

Does LeadJourney write anything into Magento?

No. The direction is one way: orders and credit memos come out, nothing goes in. Your catalogue, your checkout and your customer attributes are unchanged, and Transparent Logs show every record that moved and when.

We run several store views and currencies. How is that reported?

An order carries its store view and its currency, so revenue, ROAS and cost per order are read per store instead of summed. For a build serving several countries from one installation, that is usually the first report worth opening: the same campaign rarely performs the same in two markets.

Why do Google Ads, Meta and GA4 report more purchases than Magento?

Because each of them counts the conversions it believes it produced, under its own attribution window and model, and the same order can satisfy several of them at once. GA4 adds its own session logic on top. LeadJourney counts each order once, from the order itself, and then decides which touch gets the credit under the model you picked, which is why its total reconciles with the admin.

Which Magento events can I send back to Google and Meta?

Any event you map: order paid, first order, repeat order, or all of them. Each carries the order value and currency, and it reaches Google Ads as an offline conversion import matched on gclid, Meta through the Conversions API, Microsoft Ads matched on msclkid and LinkedIn through the Conversions API.

How are refunds and credit memos handled?

They are read alongside the order they belong to, so the revenue a campaign is credited with reflects what you kept. On a shop with a high return rate that difference decides which campaigns are really profitable.

Is this GDPR compliant?

LeadJourney processes and stores data in the EU, signs a data processing agreement, and tracks first-party and server-side, so consent decisions are respected rather than worked around. Card data never reaches LeadJourney: what arrives is the order total, its status and the customer record, not payment details.

95%+ accuracy, from first click to paid order

See which campaigns produce Magento orders with LeadJourney

Put the script in your storefront, hand the paid order over once, and watch every order line up against the campaign that brought the customer.

LeadJourney dashboard showing lead sources, campaign performance and attributed revenue side by side