Comparison · Self-hosted vs Self-hosted

Headcount vs Umami

Umami is $9/mo (Hobby). Headcount is a self-hosted alternative at $1.99/mo. Here's when each makes sense.

Try Headcount Free Headcount overview
HeadcountUmami
HostingSelf-hosted, your infraOpen source, self-hostable with Node.js and Postgres
Data locationYour server, your diskYour server (if self-hosted)
Free tier10,000 events/moPaid only
Pro pricing$1.99/mo$9/mo (Hobby)
DependenciesNone (single binary + SQLite)Docker, Postgres, etc.
Setup time~30 seconds15-30 minutes (self-host)
DashboardBuilt-in at /uiWeb UI
LicenseBSL 1.1Open source
When to use Headcount

Pick Headcount when you want simplicity and ownership.

Headcount is a single Go binary with embedded SQLite. Install it with one command, and you are running in under a minute. Your data stays on your server.

curl -fsSL https://stockyard.dev/headcount/install.sh | sh
Install Headcount Headcount docs

Umami makes sense when you need more.

Umami is one of the best open-source analytics tools with a beautiful UI. If you are comfortable running Node.js and Postgres, Umami self-hosted is free and excellent. If you want a single binary with no runtime dependencies, Headcount is simpler to deploy.
The trade-off

Teams evaluating Umami alongside Headcount tend to split on two axes: feature depth and data residency. Umami wins on feature depth — it is a mature product with integrations, mobile apps, and a dedicated support team. Headcount wins on residency — your user analytics data lives on your server in a SQLite file you can inspect, back up, and migrate without asking anyone for permission.

Architecturally, Headcount and Umami could not be more different. Umami runs on distributed cloud infrastructure with load balancers, managed databases, CDNs, and redundancy across availability zones. Headcount is a single process writing to a single file on a single disk. That sounds fragile until you realize that SQLite handles more concurrent readers than most web applications will ever need, and WAL mode means reads never block writes.

Umami can be self-hosted, but the experience differs significantly from Headcount. Open source, self-hostable with Node.js and Postgres With Headcount, self-hosting means downloading one file and running it. The gap in operational complexity matters most for small teams without dedicated DevOps staff.

Switching from Umami

The migration path from Umami depends on how much history you need to bring over. If you only need active records, a manual re-entry through Headcount's dashboard might be faster than writing a migration script. If you need full history, export from Umami and use Headcount's POST API to import records. Either way, the process is measured in hours, not weeks.

FAQ
Is Headcount an Umami alternative?
Both are self-hosted privacy-first analytics. Umami requires Node.js and Postgres. Headcount is a single Go binary with embedded SQLite.
Is Umami free?
Umami self-hosted is free and open source. Umami Cloud starts at $9/mo. Headcount free tier covers 10,000 events/mo.
Related

Headcount overview

Get started

Self-hosted user analytics in 30 seconds.

Single binary. Free to start. $1.99/mo for Pro.

Install Headcount All 150 tools for $29/mo →
Back to Headcount · Headcount vs Plausible · Headcount vs Google Analytics · Headcount vs Fathom · Headcount vs Matomo · Self-hosted user analytics · All 150 tools · Complete bundle