Skip to content
BlogMeasurement and Analytics3 min read

Cross-domain measurement in GA4: when you need it and how to tell if it is not working correctly

You need cross-domain measurement in GA4 when users move between multiple domains that belong to one journey, such as website -> checkout -> thank-you page.

Short Answer

You need cross-domain measurement in GA4 when users move between multiple domains that belong to one journey, such as website -> checkout -> thank-you page. The goal is to prevent GA4 from treating each domain as a new source and a new user.

When To Implement Cross-Domain Measurement

Cross-domain setup makes sense when you have multiple owned domains or subdomains in a single conversion path. Examples include a marketing website on tmrw.cz and an app on app.tmrw.cz, an e-shop on shop.example.cz and checkout on checkout-provider.example, or a booking journey on another domain that is still under your control.

It does not make sense for every external link. If a user leaves for a partner website and the journey ends there, you do not need cross-domain measurement. But if they return from an external step to your thank-you page and you want to preserve the source, you need to decide between cross-domain measurement, unwanted referrals, and a technical integration with the provider.

How GA4 Handles Linking

GA4 uses domain configuration in Google tag settings. When users move between configured domains, a linker parameter is added to help preserve measurement identity. This only works when tags are implemented correctly on both sides and links are not modified or rewritten along the way.

If the second domain does not have your tag or you cannot influence it, cross-domain measurement will not work fully. In that case, at least address unwanted referrals and return URLs.

Signs Of Broken Cross-Domain Measurement

In reports, you see your own domain as a referral. Sessions inflate when users move into checkout. Conversions show checkout.example.cz as the source instead of the original campaign. In DebugView, you see a changed client_id or a new session where one journey should continue. The linker parameter is missing from links between domains.

Sometimes the problem is that the cookie banner on the second domain does not send the same consent state, or that the GTM container on the second domain is different and does not have the correct Google tag.

Testing Process

Open a clean browser, start GTM Preview or Tag Assistant, and walk through the journey from the first domain to the second. Watch link URLs, page_location, client_id, session_start, and referrer. Then complete a test conversion and verify that the source remained the original campaign or the correct channel.

Test reverse paths, language versions, and mobile as well. Cross-domain measurement may work in desktop checkout but fail in a mobile booking journey if the provider uses different URLs or an iframe.

What To Document

Write down the domains that belong to one measured journey. For each one, note whether it runs the same GA4 stream, GTM container, and CMP, and whether it is under your control. Add a transition map and a decision for each step: cross-domain measurement, unwanted referral, postMessage, webhook, or no measurement. Without this map, cross-domain setup often turns into a pile of random settings.

FAQ

Frequently Asked Questions

Next Article

WooCommerce GA4 GTM4WP dataLayer

WooCommerce measurement in GA4: GTM4WP, dataLayer, and the right ecommerce events without unnecessary development

With WooCommerce, you do not always need to write the whole dataLayer from scratch. GTM4WP can send WooCommerce interactions and ecommerce data into the dataLayer.

Read ArticleRead Article

 
Looking for 
 
someone who 
 
can take this 
 
off your plate? 

We will design cross-domain measurement for websites, checkouts, apps, and booking systems so conversion sources do not fall apart.