Skip to content

Answer library  /  Conversion Tracking  ·  Reconciliation

Why don't my Google Ads conversions match my Shopify orders?

Google Ads and Shopify count on different clocks: Google credits the click date, Shopify the order date. On one account in 2026, switching the date basis alone moved the count 5.8 percent. Over thirty days, a count gap inside 10 percent is reconciled, 10 to 25 percent needs a named cause, and above 25 percent is a tracking problem.

The two numbers will never be equal, and an owner who expects them to be ends up chasing a gap that isn’t a defect. The useful question is how wide the gap can be before it stops being attribution and starts being a broken event or a setting. This page holds the band I use for every pair, and the six causes I rule out when a gap sits outside it.

Different clocks, same orders

Google Ads credits a purchase to the day of the click that earned it, inside a click-through window of 1 to 90 days depending on the action, plus a view-through window. Shopify writes the order on the day the card was charged. Same order, two dates, and on a thirty-day report the edges never line up.

That effect alone is measurable. In my Ecommerce Tracking Accuracy Benchmark, switching one account from click-date to conversion-date reporting moved its total by 5.8 percent on count and 7.4 percent on value, with nothing else changed. Then there’s what happens after the sale. On the one account where I could read the store’s order table, about a sixth of orders were refunded inside the window and about a tenth were cancelled, and the ad platform was never sent a restatement for any of them. Google keeps every one as a conversion. Shopify’s net figures drop them.

A gap is the normal state. This is the band I hold every account to, one row per pair.

ComparisonWhat’s being comparedWindowBand
Google Ads purchase conversions vs Shopify orders attributed to paid search (GA4 last-non-direct, or Shopify Sales by traffic source)Count. Google on click date, Shopify on order date, gross orders with refunds and cancellations left in30 daysInside 10 percent, reconciled. 10 to 25 percent, name the cause. Above 25 percent, tracking problem
Google Ads conversion value plus Meta purchase value vs Shopify revenue after discounts, before refunds, attributed to paidRevenue30 daysInside 15 percent, healthy. Above 15 percent, a setting or an event is padding the value
GA4 paid-channel conversions vs Shopify paid ordersCount. GA4 sessionizes on last non-direct click30 daysWithin 20 percent
GA4 paid-channel conversions vs Google Ads plus Meta reported conversionsCount30 daysWithin 15 percent
Meta purchases vs Shopify ordersCount. Meta models the iOS share30 daysIn the accounts I’ve reconciled, Meta reports 10 to 40 percent above Shopify, wider on high-iOS stores
Meta purchases vs GA4 paid-social conversionsCount30 days10 to 30 percent, Meta higher
CRM closed-won deals vs offline conversions imported to Google Ads and MetaCount. Same records on both sides, by deal date7 daysUnder 5 percent

The first row is the one this question is about. Between 10 and 25 percent, I want a named cause from the list below before anyone touches a bid. Compare gross to gross, Shopify’s gross orders and gross revenue in the same window, so refunds don’t open a gap on their own. Gross here means order subtotals after discounts and before refunds, not Shopify’s Gross sales line, which is before discounts.

The setting that pads revenue

A Shopify client’s $32.99 order landed in Google Ads as $148.95. The dataLayer was clean and GA4 said $32.99. The prior agency had switched on Customer Lifecycle Value Optimization with a hardcoded $115.96 incremental value for new customers, so every new-customer conversion arrived as revenue plus $115.96, and Smart Bidding had been chasing that number for nine months. The setting is two clicks deep under Conversions, then Summary, and it’s the first thing I check when the count reconciles and the revenue doesn’t. The full receipt is on the blog.

Add-to-cart value counted as revenue

The column reads “Conv. value”. Nothing in the interface says what fed it. On two of the three accounts in the benchmark, measured May to August 2026, between 16.6 and 17.2 percent of counted conversions and between 19.8 and 25.8 percent of reported conversion value came from add-to-cart and begin-checkout events, because those actions had been set to count inside the bidding metric. One Shopping campaign on one of those accounts had no purchase goal at all. In 90 days it reported 5.96 conversions, every one a cart or checkout event, and the algorithm bid to maximize cart value. In my Q3 account benchmark, a separate pull, 0 of 4 purchase-tracked accounts counted cart, page-view or engagement actions as primary, so this is a defect to rule out, not a rate.

This is why the revenue band sits at 15 percent rather than 25. The smallest value defect I have measured was 19.8 percent, and a wider band would call it normal. Open the conversion-action list and read the category of every action that counts. The name tells you nothing.

Two purchase events, one order

Three purchase-category conversion actions were live at once on one benchmark account: the store sales-channel tag, a tag-manager deployment, and an analytics-imported purchase event. Over their common live window they recorded 382.02, 321.59 and 266.99 purchases for the same store, a 30.1 percent spread between the highest and the lowest. The account counted only one of them. The other two existed to disagree with it.

The same defect shows up on Meta when the browser pixel and the Conversions API both fire a purchase without a shared event_id, which counts one order twice and inflates reported ROAS with it. Inside Google Ads the tell is a conversion rate far above the account’s own history on a high-volume campaign, which usually means branded overlap or a de-duplication failure. The dedup contract, one event ID shared by browser and server, is in the Tracking Stack.

The purchase event that went dark

On one store I work with, Google Ads saw about 68 percent of the purchases GA4 recorded. After a checkout migration, the purchase event no longer fired for every completed order, so part of the store’s sales never reached the Google Ads tag. Once I repaired that event and tested it from click to confirmation, the two numbers came within 4 percent of each other inside two weeks.

A gap that opens on a specific date usually has a specific cause, and a checkout change is the most common one I find. What Checkout Extensibility breaks, and the order to fix it in, is its own answer.

Revenue that landed in Unassigned

On Emma Grace Home, a furniture store I built and run, GA4 was crediting paid revenue to Unassigned instead of a channel. The cause was a duplicate install, the most common Shopify break I find: two GA4 installs on one property, and the web container loading twice. The purchase event was also named with a capital P, and GA4 only treats lowercase purchase as a purchase.

When GA4 can’t resolve a session to a channel, Shopify’s paid orders and Google’s conversions each look fine on their own and refuse to meet in the middle. Count your installs before you touch an attribution setting.

The five-number reconciliation I run weekly

Fifteen minutes in a spreadsheet, five numbers, same thirty-day window: Google Ads conversions, Meta conversions, GA4 paid-channel conversions, Shopify paid orders, Shopify revenue after discounts, before refunds. I read them against the table above in a fixed order.

  1. Google Ads conversions against Shopify paid orders. Inside 10 percent, move on. Outside 25, stop here.
  2. GA4 paid conversions against Shopify paid orders, within 20 percent, and against the Google Ads plus Meta sum, within 15 percent. A miss on either points at a channel-mapping or session problem, the kind two GA4 installs produce.
  3. Platform conversion value against Shopify paid revenue after discounts, before refunds, within 15 percent.

If the count band holds and the revenue band doesn’t, the cause is a value setting: lifecycle padding or cart value counted as revenue. If neither holds, an event is missing or doubled. Either way, no bid, budget, or structure change goes in until the count gap is back inside 10 percent, because every one of those decisions is computed from the column that’s wrong. A gap that holds steady for a month is attribution. One that jumps in a single week is a broken tag with a date on it.

When to bring me in

Bring me in when Google Ads, Meta and your store report different numbers for the same sales, when a purchase or lead event stopped firing after a site change, or when you can’t say which number to trust.

I'm Conner Crowe, and I write every audit myself. Send the free audit request and add me as a read-only user, and within 24 hours of access you'll have a written read on which numbers to trust and what to fix first. No call needed, and nothing in your account or store changes.

Request a free Google Ads audit

See how I fix conversion tracking.

See it in Google Ads

Where to look in your account.

What Google is allowed to count

Goals, then Summary, then View all conversion actions

  1. Tracking status. Inactive or Needs attention means the tag hasn’t recorded anything lately, so check it before you trust the totals.
  2. Primary or Secondary. Only Primary actions feed Smart Bidding; Secondary ones are reported and ignored by the bidding.
  3. Count. One per click for leads, Every for purchases. A lead form set to Every counts a double-submit twice.
  4. Included in account-level goals. Yes is what the campaigns actually optimize toward.

From my own Google Ads account, October 2026. Tap or click the screen to see it full size.

Where new-customer value lives

Goals, then Conversions, then Summary, then Customer lifecycle optimization

  1. Incremental conversion value. This is where you tell Google a new customer is worth more than a returning one. Not set means it isn’t.
  2. New-customer bidding won’t run until a customer audience has at least 100 active members on one network. Mine didn’t when I captured this.
  3. Retention for lapsed customers needs its own audience. 0 segments selected means it has nothing to work with.

From my own Google Ads account, October 2026. Tap or click the screen to see it full size.

Tools for this diagnosis

All my free tools

Related questions

Back to the full conversion tracking: the diagnosis library

Want your tracking checked?

Same check,
run on your tracking.

Add me as a read-only user and I'll write the audit myself: which of your numbers to trust and what to fix first, 5 to 7 pages, back within 24 hours of access. No call needed. If you'd rather talk first, a call is open too.