Blog
Notes on privacy-first analytics, measured comparisons, and building a $1/month product in the open.
-
Is ChatGPT losing traffic share in 2026? That headline is about the wrong number
The viral "ChatGPT dropped to 54%" stat measures visits to chatgpt.com, not referrals to your site. Here's the 2026 AI assistant mix, why trackers disagree, and what your own log shows.
-
A US Supreme Court ruling just put Google Analytics' EU data transfers back in question
On 29 June 2026 the Supreme Court stripped the FTC of the independence the EU-US Data Privacy Framework leans on. Here's what it means for GA4 — and why it's a non-event for cookieless analytics.
-
Can you run web analytics without a cookie banner in France? The CNIL says yes — if your tool passes this test
France lets you skip the cookie banner for analytics that meet the CNIL's criteria — but since January 2026 you self-certify. Here's the test, and why cookieless first-party analytics passes it.
-
Why your GA4 is full of traffic from China and Singapore — and why you can't filter it
The 2026 GA4 ghost-traffic wave POSTs fake hits straight to Google's servers, so your WAF never sees them. Here's why GA4's own filters can't stop it — and what first-party analytics does differently.
-
GA4's Measurement Protocol is in maintenance mode — what changed, and why "own your data" shouldn't mean re-plumbing every 18 months
Is the GA4 Measurement Protocol deprecated? No — it's frozen. Here's what maintenance mode means, the 2026 migration deadlines, and why server-side GA4 still can't drop the pixel.
-
See your website visitors on a map — by country, without an IP lookup
Simplytics now shows visitors on a world map. How GA4, Plausible, Fathom, Matomo and Simplytics draw geography — which have a real map, and which resolve you down to your city.
-
Compare this period to the last one — period-over-period is built into every Simplytics dashboard
Simplytics now overlays the previous equal-length period on your charts with delta badges on every metric — except the one number we won't fake. Here's how it works.
-
The EU's Digital Omnibus wants to exempt aggregated analytics from cookie consent — what it would and wouldn't cover
The EU's Digital Omnibus proposes exempting first-party, aggregate-only audience measurement from cookie consent. It's a proposal, not law — here's what it covers and excludes.
-
How to track single-page app pageviews (React, Vue, Next) without cookies
SPAs only count the first page load by default. Here's how GA4, Plausible, Fathom, Matomo and Simplytics handle client-side routing — and which need zero config.
-
How long does each analytics tool keep your data? The aggregate-forever vs raw-data trade-off
GA4 keeps user-level data 2–14 months; Plausible 3–5 years; Fathom and Simplytics keep aggregates forever. Here's what each tool retains, and why raw data is the clock that limits your history.
-
GA4's June 15, 2026 data-controls change — and the consent machinery a cookie-less tool never had
On June 15, 2026 GA4 makes Consent Mode the single control over the Google Ads data flow. Here's what changed, who must check it, and why a cookie-less tool has nothing to reconfigure.
-
GA4 finally has a native "AI Assistant" channel — here's what it still hides
GA4 added an automatic AI Assistant channel on May 13, 2026. It catches ChatGPT, Gemini and Claude — but Perplexity, AI Overviews and copy-paste clicks still slip past it.
-
Show a view counter on every blog post — one script, no per-post setup
Add a live "views" badge to every blog post — one snippet in your post template, or a plain image URL per page. No per-post setup, all-time views, ~1 KB SVG.
-
We measured how much JavaScript five analytics tools make your visitors download
Measured June 2026: Google Analytics ships ~140 KB of compressed JavaScript per visitor. Simplytics ships ~1.9 KB. Here are the numbers and how we measured them.
-
How to see ChatGPT, Perplexity and Gemini traffic in your analytics (and why GA4 hides most of it)
AI assistants are a real referral channel now, but GA4 buries most of it in Direct. Here is how to recover the measurable part — with a custom GA4 channel group, or automatically.