The short answer
Google Ads undercounts Shopify sales when the browser tag is blocked or the click ID is lost. Send the paid order from the server with the click ID and a hashed email, and keep to the 90 day click window.
DataCops is a tool that fixes Shopify tracking from a server, so your ads hear about every paid order, not only the ones a browser script managed to report.
How DataCops does it on Shopify:
- Every paid order, server-side. The DataCops Shopify app listens for Shopify's paid-order webhook and sends each order as a Purchase, with value and currency, to Meta, Google Ads, TikTok and LinkedIn. Shop Pay and Apple Pay orders count too.
- The steps before the sale. Its Web Pixel inside Shopify reports add to cart, checkout, payment info and search.
- Counted once. The pixel and the server share the same order ID, so a purchase is not counted twice.
- The click survives Safari. One script and one DNS record collect on your own domain, click IDs are kept on the server for up to 90 days, and a signed server-set cookie lasts up to 400 days where enabled.
- Real people only. Every visit gets a bot verdict, with a Real people only switch per ad platform (off by default).
- Proof. A delivery log shows each send as sent, held, skipped or failed, with the reason.
Best for: Shopify stores that run paid ads and want the ad platforms to see the sales Shopify already recorded.
Why Google Ads undercounts Shopify
Google Ads needs to tie a sale to an ad click. If the browser tag never fired, or the click ID was gone by checkout, the sale is a Shopify order and not a Google Ads conversion.
- Blocked tags. A shopper with an ad blocker never runs the tag.
- Lost click ID. The GCLID rides in the URL. A redirect, an app page or an express checkout can drop it.
- Safari. Cookies set by scripts are cleared after 7 days. A slow buyer loses the click.
- The sale was not from a Google click. Google credits only people who clicked a Google ad. A buyer from Meta, search or email is not a Google conversion, and should not be.
Click ID and email: what each does
The click ID is a code Google adds to the URL when someone clicks your ad. It points to one click. Keep it, and the sale can be tied to the exact ad and keyword.
Enhanced conversions adds a hashed email or phone. If the click ID is missing, Google can still try to match the sale to someone who was signed in when they clicked.
Use both. The click ID is precise. The email is the safety net.
Mind the clock. Google takes a click ID import within 90 days of the click, and 63 days for enhanced conversions for leads. Past that, the sale cannot be matched.
How to set it up properly
- Capture the click ID on landing. Store it with the visitor, not only in the browser.
- Send the paid order from the server. Use Shopify's order event, with value, currency and order ID.
- Add the hashed email and phone. So the sale can match even if the click is missing.
- Check the log. You want to see each send, its result and the reason when it is held or skipped.
The DataCops Shopify app does this in one install. Details on the Shopify CAPI page and the Google Ads offline conversions guide.
When not to use DataCops
- You do not run paid ads. Tracking is for feeding ad platforms; with no ads, a native Shopify setup is enough.
- You only sell in person with Shopify POS. The app sends online paid orders, not POS sales.
- You want refunds taken back out of Meta or TikTok. A refund marks the Purchase refunded in DataCops and is corrected on Google Ads, not on Meta or TikTok.
Sources
- support.google.com/google-ads/answer/7521212
- developers.google.com/google-ads/api/docs/conversions/upload-offline
- webkit.org/tracking-prevention/
- shopify.dev/docs/api/web-pixels-api
FAQ
Why does Google Ads show fewer conversions than Shopify?
Usually because the browser tag missed the sale, or the click ID was lost before the order. Google also credits only people who clicked a Google ad.
What is the difference between a click ID and enhanced conversions?
The click ID (GCLID) ties a sale to one ad click. Enhanced conversions adds a hashed email so Google can match when the click is missing. Using both gives the best chance of a match.
How long can I send a sale after the click?
Google Ads accepts a click ID import within 90 days of the click, and 63 days for enhanced conversions for leads.
Does DataCops send Shopify orders to Google Ads?
Yes. Each paid order is sent from Shopify's order webhook with the click ID where it has one, and refunds are corrected on Google Ads.
Do I still need the Google tag on my store?
Keep it for browsing signals. The paid order should not depend on it.