Cherry Seed

Does the WooCommerce Blocks checkout break existing GA4 tracking setups?

woocommerce-blocks checkout ga4 tracking-broken datalayer react

Quick Answer

Yes — WooCommerce's Blocks checkout uses a React frontend where page transitions happen in JavaScript without full page reloads, silently breaking GTM triggers and dataLayer events configured for the legacy shortcode checkout. According to industry analysis, 73% of GA4 implementations carry at least one silent misconfiguration, and the Blocks migration is now one of the most common causes. Tracking plugins that fire events on page load or rely on PHP-rendered confirmation pages will miss purchases entirely because the Blocks checkout never triggers those conditions.

Full Answer

The legacy WooCommerce shortcode checkout rendered each step as a full server-side page load. GTM triggers and dataLayer pushes that depended on pageview events or DOM-ready conditions worked reliably because every checkout step produced a fresh page. The Blocks checkout changed this architecture — it renders the entire checkout flow inside a React component where steps transition through JavaScript state changes without reloading the page.

This breaks tracking in two specific ways. First, GTM pageview triggers never fire between checkout steps because there is no new page to view. Second, the order confirmation data that tracking plugins expect to find in the page HTML may not exist when their scripts execute, because the React component renders asynchronously after the initial page load. The result is that GA4 sees the visitor arrive at checkout but never records the purchase — the conversion event silently disappears.

The fix depends on your tracking method. Plugin-based tracking solutions need an update that specifically supports the Blocks checkout's event model. Custom GTM setups need triggers that listen for WooCommerce's JavaScript-dispatched events rather than pageview conditions. Server-side tracking avoids the problem at its root — the purchase event fires from the server when the order is created in the database, regardless of whether the customer's browser rendered a confirmation page or not.

Sources

Programmatic Access

GET https://seresa.io/wp-json/cherry-tree-by-seresa/v1/seeds/1067

Cite This Answer

Cherry Tree by Seresa - https://seresa.io/seed/wordpress-tracking/does-woocommerce-blocks-checkout-break-existing-ga4-tracking