For ecommerce teams running Google Analytics 4, the question we encounter most in audits is not whether tracking exists.
It is whether the data is accurate and comprehensive enough to make decisions from. Revenue that does not reconcile with actual sales. Conversion rates that seem slightly off. Attribution that shifts without a clear reason. Product views triggered upon page load on product listing pages, while they should only fire when users scroll to those products. These patterns usually trace back to a setup that looks correct on the surface but has gaps underneath.
This checklist covers what we look for when we audit an ecommerce GA4 configuration, and what those gaps typically mean for reporting.
GA4 might be counting purchases correctly but missing the detail that makes the data useful. When a purchase fires, it should carry a set of attached details: which products were bought, from which pages, at what price, in what quantity, and under which transaction ID. These details are known as event parameters, and they are what populate your revenue reports and product-level data. When they are missing or inconsistent, revenue in GA4 stops matching actual sales and product reports become too patchy to act on.
Two checks we run first:
Is the same purchase being counted twice?
Pull your transaction data and check whether each transaction ID appears exactly once. If any ID appears more than once, GA4 is recording the same sale twice. Inflated revenue and an artificially strong conversion rate are the typical result. This most commonly happens on single-page applications (SPAs) or when there are overlapping tracking tags in GTM.
Are product details consistent across the full funnel?
Product data should be present from the moment a customer views an item through to purchase. If details are present on the product page but drop off by the time the purchase fires, reports will show gaps as "(not set)" values. A useful rule: each subsequent step in the funnel can include more detail than the previous one, but never less.
If part of your revenue is subscription-based, this gets more complex. GA4 does not separate a first purchase from a renewal by default, so recurring revenue needs its own tracking approach to distinguish the two.
Two categories of traffic consistently distort ecommerce data when they are not properly excluded:
Referral traffic from functional platforms:
Payment gateways, SSO platforms, order management systems and account portals all need to be listed as excluded referrals. When a customer completes payment and returns to the site, GA4 can read that redirect as a new session from a new source. The original attribution is overwritten, session counts go up, and revenue gets credited to the wrong channel.
Internal traffic from your own team and agency partners:
If this is being recorded, conversion rates will read lower than they actually are. This is easy to configure but is one of the first things that gets missed during a GA4 setup.
3. Does your ecommerce funnel tell a consistent story?
One of the fastest diagnostics we run is checking whether session counts decrease at every funnel step. Fewer people should reach each subsequent stage than the one before it. If add_to_cart shows more sessions than view_item, or begin_checkout is higher than add_to_cart, something is recording when it should not be. This is also worth checking by device, and by shipping or payment method. A drop-off that looks normal in aggregate can be hiding a step that's failing specifically on mobile, or for one payment option, and segmenting is what brings that into view.
Item list names matter here too, especially anywhere a page shows more than one product list. A homepage might have a featured list and a recently viewed list, a product page might have "You may also like" alongside "Recently viewed." If a product is logged under one list name on view and a different one at purchase, you can't tell which list is actually driving conversions.
Once you've confirmed your funnel is recording correctly, these are the GA4 reports worth pulling and what to look for in each one.
This is where setups that appear correct can still produce unreliable data. What the data layer shows in GTM preview and what actually reaches GA4 are not always the same thing. Some sites trigger events through mechanisms that bypass the data layer entirely, which is why we verify using GA4 Debugger alongside GTM preview rather than relying on either alone.
One configuration detail worth checking separately: for standard websites, initial event parameters should sit under Configuration Settings in the GA4 config tag. For single-page applications (SPAs), they belong under Shared Event Settings. Getting this wrong means parameters you expect on every event are absent, with no visible error to flag it.
These settings do not affect what is firing today, but they shape what you can do with your data going forward:
Data retention defaults to two months for user-level data. If your team runs cohort analysis or longer attribution windows, this needs to be extended before that window closes. Data cannot be recovered once it has aged out.
Attribution model is worth revisiting if your team migrated to GA4 within the last few years.
GA4 defaults to data-driven attribution rather than last-click. Teams comparing current figures against historical UA benchmarks are often looking at numbers calculated on different methodologies. The data is not inconsistent; the measurement approach has changed.
Cross-domain tracking needs to be explicitly configured if your checkout runs on a separate subdomain. Without it, sessions break at the point of handoff and the traffic source for completed purchases is lost.
A GA4 audit does not have to be a major undertaking. We run them regularly as part of implementation work, and as a standalone exercise for teams who want a clear picture of where their tracking stands before making decisions from it.
If your revenue figures do not add up, your funnel numbers look off, or you simply are not sure whether your setup is capturing what it should, we would be glad to take a look. Get in touch and we can work out what kind of audit makes sense for your setup.