Blog
Field notes on clean, private analytics.
Field notes on clean event data, EU residency, and building product analytics teams can trust.

Engineering
First-party by default: stop letting adblockers delete your data
A chunk of your analytics never arrives, and you cannot see what you did not receive. Here is why first-party routing fixes accidental drops, and where it honestly stops.
2 min read

Migration
Leaving PostHog without losing your data
A calm, practical path to migrating off PostHog: run both in parallel, keep your history, and cut over only when the numbers agree. No big-bang switch required.
2 min read

Engineering
What counts as an event (and what you should not track)
Most analytics setups drown in events nobody asked for. A short, opinionated guide to defining events, naming them like an API, and keeping PII out.
2 min read

Privacy
Consent and PII enforcement belongs at the collector, not the browser
Client-side consent gates and PII scrubbing are easy to bypass and easy to get wrong. Here is why leatmap enforces both server-side, at the collector, where the client cannot reach.
2 min read

Privacy
EU-resident analytics, by default
Why where your event data lives is a product decision, not a checkbox. How leatmap keeps analytics inside the EU on every plan, and pins it to a region you choose.
2 min read