Plausible vs Umami vs PostHog: the self-hosted cost
Run Umami if you want pageviews and referrers and nothing else. It needs Node.js 18.18 or newer and PostgreSQL 12.14 or newer, and nothing else (docs.umami.is, read 2026-09-09). Run Plausible if you want goals, custom events and a mature cookie-free dashboard, and you accept running ClickHouse alongside PostgreSQL. Run PostHog only if you need session replay and feature flags on your own hardware: its install docs ask for "4 vCPU, 16GB RAM, and more than 30GB storage", while PostHog Cloud is free to 1M events a month.
Every requirement, licence and price below was read from the vendor's own documentation on 2026-09-09. RAM figures labelled measured came from our own Docker host on the date shown, not from a vendor claim.
Which self-hosted analytics tool should I run?
| Tool | Best for | What the project publishes as its requirement | Idle RAM we measured | Licence |
|---|---|---|---|---|
| Umami | Pageviews, referrers, one small dashboard | Node.js ≥ 18.18, PostgreSQL ≥ 12.14. No RAM figure published | 400 MB, 2026-05-02 (v2.14.0 + PostgreSQL 16 + Caddy) | MIT |
| Plausible | Goals, custom events, UTM tracking, GA import | "At least 2 GB of RAM is recommended for running ClickHouse and Plausible without fear of OOMs"; CPU must support SSE 4.2 or NEON | 1.8 GB, 2026-05-02 (v2.1.4 stack, not re-measured on v3.2.1) | AGPLv3 |
| PostHog | Session replay, feature flags, product analytics | "4 vCPU, 16GB RAM, and more than 30GB storage" | Obsolete. Measured 2.1 GB on the May 2026 hobby stack; treat PostHog's own 16 GB as the number | MIT, except the ee/ directory |
The SSE 4.2 line is the one that catches people. ClickHouse will not boot without it, and some oversubscribed budget instances do not expose it. Run grep -o 'sse4_2' /proc/cpuinfo | head -1 on the box before you commit to Plausible; an empty result means no amount of RAM will help.
If you cannot name a question you need answered beyond "how many people visited, and from where", pick Umami and stop reading.
What does each one actually cost per month?
The licence is free in all three cases. The server is not, and it is the whole cost.
| Stack | VPS tier its requirements imply | Liquid Web self-managed list price | Hosted equivalent |
|---|---|---|---|
| Umami | 4 GB | $17/mo subject to change · verified 2026-09-09 | Umami Cloud, free tier exists |
| Plausible | 4 GB | $17/mo subject to change · verified 2026-09-09 | Plausible Cloud Starter, $9/mo for 10k monthly pageviews on one site |
| PostHog | 16 GB | $90/mo subject to change · verified 2026-09-09 | PostHog Cloud, free to 1M events, 5k recordings and 1500 survey responses a month |
Liquid Web advertises both tiers at half price with the terms stated as "Save 50% for 2 mos", so the 4 GB tier bills $8.50 and the 16 GB tier $45 for the first two months only. The list prices above are what you pay from month three.
PostHog is the case where self-hosting costs more than the hosted product. Ninety dollars a month of server, against a cloud tier that is free until you cross a million events. PostHog says so itself: "For most companies we'd recommend PostHog Cloud, which comes with a very generous free tier" (posthog.com/docs/self-host/open-source/disclaimer, read 2026-09-09). Self-host PostHog for data residency or because a contract forbids US-hosted event data. Do not self-host it to save money, because you will not.
Umami's Cloud free tier is real but we could not read the event allowance: umami.is/pricing renders its plan table client-side and returned no figures to us on 2026-09-09. Check it there before you assume self-hosting wins on price.
Why does PostHog need 16 GB when Umami needs 400 MB?
The three tools store events in three different ways, and the storage layer decides the box.
- Umami is a Node app in front of PostgreSQL. Two containers, one database engine, no analytical store.
- Plausible keeps application state in PostgreSQL and the event stream in ClickHouse. ClickHouse is the reason its own README recommends "at least 2 GB of RAM", and the reason our 2026-05-02 test idled at 1.8 GB rather than a few hundred megabytes.
- PostHog ships an entire ingestion pipeline in one Compose file, which is why its docs ask for a 4 vCPU / 16 GB machine and warn that "everything runs on a single machine".
The practical rule: the moment a tool brings a columnar database with it, your VPS bill roughly doubles. That is the trade you are making for session replay and cohort queries.
Does the self-hosted version have an event cap?
No. None of the three meters your events when you run them yourself. What PostHog publishes instead is a scaling ceiling, not a licence limit: "Everything runs on a single machine, and thus is unlikely to scale past a couple 100ks events without significant effort in scaling" (posthog.com/docs/self-host/open-source/disclaimer, read 2026-09-09).
Corrected 2026-09-09. This page previously said PostHog's free open-source tier was "capped around 100k events/mo". That was wrong twice over. There is no enforced cap on the self-hosted build, and the monthly allowance people remember belongs to PostHog Cloud, which is a separate product. PostHog's own install checklist asks whether you expect to ingest more than 300k events, 1k recordings or 300k /flags API calls, and steers you to Cloud if the answer is yes.
When is hosted analytics the better call?
Often, and the vendors say so more plainly than most roundups do.
- One site under 10k monthly pageviews. Plausible Cloud Starter is $9/mo. The 4 GB VPS it would run on is $17/mo before you have spent a minute patching it. Self-hosting loses on money alone at that size.
- Any PostHog deployment under 1M events a month. The Cloud free tier covers it. See the arithmetic above.
- You will want support. PostHog states that "self-hosted customers cannot receive commercial support from PostHog. Because hosting environments can vary so widely, we cannot answer tickets and cannot help debug." That is a real difference when ClickHouse wedges at 2am.
- You need the premium Plausible features. Marketing funnels, user journeys, ecommerce revenue goals, SSO and the sites API are Cloud-only and are not in Community Edition (plausible.io/docs/self-hosting, read 2026-09-09). CE also gets releases roughly twice a year against Cloud's multiple times a week, and ships basic rather than advanced bot filtering.
- Nobody on the team already runs Docker in production. Plausible's own docs call self-hosting "a real commitment" and ask you to treat the instance "as infrastructure you maintain, not software you install once". They are right, and they are arguing against their own free product when they say it.
If your reason for leaving Google Analytics is privacy or data ownership rather than cost, all three hosted products already solve it. Self-hosting is the answer to a narrower question: who physically holds the event data.
What about Matomo?
Matomo is the fourth name that belongs in this comparison, and we have no deployment guide for it yet. It is the only one of the four that is a full Google Analytics replacement in feature depth rather than a deliberate subset.
Matomo On-Premise is "free to download" and stays that way, under GPL v3 (matomo.org, read 2026-09-09). Matomo 6.0.0 requires PHP 8.1 or newer with MySQL 8.0+ or MariaDB 10.6+. Matomo's own sizing guidance is the most specific of the four: 2 CPU, 2 GB RAM and a 50 GB SSD up to 100,000 monthly pageviews, rising to 4 CPU, 8 GB RAM and 250 GB at one million.
Pick Matomo if you want GA-style segments and raw data access and you already run a PHP and MySQL stack. Pick Umami if adding PHP to your stack is the thing you were trying to avoid.
Guides in this category
Each guide carries a tested Docker Compose file, the failure modes we hit, and a measured footprint with the date it was taken.
- Umami — PostgreSQL and Caddy, 400 MB idle, the simplest of the three to keep running
- Plausible — the v3 Compose stack, the ClickHouse RAM floor, and the upgrade that breaks forked compose files
- PostHog — the hobby stack, what "officially unsupported" means in practice, and when to stop and use Cloud
Before you provision anything, the self-hosting guide covers backups, reverse proxy and update policy, and the self-hosted software index prices the other seven categories the same way this one is priced.
No. The self-hosted build does not meter events. PostHog publishes a hardware ceiling instead: its open-source disclaimer states that everything runs on a single machine and is unlikely to scale past a couple of hundred thousand events without significant scaling work (read 2026-09-09). The monthly allowance people remember is PostHog Cloud's free tier, which is a different product.
Umami. We measured 400 MB idle on 2026-05-02 running Umami v2.14.0 with PostgreSQL 16 and Caddy on a 4 vCPU Docker host. Plausible measured 1.8 GB on the same host because it adds ClickHouse. PostHog documents a 16 GB minimum, so it is not in the same class.
Not at small volumes. Plausible Cloud Starter is $9/mo for 10k monthly pageviews on one site, and the 4 GB VPS you would self-host on is $17/mo at Liquid Web's self-managed list price (both checked 2026-09-09). Self-hosting starts winning when you are tracking several sites or high traffic, since Community Edition has no volume pricing at all.
No. Marketing funnels, user journeys, ecommerce revenue goals, SSO and the sites API are Cloud-only, per plausible.io/docs/self-hosting read on 2026-09-09. Community Edition also ships basic rather than advanced bot filtering, and receives updates about twice a year against Cloud's multiple releases per week.
Only if the CPU exposes SSE 4.2 or NEON. Plausible Community Edition bundles ClickHouse, and its README states the instruction set is required. Some heavily oversubscribed budget instances do not expose it, and ClickHouse then fails with an illegal-instruction error at boot. Check with grep -o 'sse4_2' /proc/cpuinfo before you buy.