Skip to main content
Magento / Adobe CommerceFor Magento 2 & Adobe Commerce

Get your Magento / Adobe Commerce tracking to 95%+ accuracy guaranteed in writing.

Most Magento stores fire Purchase events with the wrong content_id, double-count revenue across store views, and run so much front-end JS that bouncers never trigger any tag at all. Meanwhile your ad platforms are paying for invisible conversions and skipping the ones that converted. We ship a composer module + server-side stack that survives core upgrades and actually works at scale.

Free30 minutesNo obligation

Magento / Adobe Commerce · what breaks

What breaks on Magento by default

  1. 01

    Heavy front-end, slow tag firing

    Magento's full-page cache + heavy JS often delays GTM enough that bounces miss tags entirely.

  2. 02

    Multi-store double-counting

    Most multi-store setups share a single GTM, so cart events fire across stores and inflate.

  3. 03

    Configurable products break content_id

    Catalog matching needs the parent SKU, not the simple — most setups send the wrong one.

  4. 04

    Custom checkout extensions break events

    One-page checkout customizations regularly break the default checkout dataLayer.

Magento / Adobe Commerce · the fix

What we fix — Magento / Adobe Commerce

  • Module-based dataLayer

    Composer-installable module that survives core upgrades.

  • Store-view aware events

    Events tagged with store_view, currency, and customer_group so multi-store and B2B work cleanly.

  • Server-side CAPI + EC + TikTok

    Full advanced matching, dedup, modeled conversions.

  • Page-Builder & PageSpeed safe

    Async-loading dataLayer that doesn't tank Core Web Vitals.

Magento / Adobe Commerce · architecture

How a Magento and Adobe Commerce order should reach the ad platforms

Magento gives you more control than any hosted platform and correspondingly more ways to get it wrong. Multi-store views, complex product types and a heavily customized checkout all change what a conversion even means.

  1. 1

    Click identifiers captured at first touch

    Click IDs are captured at landing and persisted through the session, then written to the order as an extension attribute, so attribution survives a checkout that may span several controllers and a payment redirect.

  2. 2

    The browser sends the fast, fragile copy

    The browser fires browsing and cart events from the data layer. On a customized Magento checkout the browser path is the least reliable part of the stack, because the success controller is often overridden.

  3. 3

    The order itself is the source of truth

    The sales_order_place_after observer, or the order placement event in the API, is the truth. The checkout success page is frequently customized, redirected or skipped entirely by third-party payment modules.

  4. 4

    A server container sends the authoritative event

    An observer posts the placed order to a GTM server container on your own subdomain, keyed on the increment ID.

  5. 5

    Customer identity raises match quality

    The order carries the customer email, telephone and full billing address. Hashed server-side, these are what make Enhanced Conversions and CAPI match quality work on a platform where browser-side identity is often unavailable.

Magento / Adobe Commerce · events

The event set we build on Magento and Adobe Commerce, and where each one comes from

Magento's product types complicate the item payload more than any other platform: configurable, bundle and grouped products each need a deliberate decision about which SKU is reported.

view_itemThe product view controller renders, with the parent or child SKU decided deliberatelyitem_id, value, currency, event_idBrowser + server, deduped
add_to_cartcheckout_cart_add_product_complete firesitem_id, quantity, value, currency, event_idBrowser + server, deduped
begin_checkoutThe checkout controller loads with a non-empty quotevalue, currency, num_items, event_idBrowser + server, deduped
purchasesales_order_place_after fires against the placed orderorder_id, value, currency, items[], hashed email/phone/name/address, event_idServer authoritative
refundA credit memo is createdorder_id, value, currencyServer only

Magento / Adobe Commerce · normal or broken

Magento-specific confusion and real breakage

On Magento, most of what looks like a tracking fault is a customization nobody documented.

Normal, not a fault

  • Configurable products reporting the parent SKU

    This is a decision, not a bug — but it must match your Merchant Center feed. Reporting one and feeding the other is what actually breaks.

  • Full page cache serving cached blocks

    Magento's FPC is aggressive by design. Dynamic values have to be delivered outside the cached block, which is expected architecture rather than a fault.

  • Ad platforms report more conversions than you have orders

    Meta credits a 7-day click and 1-day view; Google credits on click date. Two platforms can each claim the same sale. Compare each one to your order records separately and never add them together.

  • Recent days always look worse than they finish

    Conversions are credited back to the date of the click, so yesterday's return on ad spend is understated and will keep improving for several days. This is attribution working, not data arriving late.

Actually broken

  • Purchase tracked on the checkout success page after a payment module overrode it

    Third-party payment modules routinely replace or bypass the success controller, and the tracking dies silently at the same moment.

  • Full page cache baking one customer's order values into a cached block

    Every subsequent visitor reports the same order. The event count looks healthy and every value is wrong.

  • Multi-store views all reporting into one property with no store dimension

    Per-store performance becomes unmeasurable, and currency differences between views quietly corrupt the value totals.

  • Bundle products reporting the bundle price against child SKUs

    Reported item revenue and actual revenue diverge, and the divergence grows with bundle sales.

Magento / Adobe Commerce · prove

How we prove the Magento and Adobe Commerce build is correct

The tag firing proves the tag fires. These prove the numbers are right.

Source of truth

Magento sales_order records

  • The purchase confirmed firing from sales_order_place_after, not from the success page, tested against a payment module redirect.
  • Full page cache tested warm, confirming no order values are baked into cached output.
  • Store view and currency handling verified across every active view.
  • Purchase count within a few percent of magento sales_order records for a fully closed week, matched on order ID rather than on totals.
  • No order ID appearing twice in any platform's event log.
  • Deduplication confirmed at every destination that supports it.
  • Test and staff orders excluded, with the exclusion confirmed active rather than merely configured.
  • The same reconciliation repeated 30 days later, because a setup that works once and then drifts is the harder failure to catch.

Magento / Adobe Commerce · free audit

What we check in the free audit

  • Heavy front-end, slow tag firing
  • Multi-store double-counting
  • Configurable products break content_id
  • Custom checkout extensions break events

Checked against

Magento sales_order records

Get my free conversion tracking audit

Free30 minutesNo obligation

Magento / Adobe Commerce · when not to buy

When a Magento and Adobe Commerce rebuild is not what you need

We would rather say this now than three weeks into an engagement.

  • You run a single store view with the stock checkout and a small ad budget. A well-configured module will serve you.
  • You are mid-replatform or mid-upgrade to a new Magento major version. Rebuild after.
  • Your team has no Magento developer available. The server-side pieces need someone who can safely deploy an observer.

Magento / Adobe Commerce · what we deliver

Deliverables — Magento / Adobe Commerce

  • Magento composer module

    Source + license

  • Server-side GTM container

    Subdomain or Stape

  • Meta CAPI + Google EC

    EMQ 8+ verified

  • GA4 e-com events

    Schema-clean

  • QA + Notion runbook

    Plus 30-day support

Written guarantee

95%+ tracking accuracy

Measured against Magento sales_order records. Miss it and we keep working at no cost.

Get my free conversion tracking audit

Pricing

Pick the package that fits your ad spend

Browser-side starter

$400One-time fee · lifetime ownership

Baseline pixel install for Adobe Commerce. Honest disclosure: at enterprise scale this tier is a stopgap — every paid-media dollar should be running 1st-party server-side. Only suitable when ad spend is genuinely small.

  • Adobe Commerce-aware dataLayer
  • GA4 + Meta Pixel + Google Ads + TikTok + UET
  • Consent Mode v2 wiring
  • QA + 14-day support
  • No CAPI · no iOS recovery
Start with browser only

1st-party server-side

Recommended for paid ads

$800One-time fee · most popular

Standard for Adobe Commerce stacks running serious paid media. Every channel — Meta, Google, TikTok, Microsoft — fed 1st-party server-side. Multi-store / multi-region aware. EMQ 8+ verified live before handoff.

  • Everything in browser starter
  • 1st-party server-side GTM (Stape Pro or self-hosted)
  • Meta CAPI · Google EC · TikTok Events · UET server
  • Deterministic browser ↔ server dedup
  • Multi-store / multi-region routing
  • Live EMQ verification · 8+ target
  • Notion runbook + 30-day support
Book a call · get the recommended package

Enterprise 1st-party stack

$1,800One-time fee · lifetime ownership

Full enterprise stack for high-volume Adobe Commerce brands. Every channel 1st-party server-side, identity graph, data warehouse, EU + US residency, and a quarterly attribution review with leadership.

  • Everything in 1st-party server-side tier
  • Pinterest · Snapchat · LinkedIn · Reddit CAPI
  • Klaviyo / CDP identity stitching
  • BigQuery export + Looker Studio dashboard
  • EU + US data residency (Stape EU / GCR europe-west)
  • GDPR / CCPA / CPRA audit-clean
  • Quarterly health check + leadership review
  • 90-day support · retainer optional
Book a call · scope enterprise

FAQ

Magento / Adobe Commerce questions, answered

Yes. Customer-group, shared catalog, and quote-flow events handled.

Free · 30 min

Audit your Magento tracking — free

Free30 minutesNo obligation