Skip to main content
TikTok × Ecommerce OrdersRun this yourself

How to reconcile TikTok Ads against your store's order table

This is the check we run first on every account, written out so you can run it without us. It takes about thirty minutes and needs two numbers: what TikTok says it produced, and what your store's order table actually shows. The gap between them is the only honest measure of whether your tracking works — and if it comes back small, you do not need us.

Free30 minutesNo obligation

Specific to TikTok × Ecommerce Orders

TikTok purchases vs your store orders: check ttclid and the event

Save ttclid on each order and send the order ID as the shared event ID on the pixel and Events API purchase. Compare TikTok's website purchase count for a closed month against paid online orders carrying ttclid. TikTok below that count usually means lost identifiers; above it means view-through credit, duplicates, or a pre-payment event being counted.

TikTok reports aggregates, so the closest thing to a join is the set of orders that arrived with ttclid. Count those, then compare with TikTok's purchase figure. Many stores find almost no orders carry ttclid at all, because their capture code was written for Google and Meta. That is not a reporting gap; it is a missing parameter, and fixing it is the first step before any comparison means much.

Check which event your campaigns count as the purchase. TikTok has separate standard events for placing an order and for completing payment, and a setup that counts the former includes orders that never got paid, which your paid filter removes. Confirm the attribution window and whether view-through is included in TikTok's current settings, and check whether the report places conversions on the click date or the order date, since that decides which month a late order lands in.

If you also sell through TikTok Shop, those orders complete inside TikTok and may or may not sync into your store with their own sales channel. Exclude them from this comparison unless your campaign genuinely optimizes for site purchases that include them. A modest TikTok shortfall against ttclid-carrying orders is the browser pixel losing events; a large surplus usually means the pixel and Events API both sent the purchase without a matching event ID.

TikTok × Ecommerce Orders · what breaks

Why TikTok and your store's order table disagree

  1. 01

    Refunds never subtracted

    The most common cause and the easiest to check. Sum refunds for the same period — if the platform figure is roughly your gross and your own figure is net, that difference is the whole gap.

  2. 02

    Purchase event firing on page refresh

    A confirmation page that re-fires on reload counts one order several times. Compare distinct order IDs against total conversions.

  3. 03

    Point-of-sale orders in the same table

    If you have a physical shop, counter sales sit in the same order table and will be counted as advertising conversions unless the channel is filtered.

  4. 04

    Post-purchase upsells arriving late

    If the conversion fires at checkout and an upsell adds revenue afterwards, the platform is under-reporting by the upsell take rate.

TikTok × Ecommerce Orders · the fix

What you get from this — TikTok × Ecommerce Orders

  • A number instead of a suspicion

  • The likely cause, narrowed

  • A basis for deciding

TikTok × Ecommerce Orders · architecture

What each side is actually counting — TikTok × Ecommerce Orders

  1. 1

    What TikTok counts

    A standard event name, an event timestamp, a shared event ID, hashed and normalized user identifiers, and ttclid where available. Confirm the current required fields in TikTok's documentation before building.

  2. 2

    How TikTok attributes it

    TikTok's click identifier, appended to the landing URL. Capture it on landing and persist it exactly as you would gclid or fbclid — it's the strongest matching signal available and the most commonly missing one, because TikTok is often added to a stack that was built around Google and Meta.

  3. 3

    The window it uses

    Verify the current attribution and import windows in TikTok's documentation. They differ from Google's and Meta's, and quoting a number here that goes stale would be worse than sending you to the source.

  4. 4

    What your store's order table counts

    Paid orders with their totals, found in Shopify Admin → Orders, WooCommerce → Orders, or a direct query against the orders table.

  5. 5

    The filter that makes them comparable

    Financial status is paid, and the sales channel is online rather than point of sale.

TikTok × Ecommerce Orders · events

Reading the gap — TikTok × Ecommerce Orders

15%+ platform higherUsually the wrong event entirely — the platform is claiming more than you took. usually refunds, duplicate firing, or a second channel bleeding into the same conversion action.
20%+ platform lowerUsually structural — the platform is seeing fewer orders than you actually took. usually consent, ad blocking, or an identifier that never reached the order.

TikTok × Ecommerce Orders · diagnose

Diagnostic order

  1. 01

    Confirm both numbers cover the same period and channel

  2. 02

    Refunds never subtracted

    The most common cause and the easiest to check. Sum refunds for the same period — if the platform figure is roughly your gross and your own figure is net, that difference is the whole gap.

  3. 03

    Purchase event firing on page refresh

    A confirmation page that re-fires on reload counts one order several times. Compare distinct order IDs against total conversions.

  4. 04

    Point-of-sale orders in the same table

    If you have a physical shop, counter sales sit in the same order table and will be counted as advertising conversions unless the channel is filtered.

  5. 05

    Read TikTok's own event diagnostics, plus a reconciliation against your records

    TikTok is usually the third platform added to a stack, and it typically inherits whatever assumptions were made for Google and Meta. The most common result is that ttclid is never captured at all, because the capture code was written naming gclid and fbclid and nobody revisited it.

TikTok × Ecommerce Orders · prove

How to know you did it right — TikTok × Ecommerce Orders

Source of truth

your store's order table — orders for a fully closed month

    TikTok × Ecommerce Orders · free audit

    What we check in the free audit

    • Confirm both numbers cover the same period and channel
    • Refunds never subtracted
    • Purchase event firing on page refresh
    • Point-of-sale orders in the same table
    • Read TikTok's own event diagnostics, plus a reconciliation against your records

    Checked against

    your store's order table — orders for a fully closed month

    Get my free conversion tracking audit

    Free30 minutesNo obligation

    TikTok × Ecommerce Orders · when not to buy

    When the answer is that you do not need us — TikTok × Ecommerce Orders

    • If almost all of your orders come from a channel with no click behind it, no tracking work will reach them — and knowing that is worth more than a build.
    • If TikTok is a small share of your spend, the effort is better spent making Google and Meta correct first — the same infrastructure then extends to TikTok as one additional tag rather than a separate project.

    TikTok × Ecommerce Orders · what we deliver

    The method, step by step — TikTok × Ecommerce Orders

    • Pull what TikTok reports

      Tiktok's own event diagnostics, plus a reconciliation against your records.

    • Pull what your store's order table shows

      Export orders for a fully closed calendar month, filtered to paid and online. Count them, and sum the total after discounts and before shipping and tax.

    • Filter both to the same thing

      Financial status is paid, and the sales channel is online rather than point of sale.

    • Compare per record, not on totals

    FAQ

    TikTok × Ecommerce Orders questions, answered

    Most often the pixel was blocked or ttclid was not captured, so TikTok had nothing to match. Sending the purchase through the Events API with ttclid and hashed email closes much of that.

    Free · 30 min

    Found a gap between TikTok and your store's order table?

    Free30 minutesNo obligation