About Tracking

Ad Platform Tracking

Meta Pixel + CAPI TikTok CAPI LinkedIn CAPI Snapchat CAPI Pinterest CAPI Quora Pixel Bing + UET Tag

Google Ecosystem

Google Ads Tracking GA4 Setup & Audit Google Tag Manager

Advanced Solutions

Server-Side Tracking Looker Studio Offline Conversion
Case Studies Blog Free Checklist Book Free Audit →

When conversion tracking stops working — or was never working correctly to begin with — the diagnosis is almost always one of a small set of predictable causes. Here are the 10 most common reasons conversion tracking breaks on Shopify stores, and exactly how to fix each one.

1. Pixel Not Installed on Checkout Pages

Symptom: PageView fires on product pages but Purchase event never appears.

Cause: Shopify checkout pages are not part of your theme. Tags added only to the theme header or footer do not load on checkout.shopify.com pages.

Fix: For Meta and GA4, use Shopify’s Customer Events API (Settings → Customer events in Shopify Admin) or the Web Pixel App Bridge to load tracking on checkout pages. For Google Ads, the Conversion Linker and conversion tags must be added via Google & YouTube app or GTM with Shopify’s checkout script injection (Shopify Plus only for full flexibility).

2. Thank-You Page URL Not in Trigger

Symptom: Conversion tag is configured in GTM but never fires on purchases.

Cause: The GTM trigger is set to fire on a specific URL (e.g. /thank-you/) but Shopify’s actual order confirmation URL pattern is /orders/{order-number}/thank_you or similar, which does not match.

Fix: In GTM, set the Page Path trigger using contains “thank_you” instead of exact match. Or use the event-based approach: trigger on the Shopify purchase dataLayer event rather than a URL pattern.

3. Duplicate Pixel Implementation

Symptom: Meta reports double the number of purchases compared to Shopify orders.

Cause: Pixel fires twice — once from Shopify’s native Meta channel integration, once from a GTM tag or third-party app.

Fix: Choose one implementation method and remove the other. If using GTM, disable the Shopify native Meta channel pixel. If using the native channel, remove the GTM pixel tag.

4. Tag Fires Before Order Is Confirmed

Symptom: Conversion count is higher than actual orders, especially when customers revisit the confirmation page.

Cause: The conversion tag fires on every page load of the confirmation page, not just the first one after checkout.

Fix: Use Shopify’s first_time_accessed variable in your checkout.liquid (Shopify Plus) or rely on Shopify’s Customer Events API which fires the event only once per order. For GTM, gate the trigger on {% if first_time_accessed %} Liquid condition.

5. Pixel Blocked by Browser or Ad Blocker

Symptom: Pixel Helper shows events when your ad blocker is disabled but tracking gaps appear in real data.

Cause: A significant portion of your visitors use ad blockers that block the Meta Pixel JavaScript from loading.

Fix: Implement Meta Conversions API (CAPI). Server-side events bypass browser-side blocking entirely. CAPI should be the primary conversion signal, with the browser pixel as a fallback.

6. Wrong Pixel ID

Symptom: Events appear to fire in GTM or Pixel Helper but nothing shows in Meta Events Manager.

Cause: The Pixel ID in your implementation does not match the Pixel ID in your Meta Business Manager.

Fix: In Meta Business Manager → Events Manager, copy your Pixel ID exactly. Verify it matches character-for-character in your Shopify settings, GTM tag, or wherever the pixel is initialised.

7. Currency Mismatch

Symptom: Purchases track but revenue values are incorrect or show as zero in Google Ads ROAS reports.

Cause: The currency code sent with the conversion event does not match the currency set in your Google Ads account or Meta Business Manager.

Fix: Ensure the currency parameter in your purchase event matches your account currency setting (e.g. “USD” for US-based accounts). Shopify dynamically sets the currency based on the customer’s location for multi-currency stores — align your conversion tag to send the base store currency or the currency Google Ads is configured in.

8. GA4 Stream ID Mismatch

Symptom: GA4 shows some data but purchase events are missing or attributed to the wrong property.

Cause: The Measurement ID in your GTM or Shopify GA4 configuration points to a different stream or a test property rather than your live GA4 property.

Fix: In GA4 Admin → Data Streams, copy the Measurement ID (G-XXXXXXXXX). Verify it exactly matches what is configured in GTM or your Shopify GA4 app settings.

9. Theme Update Removed Tracking Code

Symptom: Tracking was working correctly but stopped after a theme update.

Cause: Manually added pixel code in theme.liquid was overwritten when the Shopify theme was updated.

Fix: Never add pixel code directly in theme.liquid if you can avoid it. Use GTM, Shopify Customer Events, or official app integrations that persist across theme updates. If you must add code to the theme, document exactly where and re-add it after every theme update.

10. GTM Container Not Published

Symptom: You added a new tag in GTM but it is not firing on the live site.

Cause: GTM changes must be Published to take effect. Saving a tag in GTM only saves it in the workspace draft — it does not go live until you submit and publish a new container version.

Fix: In GTM, click Submit → Publish. After publishing, use GTM Preview mode to verify the tag fires correctly, then check the live site with the relevant browser extension.

Book your free Shopify tracking audit here and we will diagnose exactly which of these issues is affecting your store’s conversion tracking and fix it.

Leave a Reply

Your email address will not be published. Required fields are marked *