How to self-host Plausible Analytics in 2026

Plausible is the privacy-friendly Google Analytics replacement. The Community Edition is free — you pay only for the server. Three ways to self-host, including a 3-minute deploy on livemy.app at $20/month flat.

Dmytro Chervonyi

Dmytro Chervonyi

Co-founder & CMO, livemy.app

Last updated

9

min.

Reading time

TABLE OF CONTENTS

item

How to self-host Plausible Analytics (2026 guide)

AI Summary

Plausible Analytics is the open-source, privacy-friendly alternative to Google Analytics — 22,000 GitHub stars, no cookies, GDPR-compliant by default, scriptable in under 1 KB. Plausible Cloud starts at $9/month for 10,000 monthly pageviews and scales to $50+/month for popular sites. The self-hosted Community Edition is free — you pay only for the server, around $5–20/month on a VPS or $20/month on livemy.app. The catch: Plausible needs both PostgreSQL (user accounts) and ClickHouse (event storage), so the Docker setup is heavier than n8n or Ghost — minimum 4 GB RAM recommended. This guide walks the three paths, the environment variables that decide whether your tracking works, and why ClickHouse compression means even high-traffic sites stay surprisingly small on disk.

What Plausible is and why people self-host it

Plausible is open-source web analytics built around three ideas: no cookies, no personal data collected, scriptable in under 1 KB. The open-source version (Community Edition) has been hovering around 22,000 GitHub stars and is the de facto Google Analytics alternative for privacy-focused teams.

Three reasons to self-host instead of using Plausible Cloud.

Plausible Cloud charges by pageview volume. Plans start at $9/month for 10,000 monthly pageviews, $19 for 100K, $69 for 1M. Self-hosted Community Edition has no pageview cap — you pay only for the server.

Data sovereignty. Self-hosted means analytics data lives on your server, not Plausible's. Strong fit for GDPR-conscious EU companies, healthcare, fintech, anything where customer data crossing third-party borders is a problem.

Per-site fees disappear at scale. Cloud bills extra for tracking multiple domains; self-hosted instance tracks unlimited sites at the same flat cost.

Three ways to self-host Plausible

Path A: Docker Compose on your own VPS

Plausible's docs ship an official docker-compose.yml with all three required services: the Plausible web app, PostgreSQL (user accounts and site config), and ClickHouse (event storage). Spin up a VPS with at least 4 GB RAM ($10–20/month at DigitalOcean, Hetzner). Drop the compose file. Configure environment variables. Set up nginx + free SSL setup for SSL.

The good. Cheapest path. Full control of both databases.

The catches. ClickHouse needs tuning at scale; PostgreSQL needs occasional maintenance; nginx and SSL are on you. Realistic time-to-first-deploy: 1–3 hours.

Path B: Managed Docker host (Coolify, Dokploy)

Coolify ships Plausible as a one-click template. Install Coolify on a 4+ GB VPS, deploy Plausible, point your domain. SSL, reverse proxy, both databases wired up for you.

When this works. You want self-hosted economics without writing the Docker Compose yourself.

Path C: livemy.app one-click deploy

Pick the Plausible template, point your domain, ship. livemy.app provisions both PostgreSQL and ClickHouse, handles SSL, applies daily backups for both databases.

The good. Three-minute deploy. $25/month flat ($20 Maker + $5 backups). No database tuning needed for small-to-medium sites.

The catches. For very high-traffic sites (10M+ pageviews/month), you'll want to scale up to a tier with more RAM. ClickHouse appetite for memory grows with cardinality.

From zero to Plausible on livemy.app (about 3 minutes)

Step 1: Sign up at livemy.app, pick Maker

Go to livemy.app, click Start free. Pick Maker ($20/month) — always-on, no sleep on idle. Free-tier sleep would interrupt event ingestion, which means missing pageviews.

Step 2: Deploy from the Plausible template

In the dashboard, click New projectTemplatePlausible. livemy.app pulls the official Plausible Community Edition image plus the PostgreSQL and ClickHouse instances Plausible needs.

Step 3: Configure the four essential environment variables

Under Project Settings → Environment Variables:

  • BASE_URL — the full public URL with https:// (e.g., https://analytics.yourdomain.com)

  • SECRET_KEY_BASE — a 64-character random string (generate with openssl rand -base64 48 or similar)

  • DATABASE_URL — PostgreSQL connection (auto-populated by livemy.app template)

  • CLICKHOUSE_DATABASE_URL — ClickHouse connection (auto-populated)

Optional but recommended: SMTP variables for email notifications (signup confirmations, weekly reports). Mailgun, Postmark, or Resend all work.

Step 4: Deploy and complete the Plausible setup

livemy.app spins up all three containers (Plausible + Postgres + ClickHouse). Typical deploy time: 3–5 minutes (longer than the n8n self-hosting guide self-hosting guide self-hosting guide because ClickHouse takes ~30 seconds to initialize). When status is Live, visit your URL and complete the Plausible signup wizard. Add your first site, get the tracking script.

Step 5: Point your domain and install the tracker

Add the custom domain on livemy.app, update DNS, wait for SSL. Update BASE_URL to the new domain and redeploy — Plausible uses it for the tracking script's data source URL.

Copy the Plausible tracking snippet from the dashboard, paste it into your website's <head>. Verify in the Plausible dashboard's Realtime view that pageviews are landing.

Five things that quietly break self-hosted Plausible

1. ClickHouse runs out of memory at scale

ClickHouse loves RAM. The 4 GB minimum holds for moderate traffic; high-cardinality dashboards (lots of custom events, many sites tracked at once) can spike memory and crash the container.

Fix. Scale up the host's RAM, or set ClickHouse's max_memory_usage in config.xml to limit per-query usage. livemy.app's Maker covers most sites; for very large deployments, scale up the tier.

2. BASE_URL mismatch breaks the tracking script

Plausible's tracking script POSTs events to BASE_URL/api/event. If BASE_URL still says localhost or the temporary livemy.site subdomain after you moved to a custom domain, the tracker silently fails.

Fix. Update BASE_URL to the final public URL with https:// after every domain change. Redeploy.

3. SECRET_KEY_BASE changes invalidate all sessions

Plausible signs session cookies with SECRET_KEY_BASE. Change the value and every signed-in user gets logged out and shared dashboard links break.

Fix. Set SECRET_KEY_BASE once at first deploy, save it somewhere secure, never change it without a planned re-login flow.

4. Ad blockers block the default /js/plausible.js path

Some aggressive ad blockers block the default tracker path because it matches their analytics patterns. The result: a Plausible install that under-counts traffic from a meaningful slice of visitors.

Fix. Proxy the tracking script through your own subdomain (Plausible docs cover this for Cloudflare, Vercel, Nginx). The script becomes /stats/script.js or similar on your own domain and bypasses most blocklists.

5. Backups must cover both PostgreSQL and ClickHouse

Plausible's two databases hold complementary data — a backup of one without the other is a partial restore that won't work cleanly.

Fix. Snapshot both. livemy.app's $5/month backups add-on covers both databases automatically. For manual setups, schedule pg_dump + a ClickHouse snapshot in cron.

Cost: Plausible Cloud vs self-hosted

Honest numbers for a site doing 100,000 pageviews per month with one tracked domain.

Plausible Cloud: $19/month at 100K pageviews tier. Scales up as traffic grows.

Self-hosted on a $10 VPS: $10/month plus your time. Unlimited pageviews, unlimited tracked sites.

Self-hosted on livemy.app: $25/month flat ($20 Maker + $5 backups). Unlimited pageviews, unlimited tracked sites, managed databases.

At 100K pageviews, the math is roughly even between Plausible Cloud and livemy.app. The crossover is around 250K pageviews — above that, self-hosted wins. For agencies tracking many client sites, self-hosting wins immediately because Plausible Cloud charges per site.

ClickHouse compression is roughly 1 GB per 10 million pageviews — even a popular site stays small on disk for years.

FAQ

Is self-hosted Plausible GDPR-compliant by default?

Yes. Plausible doesn't use cookies or collect personal data — the privacy-by-design architecture works the same self-hosted as on Plausible Cloud. Self-hosting adds the data-sovereignty benefit (analytics never leaves your server), which strengthens the GDPR case further.

Can I migrate from Plausible Cloud to self-hosted?

Yes, but with a caveat: there's no built-in event export between the two. Sites and dashboards can be recreated on the self-hosted instance; historical event data stays on Plausible Cloud unless you export via the Stats API. Most teams accept the gap and start fresh on self-hosted.

Why does Plausible need two databases?

PostgreSQL handles relational data — user accounts, site configurations, billing if you're running a multi-tenant install. ClickHouse handles event storage — columnar, blazing-fast aggregations across millions of pageviews. The two together is how Plausible delivers fast dashboards on large datasets.

How much traffic can a self-hosted Plausible handle?

On a 4 GB RAM VPS or livemy.app Maker, comfortably 1–3 million pageviews per month. ClickHouse scales well past that with more RAM and CPU. The hard limit is the server, not Plausible.

Can I track multiple websites with one self-hosted Plausible?

Yes — a single instance tracks unlimited sites at the same flat cost. This is the big win over Plausible Cloud for agencies and multi-brand companies. Add a site in the dashboard, paste the tracking script, done.

Is there a Plausible Cloud feature I'd lose self-hosting?

Funnels and Goals are now available in Community Edition. Email reports work if you wire up SMTP. The biggest gap is automatic version upgrades — Cloud is always on the latest version; self-hosted requires pulling new Docker images. livemy.app offers opt-in auto-update on the Plausible template.

Self-host Plausible — own your analytics, lose the pageview cap

If you're hitting Plausible Cloud's pageview tiers or tracking multiple sites, self-hosting flattens the bill. The cheapest path is a $10 VPS. The fastest path is livemy.app's Plausible template.

→ Start free on livemy.app · Plausible template with Postgres + ClickHouse provisioned, custom domain, SSL, backups, all on Maker at $20/month flat.

Migrating from Plausible Cloud or Google Analytics and want a hand? Email hello@livemy.app with the tracker setup. Replies inside one business day.

Read next

Dmytro Chervonyi

Dmytro Chervonyi

,

Co-founder & CMO, livemy.app

Co-founder & CMO at livemy.app. 12 years as a CMO scaling SaaS from $0 to $10M+ ARR across marketing, sales, and infra products and tools. Now building the missing step between AI-built code and a live URL — for non-developers who’d rather ship than learn DevOps.

Build something.
We'll make it live.

Free to start. 2 minutes to deploy. One click to cancel.

No credit card · No commitment · Free tier forever