5,858 stars · EUPL-1.2 (modified) - the LICENSE file states 'a slightly modified version of European Union Public License (EUPL) 1.2', changing the appendix that lists compatible licences; count.js is ISC · v2.7.0 (2025-12-15, the release title carries the year and ungh agrees) · Track this in Scout
Web analytics that records a visit by hashing non-identifying details rather than storing an identifier, so it keeps no personal data and needs no cookie banner.
▶Repo detailsthe review · specs · pros & cons · install
What it is
GoatCounter is a web analytics program written in Go. A visit is recorded by hashing a few non-identifying details rather than by storing an identifier, so the same person on the same day counts once without a record that can be traced back.
What it is good for. Anyone who put a large analytics script on a small site, then found themselves adding a consent banner to justify it. It is also for anyone who only ever looked at two numbers — how many people, and which page — and never used the other four hundred.
- No cookies and no personal data, which removes an entire legal conversation for a small site.
- The counting script is about 3 KB, against roughly fifty times that for the large hosted products, so pages stay fast.
- It runs on SQLite, a database that is just a file, so there is nothing else to install or back up separately.
- The licence is EUPL-1.2 with a modification to its compatible-licence appendix, written by the author. EUPL is a real open-source licence and this is the third project in this archive to use it, but a modified licence is a licence somebody has to read.
- The newest release is v2.7.0 from 15 December 2025 while code landed on 20 July 2026, so a release is nine months old. That is a release habit, not a sign of trouble.
- It is deliberately simple. There are no funnels, no cohorts and no session recordings, and no plan to add them.
umami-software/umami38,976 stars, covered in Edition 10; more reports and a nicer interface, but it wants PostgreSQL or MySQL rather than a file.
Track this in Scout- plausible/analytics
29,181 stars, the best-known privacy-first analytics product, with a heavier self-hosted install built on Elixir and ClickHouse.
Track this in Scout
medama-io/medama642 stars, covered in Edition 23; smaller and newer than GoatCounter, with the same no-cookies position.
Track this in Scout
curl -fsSL -o goatcounter \ https://github.com/arp242/goatcounter/releases/latest/download/goatcounter-linux-amd64 chmod +x goatcounter ./goatcounter db create site -vhost stats.example.com -user.email you@example.com ./goatcounter serve -listen :8081 -tls http
