foco

Blog

Writing

Practitioner guides on measurement infrastructure, server-side tracking, and privacy-safe analytics.

View Article sGTM vs Client-Side GTM: When to Actually Migrate

Most sGTM migrations happen for the wrong reasons. Here's the diagnostic framework for knowing when server-side tracking actually changes your data.

Read article

View Article Cross-Domain Tracking in GA4: Why 30% of Your Journeys Show as Direct

When users move between your domains, GA4 often loses the session thread and attributes conversions to direct traffic instead of the original source. Here's how to diagnose and fix broken cross-domain tracking.

Read article

View Article How to Tell If Your GA4 Attribution Is Wrong

Your GA4 reports show strong performance, but revenue doesn't match. Here's how to diagnose when GA4 attribution is inflating your numbers and what to do about it.

Read article

View Article Server-Side Tracking for Google Ads: Enhanced Conversions Setup

Setting up Google Ads Enhanced Conversions through server-side GTM requires specific data handling that most implementations get wrong. Here's how to configure it correctly and avoid the common pitfalls.

Read article

View Article How to Validate Your Meta CAPI Event Match Quality

Event Match Quality below 6 means Meta can't match your conversions to users. Here's how to diagnose why your EMQ is low and fix the data gaps that are killing your ROAS.

Read article

View Article Facebook CAPI Deduplication: Why Your Conversions Are Double-Counting

If you're running both the Meta Pixel and Conversions API without proper deduplication, Meta is counting every conversion twice. Here's how to diagnose it, fix it, and verify the fix actually worked.

Read article

View Article How to Debug Server-Side GTM: Tools and Techniques

Most sGTM debugging stops at preview mode. Here's a layered approach to debug server-side GTM across the full event chain, from browser to destination platform.

Read article

View Article The 3 Meta CAPI Mistakes That Are Costing You Conversions

Meta's Conversions API is supposed to close the attribution gap. But most implementations have the same 3 mistakes that make the data worse, not better.

Read article

View Article Why Your Server-Side Tracking Migration Keeps Failing

Most sGTM migrations stall because teams treat it as a tag swap instead of an architecture change. Here's the 4-step process that actually works, based on 20+ implementations.

Read article

View Article Your "HIPAA-Compliant" Tracking Probably Isn't

I've audited tracking setups at healthcare companies that were confident they were compliant. Most had PHI flowing through Google Ads tags. Here's how to check yours.

Read article

View Article The Attribution Window Mismatch: How Standard BI Infrastructure Killed a 4.2x ROAS Channel

Why we stopped optimizing media buying and started optimizing our measurement stack. A deep dive into fixing B2B attribution for considered purchases.

Read article
The Attribution Window Mismatch: How Standard BI Infrastructure Killed a 4.2x ROAS Channel

View Article The Retargeting Fallacy: A Case Study in Incrementality vs. Attribution

High ROAS is often a signal of selection bias, not efficiency. In this case study, I break down how a luxury retailer's "profitable" retargeting campaign was actually a negative-leverage tax on their most loyal customers—and how we proved it with a simple RCT.

Read article
The Retargeting Fallacy: A Case Study in Incrementality vs. Attribution

View Article When Perfect Correlation Breaks Attribution: Why Most MMMs Randomly Assign Credit

When ad channels scale together, standard regression models fail to distinguish cause from effect. This post explores how correlated spend leads to random credit assignment and why you need randomized experiments—not just better models—to untangle the signal

Read article
When Perfect Correlation Breaks Attribution: Why Most MMMs Randomly Assign Credit

View Article Why I Write Long-Form Technical Content Instead of LinkedIn Posts

LinkedIn rewards recycled takes and AI-generated slop. I'd rather write the technical breakdowns that actually help someone fix their tracking stack.

Read article
Why I Write Long-Form Technical Content Instead of LinkedIn Posts