Skip to content
Data Quality

What Is Order Reconciliation in Tracking Audits?

Definition

Order reconciliation is the process of matching individual orders recorded in a commerce platform's backend, such as Shopify or a payment processor, against the same orders as reported by analytics and ad platforms such as GA4 or Meta Ads, using the backend as the source of truth.

It works order by order rather than only comparing aggregate totals, so it can identify which specific transactions are missing, duplicated, or mismatched in value rather than just that a discrepancy exists somewhere. The output is typically a list of unmatched or mismatched orders plus the pattern connecting them, pointing to a specific tracking failure rather than a vague revenue gap.

export of actual orders
order IDtimestampvaluecurrency

Daniil Maximkin Published Reviewed

  1. In practice

    How does order reconciliation work in practice?

    Reconciliation starts from an export of actual orders — order ID, timestamp, value, currency — from the commerce backend, since that system processed the real payment and is authoritative. That list is then matched against the corresponding events in GA4 (purchase events, ideally via transaction_id) and in ad platforms (conversion events, ideally via a shared identifier).

    Matching at the order level surfaces specifics: orders placed but never logged as a purchase event, orders logged twice due to page reloads or app double-firing, or orders logged with a different value than the actual charge — common with currency conversion, discounts, or tax handling differences.

  2. Not to be confused with
    Not to be confused with
    Is notIs
    comparing GA4's total revenue to Shopify's total revenue for a date rangeworks order by order rather than only comparing aggregate totals
    a one-time fixtypically repeated periodically rather than run once and trusted indefinitely

    Reconciliation is not the same as comparing GA4’s total revenue to Shopify’s total revenue for a date range — an aggregate comparison only tells you a gap exists, not which orders or why.

    It’s also not a one-time fix: because new gaps can appear after a platform update, an app install, or a checkout change, reconciliation is typically repeated periodically rather than run once and trusted indefinitely. A small, consistent variance is expected — different attribution windows, timezone handling, and refund treatment all create some legitimate difference — and isn’t automatically a bug.

  3. Where to check

    How to check

    • GA4ExploreFree form
    • Shopify AdminOrders

    In GA4, Explore > Free form with transaction_id as a dimension lets you export purchase events with their IDs for matching against a Shopify order export (Shopify Admin > Orders, or the Orders API). Meta Events Manager’s Test Events tool, checked against the Purchase event’s value and currency fields, serves the same role for ad-platform-side matching.

Daniil Maximkin

Hi, I’m Daniil.

I work with you from defining the problem to implementation and handover. You talk to the person who does the work. I work in English and Russian.

What do you need to get working?

Describe your task

The first answer is free, within one working day. Or write directly: next@taskfordaniel.com