Google Analytics Is Basically Spyware With a Nice UI
Let’s be honest. Google Analytics is an incredible product — if your goal is to help Google build shadow profiles on every person who visits your website. For a marketing team at a Fortune 500 company? Sure, maybe worth it. For your personal blog, your indie SaaS, or your self-hosted homelab dashboard? You’re essentially paying for your analytics with your users’ privacy, and the price tag is “unknown.”
GDPR came along and said “hey, maybe you need consent banners for this,” which gave rise to the cookie popup hellscape we all live in today. Every site now has a banner that covers 40% of the screen asking if you’re okay with tracking that would make the NSA blush.
There’s a better way.
Plausible Analytics and Umami are two privacy-friendly, self-hostable analytics tools that give you the traffic data you actually care about — without tracking individuals, without cookies, without sending data to Mountain View. One costs money (or you self-host), one is completely free. Both are dramatically simpler than GA, and that’s a feature, not a bug.
Why Ditch Google Analytics
Before getting into the comparison, let’s name the specific problems:
The privacy problem. GA uses cookies to track individual users across sessions and, through Google’s network, across sites. Even with IP anonymization turned on, you’re still feeding behavioral data into Google’s ad machine. Some EU regulators have outright declared GA illegal without extensive configuration.
The bloat problem. The GA4 script weighs in at around 45KB. Plausible’s script is 1KB. That’s not a typo. The performance cost of loading GA on every page is real, especially on slower connections.
The complexity problem. GA4 is a genuinely confusing product. “Events” replaced everything, dimensions need configuration, and anyone who’s tried to set up a simple conversion funnel has emerged from the documentation looking haunted. You end up spending more time configuring analytics than reading them.
The consent banner problem. Because GA uses persistent cookies, you legally need to ask for consent in most jurisdictions before loading it. The cookie banner ecosystem exists almost entirely because of tools like GA.
Privacy-friendly analytics tools sidestep all of this by not using cookies, not tracking individuals, and being transparent about what they collect. You can often skip the consent banner entirely because there’s nothing consent-worthy happening.
Plausible Analytics: The Pretty One
Plausible is a paid SaaS product built by a small European team, and it’s also fully open source and self-hostable. The cloud version starts at $9/month for up to 10k pageviews, which is more than fair for most small sites.
What Makes Plausible Good
The dashboard is genuinely beautiful. It’s a single page, no tabs, no configuration required. You get: top pages, top referrers, countries, browsers, devices, and goals — all on one screen. You can share it publicly with a link. It takes about 45 seconds to understand.
The script tag that runs on your site is under 1KB:
<script defer data-domain="yourdomain.com" src="https://plausible.io/js/script.js"></script>
That’s it. Drop it in your <head> and you’re done. No configuration file, no data layer, no tag manager ceremony.
Plausible does not use cookies. It identifies “unique visitors” using a daily hash of the IP + user agent + some salt, which means no cross-session tracking and no individual profiles. It’s compliant with GDPR, CCPA, and PECR out of the box. Many users skip the cookie banner entirely when using Plausible (verify with your own legal counsel, obviously, but this is the general community consensus).
Self-Hosting Plausible
If you don’t want to pay or you want full control, the self-hosted version is available and functionally identical to the cloud version. It requires a bit more setup — you need PostgreSQL and ClickHouse — but the community edition is free.
# docker-compose.yml (simplified)
version: "3"
services:
plausible:
image: ghcr.io/plausible/community-edition:v2
restart: always
ports:
- "8000:8000"
env_file:
- plausible-conf.env
depends_on:
- plausible_db
- plausible_events_db
plausible_db:
image: postgres:16-alpine
restart: always
volumes:
- db-data:/var/lib/postgresql/data
environment:
POSTGRES_PASSWORD: postgres
plausible_events_db:
image: clickhouse/clickhouse-server:24.3.3.102-alpine
restart: always
volumes:
- event-data:/var/lib/clickhouse
- ./clickhouse/clickhouse-config.xml:/etc/clickhouse-server/config.d/logging.xml:ro
- ./clickhouse/clickhouse-user-config.xml:/etc/clickhouse-server/users.d/logging.xml:ro
volumes:
db-data:
event-data:
The ClickHouse dependency is a mild pain point — it’s a serious piece of infrastructure for “I want to see how many people read my blog.” But it’s what enables Plausible to be fast at scale. On a homelab or small VPS, plan for around 512MB-1GB RAM just for ClickHouse.
Plausible Pricing
| Plan | Monthly Cost | Pageviews |
|---|---|---|
| Starter | $9 | 10k |
| Growth | $19 | 100k |
| Business | $59 | 1M |
| Self-Hosted | Free | Unlimited |
Umami: The Lean One
Umami is a completely free, open source analytics tool written in Next.js. It’s simpler than Plausible in both feature set and operational requirements — no ClickHouse, no distributed database. You get a SQLite or PostgreSQL backend and a Node.js app.
What Makes Umami Good
Umami’s appeal is its simplicity. It does the same core analytics job — pageviews, referrers, top pages, devices, countries — with a UI that’s clean if slightly less polished than Plausible’s. It’s also cookie-free and privacy-focused by design.
The dashboard is multi-site from the start — one Umami instance can track dozens of websites, each with their own login or shared under one account. Useful if you run multiple services.
The tracking script:
<script async src="https://your-umami.example.com/script.js" data-website-id="your-website-id"></script>
Again, one line, no configuration. The data-website-id is generated when you add a site in the Umami UI.
Self-Hosting Umami with Docker Compose
Umami’s Docker setup is refreshingly simple compared to Plausible’s ClickHouse requirement:
version: "3"
services:
umami:
image: ghcr.io/umami-software/umami:postgresql-latest
ports:
- "3000:3000"
environment:
DATABASE_URL: postgresql://umami:umami@db:5432/umami
DATABASE_TYPE: postgresql
APP_SECRET: replace-me-with-a-random-string
depends_on:
db:
condition: service_healthy
restart: always
db:
image: postgres:15-alpine
environment:
POSTGRES_DB: umami
POSTGRES_USER: umami
POSTGRES_PASSWORD: umami
volumes:
- umami-db-data:/var/lib/postgresql/data
restart: always
healthcheck:
test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"]
interval: 5s
timeout: 5s
retries: 5
volumes:
umami-db-data:
SQLite mode exists too (just set DATABASE_URL=file:/path/to/umami.db) and is fine for personal projects with low traffic. For anything production-ish, PostgreSQL is recommended.
Default login after first run: admin / umami. Change this immediately, or explain to your users why a stranger added their site to your analytics dashboard.
Umami’s Event Tracking
Umami supports custom events through data attributes, which is a nice touch:
<!-- Track a button click -->
<button data-umami-event="signup-click" data-umami-event-plan="pro">
Sign Up
</button>
No JavaScript required for basic event tracking — it reads the data attributes. For more complex tracking, there’s a small JS API.
Plausible vs Umami: Side by Side
| Feature | Plausible | Umami |
|---|---|---|
| Cost (cloud) | From $9/month | Free (self-host only) |
| Self-hostable | Yes | Yes |
| Database needs | PostgreSQL + ClickHouse | PostgreSQL or SQLite |
| RAM requirement | 1GB+ (ClickHouse) | ~256MB |
| UI quality | Excellent | Good |
| Cookie-free | Yes | Yes |
| GDPR compliant | Yes | Yes |
| Multi-site | Yes | Yes |
| Public dashboards | Yes | Yes |
| Custom events | Yes | Yes |
| Goals/Funnels | Yes | Limited |
| Active development | Yes | Yes |
| License | AGPL (CE) | MIT |
Which One Should You Actually Use
Use Plausible cloud if you want zero maintenance, a beautiful UI, and you’re comfortable paying $9/month. It’s the right call for a small business or anyone who doesn’t want to think about infrastructure.
Self-host Plausible if you want the full Plausible experience for free and you’re already running a homelab with enough RAM to spare for ClickHouse. Be prepared for a moderately complex setup.
Use Umami if you want a completely free, low-overhead analytics solution. It’s easier to self-host, lighter on resources, and more than capable for personal projects, blogs, and small apps. The UI is slightly less polished but still good.
The one thing both will definitively agree on: your users don’t need to be tracked across the entire internet just so you can see that 47 people read your article about LVM snapshots. Give the people a break from the surveillance economy. Install one of these. Delete the Google Analytics script. Your cookie banner can finally retire.
Your users will never notice. You’ll notice when your site loads 45KB faster. That’s the deal.