OmniFeed Search

Self-hosted web analytics: four Google Analytics alternatives

Matomo, Umami, GoatCounter and Plausible Analytics all count your website’s visitors on a server you control, so the data stays with you instead of going to Google. Plausible is mainly a hosted service, and what we rank here is its free self-hosted release, Plausible Community Edition, shortened to CE in the table below. All four are open source and free to self-host, and all four track custom events and marketing campaigns, give several people access and can share a dashboard with someone who has no account.

Where they differ is how much they ask of your server and how far their reports go. GoatCounter is one program with one data file, while Plausible CE starts three services and a standard Matomo install needs PHP, a web server and a MySQL or MariaDB database. On reports, the line that matters most is funnels: a funnel shows how many visitors get through each step of a path, such as landing page to signup form to thank-you page, and where the rest drop off. The other thing that decides the choice is whether you want to skip the cookie banner without touching a setting, since three of these work without cookies from the first install.

MatomoUmamiGoatCounterPlausible CE
LicenseGPLMITEUPL 1.2, slightly modifiedAGPL-3.0
What runs on your serverPHP, a web server and MySQL or MariaDB, or Docker plus a databaseApp plus PostgreSQLOne program, with SQLite or PostgreSQLApp, PostgreSQL and ClickHouse
Cookies by defaultYesNoNoNo
FunnelsPaid pluginIncludedNot documentedNot in this edition

Matomo comes out on top for breadth, but for a typical business site we’d start with Umami, and the reviews below explain why.

Scores

1–5 per criterion · select a score for its reasoning and sources
Self-hosted web analytics rubric: scores out of 5 and the average of each product's scores
# Product Setup and upkeep Tracking without a consent banner Reports beyond page views Ways to collect data Import from other tools Export and API Team access Interface languages Active maintenance Overall
1 Matomo 4 3 4 5 4 5 5 5 5 4.4
2 Umami 4 5 5 3 1 4 4 5 5 4.0
3 GoatCounter 5 5 2 4 2 4 4 4 2 3.6
4 Plausible Analytics 2 5 3 2 4 3 4 1 3 3.0
How each criterion is scored

Setup and upkeep

How many separate programs and services the simplest install the project documents needs before the first site can be tracked: the app, plus any language runtime, web server, database server or analytics database that must run beside it. A container image the project publishes counts as one program, whatever it bundles inside.

  1. 5 One program with nothing else to run; data can live in a local file
  2. 4 One program plus one required service, such as a database server
  3. 3 Two separate components, one of them a runtime or web server installed separately from the app
  4. 2 Three separate components, such as the app, a database server and an analytics database
  5. 1 Four or more separate components

Tracking without a consent banner

Whether the default setup sets cookies or stores personal data such as full IP addresses, and what the project says about needing a cookie consent banner under EU privacy law (GDPR and the ePrivacy rules).

  1. 5 No cookies and no stored personal data by default, and the project states that no consent banner or notice is needed
  2. 4 No cookies and no stored personal data by default, but the project makes no statement about consent banners
  3. 3 Sets cookies by default; documented settings turn off both cookies and storage of personal data
  4. 2 Sets cookies by default; a documented setting stops cookies or personal data, but not both
  5. 1 Sets cookies and stores personal data by default, with no documented way to turn this off

Reports beyond page views

How many of these six the free self-hosted edition includes: custom events, goals or conversions, funnels, campaign (UTM) reports, e-commerce revenue tracking, and a real-time view of current visitors. A feature sold as a paid add-on, or kept for the vendor's cloud service, doesn't count.

  1. 5 All six
  2. 4 Five of the six
  3. 3 Three or four of the six
  4. 2 Two of the six
  5. 1 None or one of the six

Ways to collect data

How many of these four ways to count visits, beyond the JavaScript tracker, the project documents: an image (pixel) tracker that needs no JavaScript, an HTTP API a backend server can send pageviews or events to, importing visits from web server log files, and official tracking libraries (SDKs) for iOS or Android apps. They matter for visitors who block or don't run JavaScript, and for counting apps as well as sites.

  1. 5 All four
  2. 4 Three of the four
  3. 3 Two of the four
  4. 2 One of the four
  5. 1 Only the JavaScript tracker

Import from other tools

Whether a site that moves from Google Analytics or another analytics tool can bring its past numbers into the self-hosted edition. An import counts only when the imported numbers appear in the dashboard's reports, and only when the self-hosted edition can run it itself (an import the vendor's staff run for cloud customers doesn't count).

  1. 5 As 4, plus files that another analytics tool exports, as that tool writes them
  2. 4 Imports Google Analytics history directly through Google's API
  3. 3 Imports files that another analytics tool exports, as that tool writes them
  4. 2 Imports only files in the product's own format: its own exports, or other data converted to that format first
  5. 1 No import of past data into the self-hosted edition

Export and API

How many of these four ways to get data out the self-hosted edition documents: a file download of the dashboard's reports (CSV or a similar format), an export of every individual pageview, visit or event (as a file or through an API), a read API for report statistics, and an API to add and change tracked sites.

  1. 5 All four
  2. 4 Three of the four
  3. 3 Two of the four
  4. 2 One of the four
  5. 1 None of the four

Team access

How many of these five the free self-hosted edition includes: several user accounts, a role that can view statistics but not change settings, a dashboard others can open through a public or secret link without an account, two-factor login, and single sign-on (SAML, OpenID Connect or LDAP). A free plugin from the project's own marketplace counts; a paid add-on doesn't.

  1. 5 All five
  2. 4 Four of the five
  3. 3 Three of the five
  4. 2 Two of the five
  5. 1 None or one of the five

Interface languages

How many languages the dashboard can be shown in, as listed by the project or by the translation files in its repository. Regional variants of one language, such as US and UK English, count once.

  1. 5 45 or more languages
  2. 4 25 to 44 languages
  3. 3 10 to 24 languages
  4. 2 2 to 9 languages
  5. 1 English only

Active maintenance

How recent the latest stable release is on GitHub, counted from the date of the evaluation. Alpha, beta and release-candidate builds don't count.

  1. 5 Within the last month
  2. 4 Within the last 3 months
  3. 3 Within the last 6 months
  4. 2 Within the last 12 months
  5. 1 More than 12 months ago, or no releases
1

Matomo

For Google Analytics depth on your own server
4.4/5

Matomo is the closest thing here to Google Analytics itself. It ranks first because it covers nearly everything the other three do, and it is the only one of the four that documents all three of these: SDKs for iOS and Android apps, counting visitors from your web server’s log files, and an importer for old Google Analytics reports. We’d recommend it to teams that track apps as well as sites, to sites where many visitors never run a tracking script, and to anyone leaving Google Analytics who wants the old reports in the new dashboard.

Its cookie default is why we don’t recommend it to everyone. Getting to banner-free tracking means changing settings and checking the conditions in Matomo’s FAQ, work the other three don’t ask of you.

A shop without an app is a closer call than the ranking suggests. Umami includes revenue reports and funnels in its free edition, so we’d point such a shop there first, and to Matomo when it also tracks an app or needs its Google Analytics history.

What it does

  • Goals, ecommerce, campaign and event reports, with a real-time view of visits
  • Image beacon, tracking API, server log import and iOS and Android SDKs
  • Google Analytics Importer plugin
  • Report export in Excel, XML and JSON, plus an API with visitor-level data
  • Interface in 58 languages

Pros

  • Tracks iOS and Android apps and server logs as well as websites
  • Imports Google Analytics history with a free plugin
  • An API that returns individual visits and actions, not only report totals
  • View-only users, public reports, and login with a company's LDAP staff directory through a free plugin

Cons

  • Sets cookies by default, unlike the other three
  • Funnels and SAML login, which lets staff sign in through a company identity provider, are paid plugins
  • A standard install needs PHP, a web server and MySQL or MariaDB; the official Docker image still needs a database container

Who should skip:Teams that want funnel reports without buying a plugin.

Scores and sources →

2

Umami

Best for most business sites
4.0/5

Umami is the one we’d recommend to most business sites, shops without an app included. It tracks without cookies from the first install, and its documentation says the self-hosted edition has the same analytics features as the hosted Umami Cloud. Funnels, goals and revenue are all included. So are UTM reports, which break traffic down by the tags you add to links in ads and newsletters. Open the Sessions screen and each row is one visit, with the visitor’s country, browser and the pages they went through.

Matomo is the runner-up for this reader. Umami’s documentation shows no mobile SDKs, no server log import and no Google Analytics importer, where Matomo has all three; in exchange you get tracking that needs no banner settings and funnels at no extra cost. For a company website or a shop, as opposed to a business with an app, we think that trade favours Umami.

History is the gap. Self-hosted Umami documents no import of past data at all, because the import Umami offers is a service its team runs for Umami Cloud customers. If years of Google Analytics reports matter to you, that points to Matomo or Plausible instead.

What it does

  • Custom events, goals, UTM and revenue reports
  • A Sessions screen that shows each visit and its pages
  • Tracking pixels and an HTTP API for sending events
  • Teams with a View Only role, and public Share URLs
  • Interface in about 50 languages

Pros

  • No cookies by default, and the project says no cookie banner is required
  • Funnels, goals and revenue reports in the free self-hosted edition
  • One app plus PostgreSQL, with a prebuilt Docker image for the app
  • Its API covers every action you can take in the app
  • MIT license

Cons

  • No documented way to import past data into a self-hosted install
  • Server log import and mobile SDKs aren't documented
  • Single sign-on isn't documented

Who should skip:Sites that need to bring their Google Analytics history with them.

Scores and sources →

3

GoatCounter

Lightest to run
3.6/5

GoatCounter is a single program you download and start, and it keeps its data in SQLite, a database stored as one ordinary file, unless you point it at PostgreSQL. Nothing else has to run beside it. We’d recommend it for a personal site, a blog or a documentation site, where page views, referrers and campaign links are what you want to see and a database server would be more upkeep than the site deserves.

If anyone who reads your statistics uses a screen reader, GoatCounter has a point in its favour: its README says the interface works well with them, something the other three projects’ documentation doesn’t mention.

It also counts visitors that a script can’t reach. A 1×1 image tracker works without JavaScript, your backend can send page views to its API, and the goatcounter import command reads web server log files, so nothing has to load in the visitor’s browser at all. Of the other three, only Matomo documents log import too. Its reports stop early, though, so it suits sites that want to know what was read and where readers came from more than sites that sell.

What it does

  • One binary with SQLite, or PostgreSQL for larger sites
  • Image tracker, backend API and log file import
  • Event and campaign tracking
  • CSV export of every page view, and an API for statistics and sites
  • Read-only users and a dashboard shared by secret link

Pros

  • Nothing to run beside the program itself
  • No cookies, and the README says it doesn't need a GDPR notice
  • Counts visitors without JavaScript through an image tracker or server logs
  • Exports every individual page view as CSV

Cons

  • Goals, funnels, revenue reports and a view of current visitors aren't documented; statistics refresh every 10 seconds
  • No release in almost a year
  • The changelog says imported Google Analytics reports only correct the visitor counter and don't show on the dashboard

Who should skip:Sites that need conversion or revenue reports, which GoatCounter's documentation doesn't cover.

Scores and sources →

4

Plausible Analytics

For a one-page dashboard with your GA4 history
3.0/5

Plausible Community Edition is built from the same code as Plausible’s hosted service, with several features kept for paying cloud customers. Those held-back features are one reason it ranks last here. The others are practical: it needs a separate analytics database beside PostgreSQL, and it’s the least flexible of the four about collecting and exporting data, since its only documented way to collect data beyond the script is an events API and its exports stop at report totals.

We’d still pick it if you want your main numbers on one page, with no menus and no custom reports to build, and you want your Google Analytics 4 history in it. Matomo also imports Google Analytics history, with a free plugin, and goes much deeper, so Plausible is for the reader who wants less on the screen. Self-hosted Umami documents no import at all, and GoatCounter’s imported Google Analytics reports don’t show on its dashboard.

The import has a setup cost. On Community Edition it goes through a Google Cloud OAuth app, a registration you create in Google’s developer console for your Plausible server, and the project’s wiki walks through it while admitting the Google integration can be frustrating. Plan the server around ClickHouse too, a separate database built for analytics, which needs a processor with the SSE 4.2 or NEON instruction sets.

What it does

  • One dashboard page with goals, custom properties and campaign sources
  • Google Analytics 4 import and CSV import
  • Events API for backends and mobile apps
  • Teams with a Viewer role, and shared links
  • CSV export per dashboard report and a Stats API

Pros

  • No cookies and no stored IP addresses, and the project says no consent banner is required
  • Imports Google Analytics 4 history
  • The essential stats on one dashboard page
  • Data moves to Plausible's hosted service and back by CSV

Cons

  • Funnels, ecommerce revenue goals, single sign-on and the sites API are kept for the paid cloud
  • Three services to run, the app, PostgreSQL and ClickHouse, with 2 GB of RAM recommended
  • Community Edition is released about twice a year
  • English-only interface; a request for other languages has been open on GitHub since 2020

Who should skip:Teams that need the dashboard in a language other than English.

Scores and sources →

How to choose

  • You track a mobile app as well as a website: Matomo.
  • You run a business site or a shop without an app, and want conversion and revenue reports without a banner: Umami.
  • You’re leaving Google Analytics and want years of history in the new dashboard: Matomo, through its free importer plugin, or Plausible Community Edition if you can set up a Google Cloud OAuth app and want a simpler dashboard.
  • You run a blog or personal site on a small server: GoatCounter, one program and a SQLite file.
  • Many of your visitors block scripts: GoatCounter or Matomo, the two that document server log import.
  • Your team needs the dashboard in a language other than English: Matomo, Umami or GoatCounter.

Our picks

Also considered

  • PostHog

    Its self-hosting page says self-hosted deployments are officially unsupported and that PostHog doesn’t do tagged releases for self-hosting, so we didn’t rank it against tools built to be run on your own server.

  • Rybbit

    Its README describes an AGPL-3.0, cookie-free alternative to Google Analytics with session replays and goals and funnels dashboards. We haven’t scored it yet.

Questions

Will ad blockers stop self-hosted analytics from counting visits?

Some will: GoatCounter’s FAQ estimates that ad blockers miss about a third of page views. Plausible and Umami both document serving the tracker from your own domain through a proxy, and Plausible says this bypasses most blockers. Log file import avoids the problem in GoatCounter and Matomo.

How we scored

Every score cites quotes from each product's own documentation, website and release notes, or from trusted third parties, captured in November 2026. Each criterion counts the same, and a criterion the evidence doesn't cover is shown as "?" and left out of that product's overall score.

We scored each product’s free self-hosted edition: Plausible Community Edition rather than Plausible’s hosted plans, and Matomo On-Premise with free plugins only.

How our rankings work