According to a report by ppc.land, Shopify merchants started receiving an email on 22 September 2026 that took back a decision many thought they still had. ppc.land quotes it as saying the store “was matched to your Merchant Center, enabling native checkout on Google AI Mode and Gemini,” and that eligible products “are automatically included.” By the same report, the rollout had begun the previous Friday, 18 September. Both dates are ppc.land’s; I have not found them in a Shopify or Google source. Nothing on the storefront changed, which is exactly why the problem is easy to miss. What changed is where the order is completed.
For a store that sells in the United States, a customer can now finish a purchase inside a Google AI Mode or Gemini conversation, on a Shopify-powered direct checkout, without ever opening your site. Google’s direct checkout currently displays only to customers based in the United States, and the store itself must be US-based and eligible. Microsoft Copilot shows the same kind of checkout to US shoppers, and Meta shows it to shoppers in the US, Canada and Mexico. The order lands in your Shopify admin with channel or referrer attribution, and you still own the customer and the post-purchase experience. What does not land anywhere is the purchase event your analytics stack was built to catch.
What Shopify actually says happens inside that checkout
The sentence that decides the whole job is on Shopify’s own help page, and it is unusually direct. In Google AI Mode and Gemini’s direct checkout, “Google Analytics and custom pixels won’t fire,” because “the checkout fires only server-to-server pixels (started, completed), so none of the standard or custom client side pixels fire.” The same wording appears on the Microsoft Copilot and Meta pages, where direct checkout works the same way.
Meta’s page adds that third-party analytics pixels, such as the ones used for marketing attribution, don’t fire on direct checkouts completed on a Meta surface.
Read that twice. Your GA4 tag is a client-side tag. Your theme-level custom pixels are client-side. Neither runs in the channel. The order exists, the revenue is real, and GA4 has no purchase event for it.
This is also why Shopify’s own built-in Google Analytics integration does not save you: the integration is a client-side tag living on your storefront, and the storefront is not where the checkout happened.
Which AI channels this affects, and which it doesn’t
Shopify groups the channels by how the purchase completes, and the split is the whole story. The table is as of 2 October 2026.
Comparison table — scroll horizontally to see all columns
| Channel | How the purchase completes | Who is offered checkout inside the channel | Does your client-side tracking see it? |
|---|---|---|---|
| Google AI Mode and Gemini | Shopify-powered direct checkout inside the chat | Shoppers based in the US; the store must be US-based | No — only server-to-server pixels fire |
| Microsoft Copilot | Shopify-powered direct checkout inside the chat | Shoppers based in the US | No — only server-to-server pixels fire |
| Meta surfaces (for example Muse) | Shopify-powered direct checkout inside the chat | Shoppers based in the US, Canada and Mexico | No — same server-to-server rule |
| ChatGPT | Discovery; the customer completes on your own store checkout | No one: Shopify has no ChatGPT direct checkout | Your tags run, but attribution can break |
| Browser agents using WebMCP (announced 28 September 2026) | The agent fills in your own Shopify checkout and submits it after the buyer confirms | Doesn’t apply: it runs on your own checkout | Untested: Shopify doesn’t document whether pixels fire |
So the ChatGPT-referral question and the AI Mode-checkout question are different. A ChatGPT order goes through your own checkout, so your tags fire. The weak part is attribution: the buyer can pay in ChatGPT’s in-app browser, and how much referrer and campaign data survives that hop is not documented. That is an attribution job, covered in the guide to AI referral traffic in GA4 and Shopify. A checkout that never touches your storefront, you cannot see from the browser at all.
The WebMCP row is new. On 28 September 2026, Shopify’s developer changelog announced that browser agents can read and update a Shopify checkout and submit it once the buyer confirms, with no merchant setup. Shopify’s docs add that the tool ignores attribution, so an agent cannot set the order’s attribution through it. Whether your pixels fire on those checkouts is not documented, and I have not tested it yet.
Perplexity is not in the table. As of 2 October 2026, Shopify’s Help Center has no Perplexity channel and no Perplexity setting under agentic storefronts, so there is nothing for it to switch on or off in your admin.
How I get those orders into GA4
The capture path runs on the server and does not depend on anything firing in the browser.
- Subscribe to the order webhook. Shopify’s
orders/create(ororders/paid) topic delivers the order to an endpoint you control. Verify the HMAC signature on every delivery, and use theX-Shopify-Webhook-Idheader to ignore duplicates. Shopify says plainly that webhook delivery “isn’t always guaranteed,” and recommends a reconciliation job that reads back from the API — so the webhook is the fast path, not the only one. - Read the channel attribution Shopify attaches, and label the order. Orders from AI channels carry channel or referrer attribution, so the order itself tells you it came from an agentic checkout. Shopify doesn’t document which API value each channel writes, so I confirm it on the store’s real orders first. I write that onto the event as an
agenticparameter plus the channel name, so it is never mixed into an organic segment. - Send a purchase to GA4 through the Measurement Protocol. One HTTP request carrying the order’s value, currency and items, with
transaction_idset to the Shopify order id. Thetransaction_idis what stops a second, later event for the same order from counting twice. - Send to Meta or Google Ads only where the order carries a usable identifier. That means a real click id on the order, or an identifier you can legitimately match. Many agentic orders carry neither. Where there is no identifier, the event is not sent to the ad platform at all, and I say so in the report rather than shipping a weak match.
- Reconcile weekly. Shopify orders labelled agentic, against GA4 purchase events carrying the same label, against what each ad platform actually received. The three will not be equal on any given day; the point is to see the gap and know which part is normal lag and which part is a genuine miss.
A note on client_id, because it decides how much you get back
The Measurement Protocol joins an event to a person’s browsing history through client_id (or app_instance_id). When the AI checkout gives you no GA client id — and it often will not — there is nothing to join the event to. You can still record the purchase against a stable identifier of your own, but reporting that depends on browsing history will be partial. Google says this plainly: the Measurement Protocol is meant to augment automatic collection, not replace it, and “only partial reporting may be available” for a full server-to-server setup. That is a property of the method, not a defect in the build, and it is why I report AI-channel orders as their own segment instead of pretending they fold neatly into the session reports.
How to check whether it is already happening to you
- In Shopify admin, open Sales channels > Agentic and check whether direct checkout is on for Google AI Mode and Gemini, Microsoft Copilot and Meta. While “Allow Shopify to manage for me” is on, direct checkout is on wherever a channel offers it.
- In the same place, open the report for each AI channel. Shopify shows Sales, Orders, Online store sessions and Online store conversion per channel, plus Total sales. Sales add referral and direct-checkout orders together, so compare channel by channel with GA4 purchases for the same dates. ChatGPT orders went through your own checkout. For Google, Copilot and Meta, the figure mixes referral orders, which did, with direct-checkout orders, which did not. A gap that opens as AI orders appear is the signal. These reports aren’t available for headless stores yet; there, filter orders by channel or referrer instead.
- In GA4, look for purchase events carrying the AI-channel label. If Shopify shows AI-channel orders and GA4 shows nothing, your client-side tag is doing exactly what Shopify’s documentation says it will do: nothing.
- Check the ad platforms for the same dates — but expect nothing useful unless those orders carry click ids.
How I verify this in real implementations
I have no AI-channel client results yet. The closest real work is a server-side rebuild for a headless store.
Before the previous Shopify checkout deadline, I rebuilt server-side measurement end to end for a headless Shopify retailer in the US market: an order-level identity bridge so paid traffic could be traced to the order, refunds subtracted, and duplicates removed. Sales with a known source went from 6% to 76%, duplicate purchase reporting from +100% to 0%, and sales credited to a Google ad from 0.1 to 10.5 a day. Of 612 sales in the audited period, 573 were invisible to every report before the rebuild, and 211 refunds had never been subtracted.
“…rebuilt Meta tracking for my funnel with browser + server deduplication, set up the tracking Worker to run on my own Cloudfare account (for full ownership)…”
— Eve S., Balance Works SL
Common failure modes
- Sending the Measurement Protocol event without a stable
transaction_id, so a retry creates a second purchase. - Expecting full session reporting from an event that has no
client_idto join to. - Pushing every agentic order into Meta and Google Ads regardless of whether it carries an identifier, which quietly lowers match quality for everything else.
- Treating ChatGPT and AI Mode as one problem. One is a referral through your own checkout, where tags run and attribution can break; the other is a checkout happening off your storefront.
Limitations
- Only server-to-server pixels fire in the channel checkout. If a measurement approach needs a client-side tag to run, it will not work here. There is no browser event to deduplicate against.
- The Measurement Protocol is not a full replacement for tagging. Google recommends the Data Manager API for new server-to-server integrations and keeps the Measurement Protocol as a mature, supported path rather than the forward one. I build with the Measurement Protocol today and would move a client to the Data Manager API when the scope calls for it, after testing it for that client.
- No backfill. Missed conversions stay missed.
- Buyer countries are limited, and eligibility is conditional. Google AI Mode and Gemini and Microsoft Copilot show direct checkout only to shoppers based in the US; Meta shows it to shoppers in the US, Canada and Mexico. Google also requires a US-based store with a Merchant Center account, and every channel requires Shopify Catalog eligibility and completed store policies.
- Ad platforms only with an identifier. Meta and Google Ads receive the event only when the order carries something usable to match on.
- Consent still applies. These are real orders, but sending them into analytics and advertising systems is still data you have to be allowed to send. This covers technical implementation, not legal advice.
- This is not legal or tax advice.
When you don’t need this
If you sell neither to the US nor, through Meta, to Canada or Mexico, or you have switched direct checkout off in Sales channels > Agentic, this specific problem does not apply to you. Whether to keep it on is a separate decision, covered in should AI direct checkout stay on?.
If your only AI-channel traffic is ChatGPT, your customers still check out on your store, so your tags run; what can break is attribution, which is a different job from capture. If your AI-checkout volume is negligible and you are not advertising in the US, say so and we will both save the effort.
I can build this for you
This is the use case AI Mode, Copilot and Meta Checkout Orders Missing in GA4: Server-Side AI-Channel Order Capture. It starts with a free discussion: describe your task, and I will confirm whether your stores are eligible, what identifier you actually have for these orders, and what the capture would take.
Typical route: a Focused Fix from USD 450 / EUR 425 for a single store’s capture and reconciliation, with a Custom Engineering Project from USD 1,500 / EUR 1,400 where the fleet or the pipeline is larger. If we first need to establish why something is missing, that is a separate diagnosis, agreed in writing before any implementation.
Describe your task.