Orders in your shop, but missing steps in your GA4 funnel?

Your eCommerce platform knows what sold today. GA4 might even show the final purchases too. But if product views, basket additions or checkout steps are missing in between, your reports cannot tell you where shoppers hesitated and dropped off, and you can end up trying to fix a checkout problem that is actually a tracking gap. - Purchases appear in GA4, but `add_to_cart` or `begin_checkout` steps show zero or near-zero activity. - Reported revenue in GA4 is inflated by duplicate order firings or differing `transaction_id` values. - Moving from your store domain to a payment gateway or hosted checkout splits the customer into two sessions and credits sales to Direct. - Product performance reports are blank or incomplete because item arrays, SKUs or values aren't passed cleanly. Agentix provides eCommerce tracking audits, setup and funnel repairs for UK online stores across eCommerce, B2B and trade. We combine GA4 and Google Tag Manager implementation with hands-on [website conversion and UX experience](/services/website-conversion), making sure every step from product page to order receipt is measured accurately.

Why eCommerce funnels break between product page and receipt

An eCommerce store has far more moving parts than a standard brochure website. Shoppers add items from quick-view drawers, slide-out AJAX baskets and sticky buy buttons that never reload the page. At checkout, they get redirected through third-party payment providers like PayPal, Klarna or bank authentication screens before landing back on an order confirmation URL. When tracking relies on basic page-load triggers rather than structured eCommerce events, those steps fall through the cracks. Here is an illustrative example with invented round numbers (not a client result) showing how a store with **1,000 sessions and 30 real orders** can look completely broken in a GA4 funnel report when the middle events fail: | Shopping step | What happened on the store (1,000 sessions) | What a broken GA4 funnel reports | Why the report is misleading | | -- | -- | -- | -- | | 1. Session start | 1,000 sessions | 1,000 sessions | Storefront landing pages load normally. | | 2. Product viewed (`view_item`) | 450 sessions (45%) | 450 sessions (45%) | Product template fires the view event. | | 3. Added to basket (`add_to_cart`) | 180 sessions (18%) | 0 sessions (0%) | Slide-out AJAX basket updates w

Reconciling store orders with GA4 revenue

Your store backend (such as Shopify or Magento) and GA4 will never match to the last pound, and anyone who promises a 100% match isn't being straight with you. The job is separating normal measurement differences from genuine tracking faults. Here is an illustrative example with invented round numbers (not a client result) showing how a gap between **100 store orders (£10,000)** and **78 GA4 orders (£7,800)** is investigated: | Order source or gap | Orders | Recorded value | What is actually happening | | -- | -- | -- | -- | | Store backend total | 100 | £10,000 | Every paid order processed by the store database. | | Recorded in GA4 | 78 | £7,800 | Browser sessions where the `purchase` event fired and reached GA4. | | Gap part 1: Cookie rejection & blockers | 12 | £1,200 | Shoppers who declined analytics cookies or used browser tracking blockers. The sale succeeded; no browser tag ran. | | Gap part 2: Payment redirect drop-outs | 6 | £600 | Shoppers who paid via an external gateway and closed the tab before returning to your thank-you page. | | Gap part 3: Phone or trade desk orders | 4 | £400 | Orders keyed into the backend by your sales team that never went through the website

Where eCommerce tracking breaks across the shopping journey

When we audit an online store, we check every commercial step from the product page to the final receipt to see where data is dropping out or doubling up: | Shopping stage | Where store tracking commonly breaks | How it distorts your commercial decisions | | -- | -- | -- | | Product views | Quick-view popups don't fire product view events, or category grids fire them for every item on the page | You cannot tell which products genuinely hold buyer interest versus which ones just sit at the top of a category page | | Basket additions | Slide-out AJAX cart drawers and sticky buy buttons add items without firing a tracking event | Your product-to-basket conversion rate looks artificially low, pointing your team at the wrong page problem | | Checkout start | Moving to a checkout subdomain or hosted payment page splits the shopper into a new session | Your best marketing channels lose credit right at the moment the customer decides to buy | | Delivery & payment steps | Shipping and payment steps aren't tracked separately inside the checkout flow | You can see shoppers abandoning checkout, but not whether delivery costs or payment options caused them to leave | | Order confirmation | Dup

Frequently asked questions

### Why does GA4 show completed purchases but zero basket additions? In our experience, this happens when your store uses an AJAX slide-out cart, quick-view drawer or sticky buy button that updates the basket without loading a new URL. If your website theme doesn't push an `add_to_cart` event into the data layer when that drawer opens, Google Tag Manager has nothing to listen to until the shopper reaches the final thank-you page. ### Why are some orders counted twice in our GA4 revenue reports? Google documents that GA4 web streams automatically deduplicate `purchase` events that share the exact same `transaction_id`. Double counting happens when two separate tags (such as a native store app and a GTM tag) fire on the same order with different `transaction_id` formats, or when a receipt page reloads without a consistent transaction ID passed in the data layer. ### Why is GA4 recording orders with £0.00 revenue? The GA4 `purchase` event requires `value` as a clean number (such as `49.99`) and `currency` as a three-letter code (such as `GBP`). If your site passes the currency symbol inside the value field (for example `"£49.99"`) or omits the `currency` parameter, GA4 can count the

Speak to us about your eCommerce tracking

Whether you are missing steps in your shopping funnel, seeing duplicate orders in GA4, or planning a store migration and want the data layer built properly before launch, we can help.