Easiest Web Analytics to self-host

9 web analytics apps that are easy to get running, ranked by verified deploy effort, project health, and popularity. 2 have a verified ≈5-minute Docker setup.

The shortlist at a glance

AppDeploy effortDifficultyMin. RAMLicense★ Stars
Gramps Web≈5-minute setupEasy512 MBfree1,740
Counterscale≈5-minute setupEasy64 MBMIT2,157
UmamiUnder-an-hour setupEasy512 MBMIT39,354
AckeeUnder-an-hour setupEasy256 MBMIT4,718
GoatCounterUnder-an-hour setupEasy128 MBEUPL-1.26,055
Counter.dev SelfhostUnder-an-hour setupEasy128 MBMIT1,012
ShynetUnder-an-hour setupEasy512 MBApache-2.03,154
Fathom LiteUnder-an-hour setupEasy128 MBMIT8,020
Vince AnalyticsUnder-an-hour setupEasy128 MBAGPL-3.02,011

Last reviewed Oct 11, 2026 · 618 words

Umami is the easiest web analytics tool for a beginner to self-host, even though it ranks third here. The two entries above it earn their ≈5-minute badges through one-click platform packages, and neither is what you came for: Gramps Web is a genealogy app that sits in this list, and Counterscale runs on Cloudflare Workers rather than your own server. Umami is rated Easy at 512 MB by the directory's estimate, gives you a clean cookie-free dashboard, and handles several sites and users from one install.

The lighter alternatives are real options

If 512 MB plus a database feels like a lot for counting pageviews, this list has smaller tools that do less:

PickRAM estimateShapeTrade-off
Umami512 MBApp plus databaseFewer reports than Matomo
GoatCounter128 MBSingle binaryBasic reporting depth
Medama128 MBSingle binary, SQLiteNewer project
Vince128 MBSingle binarySmaller community
Ackee256 MBApp plus MongoDBLimited reporting depth
Counterscale64 MBCloudflare WorkersTied to Cloudflare

GoatCounter is the one I would pick from the light end: a single Go binary that collects no personal data and can count visits even without JavaScript. The GoatCounter vs Umami comparison covers what you give up. Fathom Lite looks tempting at 8,000 stars, but the catalogue notes the Lite edition is no longer actively developed, so I would not start a new install on it. Counterscale is the right call only if your site already sits on Cloudflare and you want no server at all.

What "easy" still leaves you to do

Umami needs a database alongside it, which makes the install two containers and a backup job, not one. Put the database on a persistent volume and dump it on a schedule; a lost analytics database is only history, but history is the whole product. Log in and change the default admin password before anything else, then create a separate account for anyone who only needs to read reports. Serve the dashboard and tracking script over HTTPS from your own subdomain through a reverse proxy, because a page on HTTPS will not load a script from plain HTTP. Expect some undercounting regardless: ad blockers filter many analytics scripts, including self-hosted ones, so treat the numbers as trends rather than a census.

How much RAM does self-hosted analytics need?

For a personal site or a handful of small sites, 512 MB for Umami plus a few hundred megabytes for its database covers it, so a 1 GB VPS is a comfortable floor. The single-binary tools run in 128 MB and fit beside almost anything. Traffic changes the database's needs long before it changes the app's, so watch disk growth, not memory, in the first months.

When should a beginner step up from Umami?

Step up when someone asks a question Umami's single dashboard cannot answer. Plausible (Medium, 1 GB) is the move for more polished goal and funnel reporting, at the price of running Postgres and ClickHouse; the Plausible vs Umami comparison prices it out. Matomo (Medium, 1 GB) is for teams that will use segments and deep reports. Product analytics with session replay and feature flags is a different, much heavier job, and not a beginner step at all.

What I'd do

Umami with its database on a persistent volume, the default password changed on first login, the script served from your own HTTPS subdomain, and a nightly database dump. Choose GoatCounter instead if the server is tiny or you want one binary and nothing else to run.

Keep exploring