A Customer 360 model unifies CRM contact details, deal history, web browsing behavior, and product usage into a single row per person. The central technical challenge is identity: CRM and web analytics systems share no common key, so connecting them requires building an identity bridge in the warehouse. This hub connects the concepts involved in building a Customer 360 from CRM (Salesforce, HubSpot) and GA4 data in BigQuery using dbt.
The Sequence
1. Resolve identities across systems
Identity Resolution for Customer 360 covers the core problem: GA4 tracks devices with cookie-based user_pseudo_id values, while your CRM tracks people with emails and internal IDs. The note walks through the three strategies for creating join keys (hidden form fields, login-based user_id, transaction ID matching), deterministic vs. probabilistic matching tradeoffs, building the identity mapping table in dbt, and open-source tooling for more complex identity graphs.
2. Backstitch anonymous browsing to known users
GA4 User Backstitching addresses the gap between anonymous browsing and authentication. GA4 applies user_id to the current session but not to previous ones. Backstitching retroactively links pre-login sessions to the person who eventually logged in, recovering the full discovery journey for attribution and Customer 360 analysis. Includes the SQL pattern, shared device handling, and materialization guidance.
3. Handle conflicting data across sources
Multi-Source Conflict Resolution covers what happens when the CRM says one thing and the product database says another. Three patterns — priority-based (COALESCE), recency-based (most recent update wins), and source-specific fields (keep them all) — handle the majority of cases. Includes per-field strategy recommendations and a pragmatic hybrid approach.
4. Structure the dbt DAG
Customer 360 dbt DAG Architecture shows how to wire the pieces together in dbt. The standard three-layer architecture gains an identity resolution layer between base and mart models. The note covers the full DAG structure, model-by-model materialization choices, the wide Customer 360 table, and connecting touchpoints to revenue through the identity bridge.
5. Comply with privacy requirements
Privacy Constraints for Linked Analytics Data addresses the GDPR and CNIL implications that most Customer 360 guides skip. Linking a cookie identifier to a CRM contact creates a processing activity with specific consent requirements. For teams subject to CNIL, the analytics cookie consent exemption disappears the moment you link to CRM data. The note covers the consent chain, right-to-deletion cascading, data retention limits, and architectural patterns for separating consented and unconsented data paths.
Connections
- Attribution Analysis — Identity resolution linking web sessions to CRM deals enables touchpoint timelines and attribution models
- GA4 Sessionization Hub — Sessionized events feed into the web analytics summary in the Customer 360
- Consent Mode v2 Hub — The consent implementation that determines which GA4 events carry consent for CRM linkage
Related
- crm-ga4-customer-360-models — Source article: full narrative on identity resolution, the dbt DAG, conflict handling, attribution integration, privacy requirements, and materialization choices.