Why Self-Hosting Your Analytics Actually Makes Sense
Google Analytics has been the default choice for website owners since the mid-2000s, but the calculus around using it has shifted considerably. GDPR enforcement, browser-level tracking protections, and growing visitor awareness of data collection have made the traditional analytics setup more complicated to justify. Plausible Analytics offers a different approach: a lightweight, privacy-first stats tool that collects no personally identifiable information, requires no cookie banners, and can be run entirely on your own server.
Self-hosting Plausible means your visitor data never leaves your infrastructure. There is no third-party company sitting between you and your stats, no data sharing agreements to read, and no risk of your analytics provider changing its terms. For anyone running a site where audience trust matters – or where regulatory compliance is a real concern – that is a meaningful advantage over hosted alternatives.

What You Need Before Starting
Plausible Community Edition (CE) is the self-hosted version, and it runs via Docker. Before you begin, you need a Linux server with at least 2GB of RAM – 4GB is more comfortable once traffic picks up. A fresh Ubuntu 22.04 or Debian 12 VPS works well. You also need a domain name pointed at the server, since Plausible requires a proper hostname to function correctly. Attempting to run it on a bare IP address will cause problems with the internal configuration.
Install Docker and Docker Compose if they are not already present. On Ubuntu, run sudo apt update && sudo apt install docker.io docker-compose-v2 -y and confirm both are available with docker –version and docker compose version. If you are also running other services on the same machine and want visibility into resource usage, a tool like Netdata for real-time server monitoring pairs well with this setup. Make sure port 80 and 443 are open in your firewall before continuing.
You will also need an SMTP mail server or a transactional email service for account registration and password resets. Plausible sends a confirmation email when you create your admin account, and without working mail credentials, you will be locked out of the setup flow. Services like Mailgun, Brevo, or Postmark all work. Grab your SMTP host, port, username, and password before you start editing configuration files.

Deploying the Stack
Clone the Plausible CE hosting repository with git clone https://github.com/plausible/community-edition plausible && cd plausible. Inside, you will find a docker-compose.yml and a plausible-conf.env file. Open the env file and set three required values: BASE_URL (your full domain, including https://), SECRET_KEY_BASE (generate a 64-character random string with openssl rand -base64 48), and your SMTP credentials under the MAILER_* variables. The database credentials for Postgres and ClickHouse are pre-configured in the compose file and do not need to be changed for a standard deployment, though you should change the default passwords in any production environment.
With the config in place, bring the stack up with docker compose up -d. Plausible bundles Postgres, ClickHouse, and the main app container together. The first boot takes a few minutes as ClickHouse initializes its data structures. Once running, set up a reverse proxy in front of it. Caddy is the easiest option here – a minimal Caddyfile with your domain name and a reverse_proxy localhost:8000 directive handles TLS automatically. If you prefer Nginx, configure a standard proxy pass block and use Certbot to provision the SSL certificate.
Adding Sites and Reading Your Data
Navigate to your domain in a browser and complete the registration flow. Plausible will send a confirmation email to the address you enter – click the link, set your password, and you land on the dashboard. From there, click “Add a website,” enter your domain, and Plausible generates a one-line script tag. Paste that tag into the <head> section of every page you want to track. For WordPress sites, a plugin exists that inserts the script automatically without touching theme files. For static sites, drop it directly into your base template.
The Plausible script itself is under 1KB, loads asynchronously, and does not set any cookies. It tracks page views, referrer sources, device types, browser families, and geographic regions at the country level – all without fingerprinting or cross-site tracking. What it does not do is tell you anything about individual visitors, because that data is never collected in the first place. This is intentional and is exactly why no cookie consent banner is required under GDPR when using Plausible as configured.
Custom events are available if you need to track specific interactions like button clicks or form submissions. Add the tagged-events script variant instead of the default one, then annotate any HTML element with class=”plausible-event-name=YourEventName”. For more complex tracking – funnel steps, revenue data, or outbound link clicks – Plausible supports a goal system built directly into the dashboard. Goals are defined in the site settings and appear as a separate panel in your stats view once data starts flowing in.
Updates to Plausible CE are released regularly and pulling them in is straightforward: run docker compose pull followed by docker compose up -d from the installation directory. ClickHouse migrations run automatically on startup, so there is no separate database upgrade step. The one thing worth watching is disk space – ClickHouse stores event data in a columnar format that is efficient but can grow steadily on high-traffic sites. Set a retention period in the Plausible settings if you do not need years of historical data sitting on the drive.

One detail that catches some self-hosters off guard: Plausible does not support multiple users with different permission levels in the Community Edition the way the cloud product does. You get a single admin account and can share dashboard access via a public link or a shared login. If your team needs separate accounts with role-based access, that feature is reserved for the paid cloud plan. For solo operators and small teams comfortable sharing credentials, it is not a real obstacle – but it is worth knowing before you commit to the setup.
Frequently Asked Questions
Does self-hosted Plausible require a cookie consent banner?
No. Plausible does not use cookies or collect personal data, so GDPR cookie consent banners are not required when using it as configured.
What are the minimum server requirements for Plausible CE?
A Linux server with at least 2GB of RAM and a domain name pointed at the server. Docker and Docker Compose must be installed before setup.
Can multiple team members use a self-hosted Plausible instance?
Plausible CE supports a single admin account. Dashboard access can be shared via a public link, but role-based multi-user access is only available on the paid cloud plan.





