
event_id prevents double-counting. The warehouse is the reconciliation layer — it sees all signals and produces the canonical ROAS.Purchase and InitiateCheckout events. Cloudflare Worker handling server-side CAPI relay — SHA-256 hashing of email and phone following Meta's normalization spec (lowercase → trim → UTF-8 → hash). fbc and fbp cookies extracted from client request and forwarded to CAPI for attribution continuity. event_id on both client and server — same ID per event prevents double-counting in Meta's deduplication window. Deployed to custom domain (www.stylists.space) with Cloudflare routing.order landing_site data is the only reliable Shopify → Google Ads attribution path.Revenue / Spend), CPL, MoM delta, platform grouping (CASE mapping session source/medium to Meta/Google/YouTube/LinkedIn/Direct/Other). Data control lets users swap GA4 property without breaking calculated fields — verified by swapping to GA4 Demo Account. UTM tracking sheet published as a public template for consistent tagging across all campaigns.Posted Oct 21, 2026
Built a comprehensive ecommerce attribution stack for accurate ROAS reporting.