foco

saas

B2B SaaS — Cross-Domain Attribution Recovery

30% of user journeys were attributed to 'direct' because GA4 cross-domain tracking broke on subdomain handoffs. Fixed the linker configuration and recovered the missing attribution data.

embedded measurement / 4 weeks

The Situation

A B2B SaaS company with a marketing site on www.company.com and an app on app.company.com was seeing 30% of their sign-ups attributed to "direct" traffic in GA4. The marketing team suspected their campaigns were driving more conversions than the data showed, but couldn't prove it.

What We Found

  • GA4 cross-domain tracking was configured for the root domain but the _gl linker parameter was being stripped by their CDN's URL normalization rules on subdomain redirects
  • Users who clicked a Google Ad, landed on www., and then signed up on app. were losing their attribution data at the handoff
  • Enhanced measurement was auto-tracking outbound clicks and creating duplicate events

What We Did

  • Fixed the CDN configuration to preserve _gl parameters on subdomain redirects
  • Implemented server-side session stitching via sGTM as a backup for cases where the linker parameter still gets stripped
  • Cleaned up Enhanced Measurement settings to prevent duplicate event tracking
  • Built a BigQuery validation query that compares GA4 attribution against the CRM source field

Before & After

MetricBeforeAfter
Traffic attributed to "direct"34% of sign-ups11% of sign-ups
Google Ads attributed conversions89/month142/month (+60%)
Attribution confidence (GA4 vs CRM match)52% agreement91% agreement

Outcome

Marketing could finally prove ROI on their Google Ads spend. The 60% increase in attributed conversions wasn't new conversions — they were already happening. The team had been underreporting performance and was close to cutting budget on their best-performing channel.