{
  "id": 9958941,
  "title": "Shopify to GA4 without GTM: native events plus a server-side Measurement Protocol fallback",
  "url": "https://urgent.news/2026/09/26/shopify-to-ga4-without-gtm-native-events-plus-a-server-side",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-09-26T10:02:43.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/stack_architect/shopify-to-ga4-without-gtm-native-events-plus-a-server-side-measurement-protocol-fallback-2g25"
  },
  "original_language": "en",
  "account": "If you operate an e-commerce store on Shopify, Google Analytics 4 (GA4) setup is often simplified by avoiding Google Tag Manager (GTM). Shopify's Google & YouTube sales channel natively emits all necessary GA4 ecommerce events, a process that takes just a few minutes. However, an issue arises where GA4 purchase counts may fall short of Shopify order counts due to client-side event loss caused by browser restrictions like Intelligent Browsing Technologies (ITP), ad blockers, and iOS limitations. The solution is a server-side Measurement Protocol fallback using a webhook to send purchase events directly to GA4.\n\nKey points:\n- Shopify's Google & YouTube channel emits GA4 ecommerce events natively with no extra configuration.\n- The complete funnel includes events such as page_view, view_item, add_to_cart, view_cart, begin_checkout, add_shipping_info, add_payment_info, and purchase.\n- GA4 tracks revenue but does not handle profit per order, ad-click attribution, or cross-order customer lifetime value (LTV), requiring separate systems like GA4 User ID or CRM.\n- To create a GA4 property, go to analytics.google.com, set the reporting timezone and currency, select eCommerce as the business category, and generate a Measurement ID.\n- Connect Shopify by navigating to Shopify Admin → Sales channels → Google & YouTube, install the channel if necessary, connect the Google account owning the GA4 property, and select the property in the Measurement section.\n- Verify the integration by using the Realtime report in GA4 to ensure the page_view event appears with the correct URL, and place a test order to check for purchase events within 30-60 seconds.\n- Implement immediate config changes, such as setting data retention to 14 months and enabling Google Signals for cross-device reporting.\n- For the server-side layer, use a webhook runner like Make.com or n8n to send purchase events to GA4 via Measurement Protocol, ensuring to include client_id and proper JSON formatting to avoid event rejection.",
  "summary": "If you run a Shopify store, the GA4 setup question usually gets answered with \"install Google Tag Manager.\" You don't need it. Shopify's Google & YouTube sales channel emits the whole GA4 ecommerce event set natively, and it takes about five minutes. The part nobody covers is what happens after: your GA4 purchase count drifts below your Shopify order count and stays there. That gap is…",
  "key_points": [
    "Shopify's Google & YouTube channel emits GA4 ecommerce events natively.",
    "Server-side Measurement Protocol fallback via webhook addresses client-side event loss.",
    "Connect Shopify to GA4 via Admin → Sales channels → Google & YouTube."
  ],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}