Plausible Analytics
Two-person analytics on Elixir, Postgres, then ClickHouse
Plausible is privacy-friendly web analytics built by a tiny team in the EU. They started with Elixir and PostgreSQL, hit performance walls at real traffic, and added ClickHouse on a couple of servers — still no hyperscaler cosplay.
2019–early 2020
Naive Postgres, on purpose
Hosted EU servers
Elixir
Phoenix
PostgreSQL
Founder Uku Taht kept the first stats engine deliberately simple: write pageviews to PostgreSQL and aggregate at query time. Donald Knuth’s “premature optimization” quote was the permission slip.
That worked until it did not — but it got them paying customers and a product people could self-host later without a PhD in distributed systems.
Lesson
Row-by-row Postgres aggregation is a valid v1 for analytics if your v1 is “replace Google Analytics for small sites,” not “beat Snowflake.”
April 2020
Hacker News hug exposes the bottleneck
Elixir
Phoenix
PostgreSQL
CDN
A blog post about ditching Google Analytics hit the front page of Hacker News. April brought 272 signups — more than the previous nine months combined — and dashboard loads of 5–6 seconds on the demo graph.
Enterprise prospects asked for plans above their largest tier (~10M pageviews/month). Taht started evaluating column-oriented OLAP instead of pre-aggregating every possible chart upfront.
Lesson
Traffic spikes are free load tests. Fix the database when graphs take six seconds, not when a consultant sells you a mesh.
May 2020–today
ClickHouse on a few boxes, Docker for self-hosters
Docker
Elixir
Phoenix
ClickHouse
PostgreSQL
Hetzner Cloud
ClickHouse landed in production in May 2020; demo graph loads dropped from ~6s to ~500ms. MRR crossed $1k that same month. Docker support followed so the community could self-host Postgres + ClickHouse together.
Later infrastructure posts describe plain Docker on Hetzner, ingesting over a billion events per month from tens of thousands of sites — scaling vertically first, horizontal scale-out as a planned next step, not day-one Kubernetes.
Lesson
Swap the analytics store when query patterns change, not your entire product philosophy. Plausible stayed Elixir, stayed small-team, stayed EU-hosted.
Sources
- Plausible — Building Plausible: April 2020 recap
- Plausible — Building Plausible: May 2020 recap
- Plausible — Infrastructure engineer job post (stack + scale context)
Facts drawn from public engineering posts and interviews. Numbers are approximate where sources disagree — we're stack advisors, not historians.
Get the right stack for YOUR scale — not theirs
Plausible Analytics's stack made sense for Plausible Analytics. Yours won't — and copying theirs is how you end up with a $4k/month bill and three unused Kubernetes clusters.
Plan my stack — free