Operations & Data · Draft

Data and Tracking Strategy

Created 9 Jun 2026·Updated 2 Jul 2026

Latest change: Session decisions: Identity Platform, W13 acceptance scope, health-first pilot, clean room, pentest timeline

Draft document — deep-dive spec incomplete; content will be updated before and during build. Do not treat as signed-off implementation detail. Pack overview

Principles

  1. GA4 is the source of truth for cross-channel measurement and optimization.
  2. First-party first — server-side tagging, consent-aware, cookieless-ready.
  3. Closed loop — CRM outcomes flow back to ad platforms via offline conversions and CAPI.
  4. Deduped events — online and offline share event_id where platforms support it.

BigQuery warehouse responsibility

Data source Who owns the account / property BigQuery export operated by Kobico responsibility
Google Ads Kobico MCC (agency-owned) Kobico → Kobico GCP BigQuery Yes — export all managed ad accounts for reporting, optimization joins, invoicing support
GA4 Client-owned (preferred) or client GCP Client (optional, on their project) No — Kobico does not operate client GA4 → BigQuery export
MMP (Adjust, AppsFlyer, Branch, etc.) Client Client (optional) No — Kobico does not operate MMP → BigQuery export
Agent / ops telemetry Kobico Kobico Yes — QC, Cost Guard, audit (see System Ops)
Meta / TikTok / DV360 Kobico agency accounts API → Kobico warehouse (Phase 2+) Planned — same pattern as Google Ads where accounts are Kobico-owned

GA4 as SoT without client BQ: Kobico reads GA4 via Analytics Data API (and linked Google Ads data in GA4 UI where configured). Client may enable GA4 BigQuery export on their GCP for their own analytics — that pipeline is outside Kobico scope unless separately contracted.

Google Ads → BigQuery (Kobico): Use BigQuery Data Transfer Service for Google Ads and/or scheduled Google Ads API extracts into datasets such as google_ads_raw (partitioned by tenant_id / customer_id). Accounts are under Kobico MCC — export is agency infrastructure, not client deliverable.

Architecture

client-owned exportAnalytics Data APIData Transfer / APIlinked conversionsClient WebsiteGTM / sGTMGA4 client propertyClient BQ GA4 / MMPoptionalKobico BQCRMConversion TrackingServiceGoogle Ads Kobico MCCMeta CAPITikTok Events API

Tagging deployment

Layer v1 Phase 2+ (optional)
Kobico tagging spec Event names, parameters, UTM schema Same
Client site Implementation guide — manual tags or GTM import template Kobico Relay: CNAME + one k.js loader — see First-party tag relay
Server fan-out Conversion Tracking Service → CAPI / Events API Relay edge → same APIs + first-party cookies
Hosted sGTM Not in v1 scope Alternative SKU for GTM-native clients
Consent / CMP Client responsibility (GTM or BYO CMP) Kobico CMP included by default; client BYO or bundled global CMP via integration — ADR 0005
Consent Mode v2 Required for EEA/UK Enforced in loader + relay

UTM & attribution

Full spec: UTM & attribution spec

Track Vendors URL params
Google Ads Search, Display, Shopping, PMax, YouTube No utm_* — auto-tagging + GA4 ↔ Ads link
Google + CRM SKU Same Custom only: kcid, kpv (+ gclid on forms) — never utm_
Meta / TikTok Social Full utm_* with dynamic macros; campaign ID in utm_campaign

Join GA4 to platforms: campaign ID first (Google via Ads link / gclid; social via utm_campaign).

Click ID capture

  • Store gclid, gbraid, wbraid, fbclid, ttclid in CRM on form submit
  • Pass through to offline conversion uploads

CRM → platform pipelines

Batch path

  1. CRM exports qualified events (scheduled or webhook)
  2. Conversion Tracking Service validates schema
  3. Hash PII per platform rules
  4. Upload to Google offline conversions / Meta CAPI / TikTok Events API
  5. Log upload receipt + match metrics

Real-time path (preferred for high-value events)

  • Webhook → CTS → immediate CAPI with < 1h delay target

Feed management (data adjacent)

  • Product feeds validated before Merchant Center / Meta catalog sync
  • Field mapping documented per vertical
  • Error dashboard feeds human queue

Quality monitoring

Metric Threshold Action
GA4 event volume DoD change -30% Alert, block spend up
CAPI EMQ < 6.0 Alert ops
Offline match rate < 50% CRM field audit
Feed critical errors > 0 Block catalog ads

Privacy

  • Hash PII before platform send
  • Data processing agreements with clients
  • Minimize PII in warehouse; use tenant_id + hashed keys

Data clean rooms (Phase 2/3)

A data clean room is a privacy-safe environment where parties join hashed or controlled datasets without exposing raw user-level records — used for cross-platform user-level attribution or CRM ↔ platform matching at scale.

Phase 1 does not require a clean room. Phase 1 attribution uses GA4 as source of truth plus click IDs (gclid, fbclid, ttclid) and campaign-level joins — see UTM & attribution spec.

Option Assessment
BigQuery Data Clean Rooms Preferred when needed — stack is GCP-native; no extra vendor or data copy for warehouse-side joins. Google Ads side may use Ads Data Hub in the same ecosystem.
Snowflake DCR Strong product but new vendor + data copy + cost — not aligned with locked GCP stack
Custom build Not recommended — security and compliance burden

When to adopt: Phase 2/3 when product requires user-level cross-platform matching beyond GA4 + click-ID attribution. Does not gate the W9 core loop or W13 acceptance test.