
Murre
Website analytics with a focus on privacy, useful reports and a fast, clean interface.
Overview
Murre is a website analytics product I'm developing for people who want a clear picture of how their site is doing. The aim is to make traffic, acquisition, goals and page performance easy to explore in one place, with privacy built into the collection model.
It began as a fresh rebuild of Pulse, with a new interface, tracker design and data architecture.
The reporting experience
A traffic spike becomes more useful when you can see where it came from, which pages people reached and how those pages performed. Murre is being designed around that kind of investigation: a quick overview, then enough detail to follow a question through the reports.
There are good analytics tools already. My focus is on making this one a pleasure to use regularly, with near-real-time updates, readable charts, useful filters and consistent controls across reports. Setup is intended to be a script or an npm package, with collection settings that can be changed without reinstalling the tracker.
Privacy and choice
The collection model starts with cookieless traffic and aggregate reports. Visitor estimates are scoped to a single site and day; the design avoids persistent visitor profiles, cross-site tracking and retained raw IP addresses. Murre will be hosted in the EU.
Sites need different things from analytics. Basic traffic reports should be useful from the first install, with goals and performance collection available when needed. Cookie-based attribution is planned as a separate option with consent controls, for sites that need to connect a later outcome to an earlier visit.
What the reports cover
- Traffic and pages: visitors, visits, pageviews, entry pages and the pages people reach
- Acquisition and audience: referrers, campaign tags, countries, devices and browsers
- Events and goals: actions a site chooses to measure, with traffic reporting still useful when no goals are configured
- Performance: loading, responsiveness and layout stability, with filters to investigate affected pages and audiences
- The broader preview also explores journeys, funnels, revenue, errors and bots; these are planned extensions beyond the first collection and reporting work
Behind the reports
The interface uses Next.js, React and TypeScript, with custom report components and a shared design system. The backend separates responsibilities: Go handles collection and reporting services, PostgreSQL holds account and operational state, and ClickHouse handles analytics. Supabase Auth handles authentication.
A lot of the groundwork is about what the numbers mean. The measurement model defines visits, daily visitor estimates and repeat goal completions explicitly. Reports also need to show when data is missing or too sparse to support a conclusion.
In development
The current frontend has twelve interactive report views using example data. I've worked through the collection model and backend architecture, and am testing the storage approach locally. The next stage is connecting the tracker, ingestion and reports into a working service. Murre is not yet available as a hosted product.




