Flatlytics
A privacy-friendly web analytics tool — a tiny, cookie-free tracker with no cross-site identifier, and a drag-and-drop dashboard you can shape yourself.
- No cookies
- so no consent banner needed
- ~1.8KB
- tracker, size-budgeted on every build
- Never lost
- an accepted event survives an outage
The problem
Google Analytics is heavy, cookie-based, and hard to read. Flatlytics is a privacy-first alternative: no cookies, no cross-site identifier, and a dashboard you can actually shape yourself.
What it does
You add one small snippet and it counts your visitors — no cookies, nothing stored on their device. Once a visit is recorded it won't be lost, even if there's a brief hiccup on our end.
Visitor IP addresses are never kept, so nobody is followed around the web. You get a clear overview of your site, plus a dashboard you arrange yourself — drag the numbers you care about into the layout you want.
Key features
No cookies, no consent banner
Because it doesn't use cookies or a cross-site identifier, there's nothing to ask permission for — no banner, and far less compliance headache.
A dashboard you build yourself
Instead of a fixed report someone else designed, you compose the exact views you care about from metrics, dimensions and filters.
A tracker that won't slow your site
The script is tiny by design, so adding analytics doesn't cost you page speed — the thing analytics is often blamed for.
Numbers you can trust through an outage
An event you've already sent is never dropped, so a blip in the backend doesn't quietly leave holes in your data.
Where it stands
Live and verified in production. A weekly-digest email feature exists as working code but isn't committed or shipped yet, and the design system is being migrated toward a newer colour model — described here as it actually is today.
Under the hood — for the technically-minded
How it's built
One script tag loads a tiny, zero-dependency tracker with no cookies and no local storage. Events are validated and enriched at the edge and stored so that duplicates are harmless and the data stays fast to query as it grows.
On top sits a fixed per-site overview plus a real drag-and-resize dashboard builder, where each widget is a query validated the same way on the client and the server — so the interface can't build something the backend won't answer.
The hard problems
Never losing an event you've already accepted
If the backend is briefly unavailable, an accepted event is safely held and retried until it lands, rather than dropped. 'Once we've received an event, it's never lost' is literally how it's built — and because the retry is safe to repeat, nothing is double-counted either.
Privacy that's structural, not a setting
There are no cookies and no cross-site identifier anywhere in the tracker, and visitor IPs are never stored raw — so the same person isn't followed across days or sites, by construction rather than by a toggle you can forget to switch on.
Analytics a person can actually shape
Rather than a fixed report, the dashboard builder lets you compose your own views from metrics, dimensions and filters, with sensible limits enforced the same way on both ends so the interface can't build something invalid.
Built with
- Cloudflare Workers
- Fastify
- Postgres
- React Router 7
Building something in this space?
Work with us →