Skip to content

GA4 reports different revenue than your shop. How do you find the cause?

Does GA4 show different revenue from your store? A discrepancy does not always mean an error. Here is a step-by-step guide to checking transactions, the purchase event, payment gateways, duplicates, and user consent.

Your store reports 120,000 PLN in revenue, while Google Analytics 4 shows only 105,000 PLN. Or the other way around: GA4 reports more sales than you actually have in your order list.

Such a difference does not necessarily mean that GA4 is broken. An online store and an analytics platform serve different purposes and may record sales differently.

Instead of merely comparing the final totals, follow a few concrete steps to locate exactly where the data starts to drift.

1. First, make sure you are comparing the same data

Before you start digging into GA4 for issues, check the basics:

  • are you comparing the exact same date range,
  • do your store and GA4 share the same time zone,
  • are you comparing the same currency,
  • do the totals include tax and shipping costs,
  • how are discounts applied,
  • how are refunds and cancelled orders handled,
  • which order statuses do you count as a sale.

This matters because your shop might log an order the moment it is created, while GA4 may only fire the purchase event after payment confirmation.

Example: A customer places an order on August 31 at 23:55, but pays for it on September 1 at 08:00. Depending on your configuration, the shop might count the sale in August, while GA4 attributes it to September.

So before you adjust your integration, establish clearly what you are actually comparing.

2. Do not just compare total revenue

Knowing that the store shows 100,000 PLN while GA4 shows 92,000 PLN tells you very little. You will learn far more by comparing individual orders.

Pick a handful of transactions and check:

  • order ID,
  • order value,
  • currency,
  • date and time of purchase,
  • payment method,
  • order status,
  • whether the transaction appeared in GA4.

This quickly reveals patterns.

If missing orders mostly involve a single payment gateway, the issue likely lies within that specific checkout path. If purchases made on mobile devices or a particular storefront version are missing, that gives you another clear lead.

Find the common pattern among missing transactions first. Only then look for the technical root cause.

3. Check when the purchase event is fired

In GA4, a transaction must be recorded as a purchase event. It carries parameters such as transaction ID, value, currency, and purchased items.

Often the problem is not the event itself, but the exact moment your store triggers it.

For instance, purchase can be triggered:

  • when the order is created,
  • after payment confirmation,
  • upon loading the thank-you page,
  • when the order status changes.

Each of these approaches behaves differently.

If tracking relies solely on the thank-you page, a customer might pay successfully but close the browser tab before returning to your store. The order exists in the shop, but the purchase event never fires.

Conversely, firing purchase too early can record orders that were never actually paid for.

4. Test various payment methods

This is one of the most critical tests in an online store.

Run test purchases using each available payment method and verify whether every flow finishes with a properly triggered purchase event.

Be sure to check separately:

  • instant bank transfers,
  • credit/debit cards,
  • BLIK,
  • PayPal or similar systems,
  • standard bank wire,
  • retrying a failed payment.

Payment processors often redirect users off-site and then back again. It is precisely during these redirects that discrepancies between the order database and analytics tend to emerge.

5. Verify that purchase is not fired twice

The problem can also work in reverse: GA4 might report more purchases than your shop actually received.

In complex stores, a purchase event might be sent simultaneously by:

  • an e-commerce plugin or module,
  • Google Tag Manager,
  • custom code added to the theme,
  • a third-party marketing integration.

Identify every source responsible for dispatching data to GA4.

Also test what happens when you refresh the thank-you page. If each page refresh sends another purchase event, the setup needs fixing.

Every transaction should have a valid, unique transaction_id.

Not every visitor grants consent to the same scope of tracking. Your cookie banner setup, Consent Mode, and tag triggers directly affect the data available in Google Analytics.

This is why GA4 should never be treated as an accounting-grade replica of your store's order database.

Your shop's backend is the single source of truth for order fulfillment, payments, invoicing, and refunds. GA4 exists primarily to analyze user behavior, traffic acquisition, and marketing performance.

Both systems can be configured correctly and still show differing numbers.

7. Check whether the issue started after a specific change

If your numbers were aligned previously, pinpoint when they started drifting apart.

Around that time, did you:

  • change the store's theme,
  • deploy a new checkout flow,
  • switch payment providers,
  • add or update a GA4 plugin,
  • modify your GTM configuration,
  • implement a new cookie banner or Consent Mode?

If the discrepancy began immediately after a specific deployment, you have a much better starting point than auditing the entire tracking setup from scratch.

How to troubleshoot discrepancies between GA4 and your store

Follow this sequence:

  1. Align the dataset – date range, time zone, currency, and revenue definitions.
  2. Compare specific transaction IDs rather than just aggregate totals.
  3. Identify common patterns among missing or duplicate orders.
  4. Verify the purchase trigger timing.
  5. Test all primary payment methods.
  6. Rule out duplicate event tracking.
  7. Check user consent settings and Consent Mode.
  8. Compare data from before and after recent site updates.

This methodical approach helps identify the actual root cause instead of trying to force both reports to match down to the penny.

Should GA4 match your store's revenue to the penny?

Not necessarily. Minor differences naturally stem from tracking mechanics, cookie consent, transaction timing, and revenue definitions.

What should concern you is a large, systematic, or widening gap – for example, an entire category of orders consistently missing from GA4 or single transactions logging repeatedly.

When that happens, audit not just Google Analytics itself, but the entire data pipeline: from checkout and payment processing, through order creation, to the purchase event payload sent to GA4.

Need help figuring out why GA4 and your shop do not match?

At Dock, we can audit your Google Analytics, Google Tag Manager, and data layers.

We do not need to start with a massive audit. In many cases, the most effective starting point is a few specific orders that exist in your shop but fail to appear properly in GA4. Using those, we can trace the entire flow and uncover where the data diverges.

Any questions?

How much does a website cost?

It depends on the scope: a landing page, a corporate site and a shop with integrations are three different projects. After a short call we send a price range and a scope proposal, and only then a quote.

How long does a project take?

A landing page takes two to four weeks, a corporate site six to ten, a shop with integrations three months and up. The schedule goes out with the quote and we report progress every week.

Do you take over existing sites and shops?

Yes. We start with a technical audit, list what needs fixing first, and take over maintenance once we both know what we are dealing with.

What does working together look like?

Discovery, design, build, tests, launch, and then care. You have one contact person and access to the panel where you can see the project status.

Do you offer an SLA and support after launch?

Yes. Maintenance packages include reaction times, updates, backups and monitoring. Scope and reaction times are set in the contract.

Violetta Sultan

Performance Marketing Specialist

Performance Marketing Specialist focused on paid advertising, e-commerce, and data-driven growth. She combines analytical thinking with a practical approach to campaign optimization, focusing not only on traffic and conversions, but on business results. She values testing, clear data, and marketing decisions that translate into measurable value.

Chat with us