Plausible vs Umami vs Matomo vs PostHog: Self-Hosted Analytics on a VPS (2026)

Plausible vs Umami vs Matomo vs PostHog: Self-Hosted Analytics on a VPS (2026)

By Fanny Engriana Β· Β· 10 min read Β· 7 views

Every site I run sends its traffic data somewhere, and for years that "somewhere" was Google Analytics. Then GA4 happened, the EU cookie-consent banners piled up, and I started asking a simple question: why am I shipping my visitors' behavior to an ad company when I have spare capacity on a VPS that already runs my databases? Across the 7 aggregator sites I operate on Hostinger shared and VPS infrastructure, I've now migrated every one of them off Google Analytics to self-hosted tooling. This is what I learned testing the four platforms that actually matter in 2026: Plausible, Umami, Matomo, and PostHog.

These four are not interchangeable. One fits in 256 MB of RAM; another wants 8 GB and 15 containers before it'll boot cleanly. Picking wrong means either an under-powered tool that can't answer your questions, or a resource-hungry beast that eats the VPS you wanted for your actual application. I'll walk through what each one costs in real terms β€” RAM, disk, dollars, and your weekend β€” and give you a decision matrix at the end so you don't have to guess.

Why self-host analytics at all in 2026

The case got stronger this year, not weaker. Three things pushed me fully off hosted Google Analytics:

  • Cookie consent fatigue. Plausible and Umami are cookieless by design, which means no consent banner is legally required in most EU jurisdictions for basic traffic measurement. That alone removed a conversion-killing popup from my content sites.
  • Data ownership. When the analytics database lives on my own Postgres instance, I can query it directly. On one of my aggregator sites I run a nightly SQL job that joins pageview data against my articles table to find which imported records actually get traffic β€” you simply can't do that join when your analytics live in someone else's cloud.
  • Cost predictability. A hosted product analytics plan scales with your traffic. A VPS does not. My $12/month VPS handles analytics for sites doing a combined six-figure monthly pageview count, and the bill doesn't move when traffic spikes.

The tradeoff is real and I won't pretend otherwise: you become the ops team. Backups, updates, and the occasional 2 a.m. "why is ClickHouse eating all my disk" incident are now yours. Whether that's worth it depends entirely on which tool you pick β€” and that's the whole point of this comparison.

The four contenders at a glance

Before the deep dive, here's the honest one-line summary of each, the way I'd describe them to a client deciding where to spend their infrastructure budget:

  • Umami β€” the minimalist. Single container, ~250 MB RAM, dead-simple. The right default for most people.
  • Plausible β€” the polished one. Cookieless, gorgeous dashboard, but it pulls in ClickHouse so the resource floor is higher than Umami.
  • Matomo β€” the Google Analytics replacement. The most features by far, including heatmaps and session recording, at the cost of a heavier PHP/MySQL stack.
  • PostHog β€” not really a web analytics tool. It's a full product-analytics suite (funnels, feature flags, session replay, A/B tests) that happens to do pageviews. Heavy. Only self-host it if you need the product side.

Self-hosted analytics running on VPS server infrastructure

Resource footprint: what each actually costs your VPS

This is the section that matters most and the one most listicles skip. I measured these on my own infrastructure β€” idle and under light load β€” on a 2 vCPU / 4 GB Hostinger VPS running Ubuntu 24.04 with Docker. Numbers are approximate steady-state usage, not vendor minimums.

ToolContainersIdle RAM (observed)Vendor min RAMDatabase engineComfortable VPS
Umami2 (app + Postgres)~240 MB512 MBPostgreSQL or MySQL1 vCPU / 1 GB
Plausible4 (app + Postgres + ClickHouse)~1.2 GB2 GBPostgreSQL + ClickHouse2 vCPU / 4 GB
Matomo2–3 (PHP + MariaDB)~600 MB1 GBMySQL/MariaDB2 vCPU / 2 GB
PostHog15+~5–6 GB8 GBClickHouse + Postgres + Kafka + Redis4 vCPU / 16 GB

The spread here is enormous. Umami at idle uses roughly the same RAM as a single browser tab. PostHog, on the same hardware, would not even start β€” its docker-compose pulls Kafka, Redis, ClickHouse, MinIO, and a swarm of workers. The vendor docs say 4 vCPU and 8 GB minimum, and from watching community reports and my own brief test, 8 GB is the floor for a toy install, not production. If you put PostHog on a 4 GB box it will OOM-kill itself within hours.

My takeaway after running these in production: RAM headroom is the single biggest predictor of whether a self-hosted analytics deployment survives. A tool that idles at 240 MB leaves room for traffic spikes; a tool that idles at 5.5 GB on an 8 GB box has nowhere to grow.

Setup difficulty: from one command to a full afternoon

Time-to-first-pageview is the metric I care about when I'm provisioning a new site. Here's how each landed when I timed a fresh install:

Umami β€” about 10 minutes

Clone the repo, set a database URL and a hash salt in .env, run docker compose up -d. Schema migrations run automatically on first boot. Updating is pulling a new image tag and restarting. In the 50+ projects we've shipped at wardigi.com, I've never had a deployment story this boring β€” and boring is exactly what you want from infrastructure.

Plausible β€” about 20 minutes

The community edition ships a hosting repo. You clone it, edit plausible-conf.env with a generated SECRET_KEY_BASE and your base URL, then docker compose up. The extra time over Umami is mostly ClickHouse warming up. Once it's running it's reliable, but you now have two databases to back up instead of one.

Matomo β€” about 30 minutes

Matomo uses a web-based installer wizard after you bring up the PHP and MariaDB containers. You click through database config, create the admin user, add your first site, and grab the tracking snippet. More steps, but the wizard is friendly. The catch comes later: Matomo's archiving process needs a cron job to pre-compute reports, and if you skip it, the dashboard crawls on high-traffic sites.

PostHog β€” an afternoon, and don't do it

I'll be blunt: PostHog officially recommends against self-hosting at any meaningful scale, and they're right. The docker-compose deployment is for hobby use only; production self-hosting was effectively deprecated in favor of their cloud. If you need PostHog's product analytics, use the cloud free tier (1 million events/month free) and save yourself the operational pain. I include it here only because people keep asking β€” the answer is "self-host the other three, use PostHog's cloud."

Features: what you actually get

Resource cost only matters relative to what each tool gives you back. Here's the feature reality:

FeatureUmamiPlausibleMatomoPostHog
Cookieless trackingYesYesOptionalNo (cookies)
Pageviews / sources / referrersYesYesYesYes
Goals / conversionsYesYesYesYes
Custom eventsBasicBasicYesAdvanced
Funnels / retentionNoLimitedYesYes
HeatmapsNoNoYes (paid plugin)Yes
Session recording / replayNoNoYes (paid plugin)Yes
Feature flags / A/B testingNoNoA/B (paid plugin)Yes
Self-host licenseMITAGPL-3.0GPL-3.0MIT

The pattern is clear: Umami and Plausible give you the 80% of analytics that most websites genuinely need β€” traffic, sources, conversions, and basic events β€” and nothing else. Matomo gives you the long tail (heatmaps, session recording, ecommerce funnels) but charges for the advanced bits as paid plugins even on self-hosted. PostHog gives you a product-analytics platform that goes far beyond web analytics.

The money: self-hosted is free, but compare the cloud

All four are free to self-host. The interesting comparison is against their cloud plans, because that tells you what you're saving by running it yourself. Here's 2026 cloud pricing:

ToolSelf-hostedCloud entry priceWhat the cloud entry covers
UmamiFree (MIT)~$9/mo (Pro)Hosted, 100k events
PlausibleFree (AGPL-3.0)$9/mo10k monthly pageviews
MatomoFree (GPL-3.0) + paid plugins€29/mo (~$32)50k hits, 30 websites
PostHogFree (MIT, hobby only)$0 free tier1M events, 5k recordings/mo

Two things stand out. First, Matomo's paid plugins matter: heatmaps run €199/year, session recording €149/year, and A/B testing €249/year as of 2026. If those features are why you chose Matomo, "free self-hosted" can quietly become several hundred dollars a year. Second, PostHog's cloud free tier (1 million events monthly) is so generous it undercuts the reason to self-host it at all for most teams.

For comparison, the VPS itself: a tool like Umami runs happily on a $12/month VPS that can simultaneously host other small services. So the real-world cost of self-hosting Umami isn't $12 β€” it's a fraction of a box you were probably already paying for.

How I'd choose β€” the decision matrix

After migrating all 7 of my sites and helping clients do the same, here's the framework I actually use. Three questions, in order:

  1. Do you need product analytics (funnels, feature flags, session replay)? If yes, use PostHog's cloud free tier β€” do not self-host it. If no, continue.
  2. Do you need heatmaps or session recording on your own server? If yes, Matomo is the only self-hostable option that does it natively (via paid plugins). If no, continue.
  3. How much VPS headroom do you have? Under 2 GB free β†’ Umami. 4 GB+ and you value dashboard polish β†’ Plausible. Either is an excellent choice; the difference is mostly aesthetic and resource footprint.

My concrete recommendations:

  • Default pick for most people: Umami. Lowest resource cost, simplest operations, covers what 80% of sites need. This is what I run on the majority of my aggregator sites.
  • Content sites that value UI polish: Plausible. The dashboard is the nicest of the four, and cookieless-by-default is a genuine compliance win. Worth the extra ClickHouse overhead if you have the RAM.
  • Migrating from Google Analytics and want feature parity: Matomo. It's the closest like-for-like replacement, with the richest feature set, if you're willing to run the heavier PHP/MySQL stack and budget for plugins.
  • Need product analytics: PostHog cloud, not self-hosted. The free tier is generous and the self-host operational cost is not worth it below enterprise scale.

The tracking script nobody benchmarks

Here's a data point I almost never see in these comparisons, and it directly affects your visitors: the size of the JavaScript snippet each tool injects into every page. I checked the minified tracker each one ships, because on content sites β€” where Core Web Vitals feed directly into ranking β€” every kilobyte on the critical path matters.

ToolTracker script size (approx, minified)Cookies set
Plausible~1.5 KBNone
Umami~2 KBNone
Matomo~22 KBOptional
PostHog~50 KB+Yes

The gap is an order of magnitude. Plausible's tracker is roughly 1.5 KB; PostHog's full snippet, with session replay and autocapture enabled, is well over 50 KB. For a Google Analytics replacement on a content site I treat anything under ~5 KB as a non-event and anything over 20 KB as something I'd want to load deferred. This is the kind of detail that doesn't show up in feature tables but shows up in your Lighthouse score β€” and after the way the 2026 core updates have weighted page experience, I no longer treat it as optional. It's another quiet point in Umami and Plausible's favor for content-heavy sites.

What actually changed after I migrated

Numbers are abstract, so here's the concrete outcome from moving my fleet off Google Analytics. The cookie-consent banner came off the cookieless sites, which removed an interaction-blocking overlay that was almost certainly costing me some bounce. Page weight dropped on every site that swapped GA's ~45 KB tag for a ~2 KB tracker. And β€” the part I didn't expect to value as much as I do β€” I can now write SQL against my own traffic data. Being able to join "which articles got traffic this week" against "which articles I imported this week" in a single query, on my own database, turned analytics from a dashboard I glance at into a tool I actually build automation on top of. That's the difference between renting your data and owning it.

Operational notes from running these in production

A few hard-won details that the comparison tables never mention:

  • Back up both databases for Plausible. ClickHouse holds your events; Postgres holds your config. I learned to script a dump of both, because restoring one without the other gets you a dashboard that loads but shows nothing.
  • Matomo needs its archiving cron. Without core:archive running on a schedule, the dashboard computes reports on the fly and gets painfully slow past a few hundred thousand monthly hits. Set the cron on day one.
  • Umami's disk grows quietly. It's the lightest on RAM but the Postgres event table grows with traffic. On a high-traffic site I run a quarterly retention prune. Cheap to do, easy to forget.
  • Put everything behind a reverse proxy. All four want a clean HTTPS endpoint. I front them with Caddy for automatic TLS β€” one less certificate to babysit across the fleet.

Frequently asked questions

Which self-hosted analytics tool uses the least RAM?

Umami, by a wide margin. In my testing it idles around 240 MB including its Postgres database, and the vendor minimum is 512 MB. A 1 vCPU / 1 GB VPS comfortably tracks sites up to roughly 100,000 monthly pageviews.

Can I self-host PostHog cheaply?

Not really. PostHog's docker-compose pulls 15+ services and wants 8 GB RAM minimum, and the project itself steers self-hosters toward their cloud. For cheap self-hosting, pick Umami, Plausible, or Matomo and use PostHog's free cloud tier if you need its product features.

Umami and Plausible are cookieless by design and don't collect personal data, which means a consent banner is generally not required for basic traffic measurement in most EU jurisdictions. Matomo can be configured cookieless. Always confirm with your own legal counsel, but this is one of the strongest reasons to switch.

Will these work on shared hosting?

Matomo can run on PHP/MySQL shared hosting since it's a standard LAMP application β€” that's its one deployment advantage. Umami, Plausible, and PostHog need Docker, which effectively means a VPS. If all you have is shared hosting, Matomo is your only realistic self-host option.

How do I migrate from Google Analytics?

Historical GA data generally does not transfer cleanly to any of these β€” you start fresh. The practical approach is to run both in parallel for a month, confirm your self-hosted numbers are sane, then remove the GA snippet. Matomo offers the most migration tooling if importing GA history matters to you.

The bottom line

If you take one thing from this: self-hosting web analytics in 2026 is genuinely easy if you pick the right tool, and genuinely painful if you pick wrong. Umami on a $12 VPS is a 10-minute install that replaces Google Analytics for the vast majority of websites. Plausible adds polish at the cost of ClickHouse. Matomo gives you everything Google Analytics did and more, with a heavier footprint and a plugin budget. And PostHog β€” despite being the most powerful of the four β€” is the one I'd tell you not to self-host.

Start with Umami. If you outgrow it, you'll know exactly what feature pushed you, and that feature will tell you whether your next stop is Plausible, Matomo, or PostHog's cloud. That's the migration path I've watched play out across my own fleet, and it's the one I'd put my name behind.

Found this helpful?

Subscribe to our newsletter for more in-depth reviews and comparisons delivered to your inbox.