Self-hosted Google Analytics alternatives (GDPR-friendly)

Matomo, Plausible, Umami, GoatCounter and Rybbit compared: cookies and consent, features, and how much server each open-source analytics tool needs.

If you want a self-hosted replacement for Google Analytics with the same depth (goals, e-commerce, segments, importing your old GA data), use Matomo. If you only want clean numbers on visitors, pages and referrers without a cookie banner, Umami or Plausible Community Edition are simpler and lighter. GoatCounter is the smallest of them and runs from a single binary with SQLite.

All of them keep the data on your server instead of sending it to Google. Whether you still need consent depends on how you configure them and where you are, which this guide covers too.

Why people leave Google Analytics

The usual reasons: the GA4 interface is hard to read for a small site, the data goes to Google, and in the EU it usually needs a consent banner, which many visitors decline. That means you see only part of your traffic anyway.

A self-hosted tool fixes the data location by design. Several of them also skip cookies and avoid storing personal data, which can remove the need for a banner. "Can" is the important word here, see the section on cookies and GDPR below.

Matomo

Matomo is the closest thing to a full Google Analytics replacement. It has about 22,000 GitHub stars (October 2026), is licensed under the GPL-3.0 and written in PHP with a MySQL or MariaDB database.

It has goals, e-commerce reports, segments, a tag manager and an importer for your historic Google Analytics data. Heatmaps and session recordings exist as paid premium plugins. Matomo does not sample data, and on your own server there is no limit on how long you keep it.

By default Matomo uses first-party cookies, and you can switch them off. Matomo's own guide describes a narrow setup that may run without consent in some countries: no cookies, IP addresses anonymized by at least 2 bytes, no user IDs, data used only for analytics on a single site. It is careful about Germany, where it says only server-side methods are clearly outside the TDDDG, and it recommends treating JavaScript tracking as needing consent until regulators say otherwise.

Requirements: Matomo 6 needs PHP 8.1 or later and MySQL 8.0 or MariaDB 10.6 or later. A small site runs fine on a modest server. For high traffic, the database is where it gets heavy.

Who it is for: marketing teams, online shops and anyone who used GA in depth and wants the same reports.

Plausible Community Edition

Plausible has about 29,000 GitHub stars (October 2026). The application is AGPL-3.0, and the Community Edition Docker setup is MIT-licensed.

Plausible's dashboard fits on one page: visitors, pages, sources, countries, devices, goals. It sets no cookies and generates no persistent visitor IDs. To count unique visitors it hashes a daily salt with the site domain, IP address and user agent, and the salt is deleted every 24 hours. Plausible says that with its tool you "do not need cookie banners for analytics".

The Community Edition is the self-hosted version, and it is not identical to the paid cloud. Marketing funnels, user journeys, e-commerce revenue goals, SSO and the sites API are cloud-only. CE gets a long-term release twice a year, while the cloud gets updates several times a week, and support for CE is community-only.

Requirements: Docker Compose, at least 2 GB of RAM, and a CPU with SSE 4.2 or NEON, because Plausible stores events in ClickHouse.

Who it is for: site owners who want a clear, simple dashboard and are fine with fewer features than the paid version.

Umami

Umami has about 39,000 GitHub stars (October 2026), an MIT license and released v3.4.0 on 17 September 2026. It works "without cookies, cross-site tracking, or the automatic collection of personal data", in the project's words.

Umami has grown beyond simple page counts. Besides pageviews, referrers and UTM campaigns there are custom events, funnels, goals, journeys, retention, segments and cohorts. Newer versions also list session replays and heatmaps. You can share dashboards by link, work in teams and use an API.

Requirements: Node.js 18.18 or later and PostgreSQL 12.14 or later. There is a Docker Compose file that starts both. It is lighter than Plausible because there is no ClickHouse, which makes it a good choice for a small VPS.

Who it is for: developers and small companies who want a privacy-friendly tool with room to grow into events and funnels.

GoatCounter

GoatCounter is the minimalist option, with about 6,000 GitHub stars (October 2026) and the EUPL-1.2 license. It runs as a single binary with SQLite by default, and PostgreSQL is recommended for larger sites. The tracking script adds about 3.5 KB to your page.

It counts visits rather than raw pageviews. To recognize a visitor it builds a session key from site ID, user agent and IP address, maps it to a random ID kept in memory for 8 hours, and never writes IP addresses or user agents to disk. The project says GoatCounter "probably doesn't require a GDPR consent notice". It can also read log files from nginx, Apache, Caddy and other servers, so you can count visits without any JavaScript.

Who it is for: personal sites, blogs and documentation, where a few clear numbers are enough.

Rybbit

Rybbit is a newer project with about 13,000 GitHub stars (October 2026) and an AGPL-3.0 license. It is cookieless and has session replays and funnels. Like Plausible it uses ClickHouse. Some features, such as Web Vitals, are only in the paid cloud. Worth a look if you want something between Umami and Matomo, but it has a shorter track record.

GoAccess: analytics from server logs

GoAccess works differently. It reads your web server's log files and shows reports in the terminal or as an HTML page. There is no tracking script at all, so nothing runs in your visitors' browsers. It has about 21,000 GitHub stars (October 2026) and a GPL-2.0 license. Bots show up in logs too, so the numbers are rougher than those of a JavaScript tool.

Comparison table

MatomoPlausible CEUmamiGoatCounterRybbit
CookiesYes by default, can be disabledNoneNoneNoneNone
DepthFull GA-styleSimple dashboardSimple to medium, events and funnelsMinimalMedium, session replay
StackPHP + MySQL/MariaDBElixir + ClickHouseNode.js + PostgreSQLGo binary + SQLite or PostgreSQLClickHouse based
Documented needsPHP 8.1+, MySQL 8.0+2 GB RAM, SSE 4.2 CPUNode 18.18+, PostgreSQL 12.14+Very smallSee docs
LicenseGPL-3.0AGPL-3.0MITEUPL-1.2AGPL-3.0

Self-hosting solves one GDPR problem: no data goes to a US company. It does not automatically mean you can drop the consent banner.

Two separate rules matter in the EU. GDPR covers personal data, such as IP addresses. The ePrivacy rules (in Germany the TDDDG) cover storing or reading anything on the visitor's device, which includes cookies and also some other techniques. A cookieless tool that doesn't store personal data has a good case for running without consent in many countries. Matomo's own documentation is still cautious about Germany, and it notes that if you track logged-in users or put personal data into URLs, page titles or events, you need consent anyway.

So: pick a cookieless tool or configure Matomo without cookies, anonymize IPs, mention the tool in your privacy policy, offer an opt-out, and ask a lawyer if your situation is unusual. This guide is not legal advice.

How to run them

The standard way is your own server with Docker. Umami and GoatCounter fit on a small VPS. Plausible needs more memory for ClickHouse, and Matomo wants a proper MySQL or MariaDB. For the basics, see self-hosting for beginners.

A managed host is the other route. On blitz.cloud, Umami installs in one click from its App Store, hosted in the EU with HTTPS included. There is a free plan without a credit card where apps sleep after 30 minutes without visitors. For an analytics server that is a real limit: the first tracking hit after a quiet period has to wake the app, so it suits a test setup better than a busy website. The other tools here are not in its store, so for those you host them yourself.

More tools are listed under Google Analytics alternatives.

FAQ

What is the best free alternative to Google Analytics?

Matomo if you need the full feature set and GA data import. Umami or Plausible Community Edition if you want a simple, cookieless dashboard. GoatCounter for a personal site.

With a cookieless tool configured not to store personal data, many sites can run analytics without one. In Germany the situation is stricter, and Matomo itself advises treating JavaScript tracking as needing consent. If in doubt, ask a lawyer.

Can I import my Google Analytics data?

Matomo has an importer for historic Google Analytics data. For the other tools, check their current docs before you count on an import.

Which one needs the fewest resources?

GoatCounter, a single binary with SQLite. Umami is next, needing Node.js and PostgreSQL. Plausible and Rybbit use ClickHouse and want more memory.

Is Plausible self-hosted the same as Plausible Cloud?

No. The Community Edition lacks funnels, user journeys, e-commerce revenue goals, SSO and the sites API, gets releases twice a year and has community support only.