September 4, 2026 · Dobrev

Ecommerce Analytics Audit: How to Know Which Numbers You Can Actually Trust

An ecommerce analytics audit is the least interesting work in this business and the first thing I do on every engagement. The reason is uncomfortable: on roughly half the stores I look at, the numbers everyone plans from are wrong by enough to change the decision.

Not slightly wrong. Wrong in the direction that makes a losing channel look profitable.

The short answer

Before optimising anything, confirm the numbers describe reality.

Compare last month’s orders and revenue in your platform admin against your analytics. A few percent apart is normal and expected. Fifteen percent apart means every decision made from that data was made on fiction, and fixing the tracking outranks everything else on your roadmap.

Why bad data creates confidently bad decisions

Wrong numbers are worse than no numbers, because no numbers produce caution and wrong numbers produce confidence.

A channel that under-reports gets its budget cut even though it was working. A channel that over-reports gets scaled until the bank balance disagrees. A product page change gets credited with a lift that was actually seasonality. Each of these is a real decision, made properly, from a number that was not true.

One purchase, six systems, six answers

A single order passes through most of your stack, and each system records it against a different question.

Ecommerce analytics audit showing six systems reporting different revenue for the same month, with ad platforms claiming 138,000 euro against 100,000 euro of actual sales

The ad platforms together claim €138,000 of revenue on €100,000 of actual sales. None of them is lying. Each counts every conversion it can plausibly claim, because each is answering “did anyone who touched us buy” rather than “who caused this”.

This is why platform-reported ROAS can look healthy while the business loses money, and why blended figures are the only safe basis for decisions about total spend.

What an ecommerce analytics audit checks

01

Revenue reconciliation

Platform orders and revenue against analytics, for the same period, same timezone, same definition of an order. Everything else waits on this.

02

Conversion tracking integrity

Does the purchase event fire once, with the right value, excluding tax and shipping if that is your convention? Double-firing is common after theme or app changes and inflates everything downstream.

03

Attribution model and window

Not which model is correct, but whether everyone comparing numbers is using the same one. Most reporting arguments are two people using different windows.

04

UTM discipline

Inconsistent casing, missing parameters, internal links carrying campaign tags that overwrite the real source. This one quietly ruins channel reporting and is cheap to fix.

05

Event taxonomy

Are the events that matter defined, named consistently, and actually used? Most stores track dozens of events nobody has ever opened a report for.

06

Consent and its effect

What share of visitors decline tracking, and what does that do to your figures? A store with 40% refusal has a systematically incomplete picture, and needs to know by how much.

07

Cross-system joins

Whether the BI tool, the email platform and the store agree on what a customer is. Duplicate customer records make retention look worse and lifetime value look lower than reality.

The discrepancies you should expect

GapUsually meansWorry?
Analytics 2 to 8% below platformAd blockers, consent refusals, tracking preventionNo. This is normal and stable.
Analytics 10 to 20% belowConsent setup, a broken event on one template, mobile app trafficYes. Worth a day to investigate.
Analytics above platformDuplicate event firing, test orders counted, refunds not deductedYes. Inflated numbers cause the worst decisions.
Ad platforms summing above real revenueEach claiming the same conversionExpected. Use blended figures for budget decisions.
A channel showing zeroBroken UTMs, not zero performanceYes, and it is usually cheap to fix.

Reconciliation is the first layer of every audit I run, because nothing above it can be trusted until it passes. A fixed-price audit starts there and works up through the funnel.

Which number should you actually trust?

A simple hierarchy resolves most disputes.

Stop chasing perfect attribution. Privacy changes, cross-device journeys and consent refusals mean per-channel attribution will never be exact again. The productive response is to use blended numbers for budget decisions and incrementality tests for the questions that genuinely matter, rather than buying another tool that promises to resolve it.

Running one yourself, in an afternoon

  1. Export last month’s orders and revenue from your platform.
  2. Pull the same period from analytics. Check the timezone matches before comparing anything.
  3. Calculate the gap as a percentage and write it down. This is your baseline error.
  4. Place a real test order and watch which events fire, and how many times.
  5. Add up what every ad platform claims. Compare the total against real revenue.
  6. List your traffic sources and find any showing implausible zeros. Those are broken UTMs.
  7. Check whether refunds and cancellations are deducted anywhere. Often they are not.

If the gap is under 8% and stable, stop. Your data is good enough to make decisions from, and further precision is not worth the engineering.

Once the numbers are trustworthy, the KPI pyramid covers which of them deserve attention, the CRO guide explains how to use them to find leaks, and the 7-layer framework shows where analytics sits among everything else.