Cross-Domain Tracking

What is Cross-Domain Tracking?

Cross-domain tracking is the ability to recognize the same visitor as they move between two or more separate domains (e.g., product site → hosted checkout → account portal). Without it, analytics will usually start a new Session on each domain and misattribute traffic as self-Referral.

Why it matters

Accurate stitching across domains preserves user journeys, stabilizes Attribution Model, and keeps metrics like Pages Per Session and Engaged Sessions trustworthy. This applies to GA4 as well as privacy-first tools such as Plausible, Matomo, and Simple Analytics.

How does Cross-Domain Tracking work?

Most implementations pass a stable identifier—typically the Client ID—from the first domain to the next, then set/read a first-party Cookie on the destination so subsequent hits use the same ID. This is often done by auto-appending a “linker” parameter to outbound links or redirects. When client-side methods are limited (ITP, blocked cookies), a server-to-server stitch using the Measurement Protocol can help associate hits to a single user record. The goal is a single continuous Session rather than fragmented ones.

Implementation checklist

  • Define the full path you need to stitch (all domains, subdomains, payment providers).
  • Enable cross-domain linking in your platform and configure allowed domains in your Tag Management setup.
  • Ensure redirects and security layers (WAF, CDN, SSO) preserve the linker parameter.
  • Verify that the destination domain writes a first-party cookie (see First-Party Cookie) using the same Client ID.
  • Test end-to-end: no self-referrals, original Source/Campaign data and UTM values persist, and the session does not reset.

Common pitfalls

  • Missing one of the domains in the allowlist.
  • Stripping linker parameters during redirects or by URL cleaners.
  • Third-party checkout flows that block query parameters or cookies.
  • Assuming this solves identity across devices—use Cross-Device Tracking or Cross-Platform Tracking for that.