TCO Calculator
Log scale, 10k–50M. Pageviews and custom events both count toward Cloud billing tiers.
Default €0/hr keeps the headline honest — but if your time has a price, set it.
The calculator above computes everything in your browser — nothing is sent anywhere, no cookies, no email gate. Drag the events slider, pick your tool and box, and the 3-line ledger plus break-even verdict update live. The numbers come from a hand-maintained pricing snapshot (Hetzner CX line + Plausible/Fathom Cloud, 2026-Q2), not a live API.
Want the reasoning behind every line? Read what self-hosted analytics really costs — the explainer that walks the VPS, backups, maintenance time, and the break-even vs Plausible and Fathom Cloud.
3-year total cost of ownership matrix
Prefer a static reference? This matrix covers the same ground without the slider. Self-host figures assume a Hetzner CX22 (€3.79/mo) or CX32 (€6.80/mo) plus a flat off-box backup line; Cloud figures use the lowest plan that fits the volume.
| Volume (events/mo) | Plausible CE self-host | Plausible Cloud | Matomo CE self-host | Umami (Vercel+Neon) | GoatCounter (binary) |
|---|---|---|---|---|---|
| 10k | €252 | €433 (Growth) | €252 | €0 | €0 |
| 100k | €252 | €1,052 (Growth) | €252 | ~€0 | €0 |
| 1M | €252 | €3,220 (Growth) | €252 | ~€144 | €252 |
| 5M | €252 | €7,553 (Growth) | €490 (CX32) | ~€720 | €252 |
| 10M | €490 (CX32) | custom quote | €1,180 (CX42) | self-host required | €490 |
3-year totals in EUR (USD Cloud prices converted at 1 USD = €0.86, ~Jun 2026). Self-host = VPS €/mo × 36 + €3.20/mo backups × 36. Cloud = lowest Growth-plan tier that fits the volume × 36 months. Excludes one-time setup labour (~4 hours per tool) and your own maintenance time — toggle that line in the calculator above.
When self-host wins
- Above ~100k events/mo — the flat VPS bill beats every Cloud tier once you climb past the entry plan, and the gap widens fast.
- EU residency required — Hetzner Falkenstein/Helsinki keeps data in the EU; Cloud plans trade DPA simplicity for vendor lock-in.
- Need raw SQL access — Cloud plans don't expose ClickHouse / MariaDB to you; self-host does.
When Cloud wins
- Under ~10k events/mo — the entry Cloud plan is a rounding error and you skip all the ops.
- No DevOps capacity — you don't have someone to babysit Docker / MariaDB / backups.
- Need vendor-managed updates — Cloud rolls forward automatically; CE you upgrade yourself.