Plausible vs Umami 2026: Privacy Analytics Pick
Plausible vs Umami in 2026: Privacy-First Analytics Compared
TL;DR
Both Plausible and Umami are lightweight, cookie-free, privacy-focused analytics tools that replace Google Analytics. Plausible is the more feature-complete option — revenue tracking, conversion funnels, Google Search Console integration, and GA import. Umami is the simpler, MIT-licensed option — same core analytics, lighter stack, and completely free (no cloud tier to upsell). For most sites, both work excellently as GA replacements. The choice comes down to whether you need funnels and revenue tracking (Plausible) or prefer MIT license and PostgreSQL simplicity (Umami).
Key Takeaways
- Plausible (AGPL-3.0, 21K+ stars) uses an Elixir + ClickHouse stack for fast analytics at scale — funnels, revenue tracking, Google Search Console, and GA import
- Umami (MIT, 24K+ stars) uses Node.js + PostgreSQL/MySQL — simpler self-hosting, zero cloud tier, MIT license
- Both are under 2 KB tracking scripts, cookie-free, and GDPR compliant without consent banners
- Google Analytics 4 costs nothing but sells your data; both alternatives keep data on your server
- Plausible Cloud starts at $9/month (10K pageviews) — the cloud tier funds development
- Umami has no cloud tier — it's self-hosted only (or Umami Cloud, free beta)
Why Replace Google Analytics?
Google Analytics 4 is free, which makes the case for switching non-obvious at first glance. But the actual cost is privacy — yours and your users'.
GA4 problems:
- Requires GDPR consent banners in EU (annoying, reduces acceptance rates, legally required for cookie placement)
- Shares user data with Google's advertising network
- Complex interface designed for enterprise — most sites use <10% of its features
- Tracking script is 45+ KB, slows page loads
- Data sampling at scale means reports aren't always accurate
- Privacy-conscious users block it (uBlock Origin, Safari ITP) — you're missing a meaningful portion of your traffic
Plausible and Umami solve all of these:
- Under 2 KB scripts (22x smaller than GA)
- No cookies = no consent banners required (anonymized data only)
- No third-party data sharing
- Data stored on your server (or their EU servers if using cloud)
- Simple, readable dashboards
Plausible — The Feature-Complete Option
Plausible launched in 2019 and has grown to a sustainable independent company with 12K+ paying customers. The product is refined — every feature feels intentional, and the interface is genuinely beautiful.
# Plausible self-hosted Docker Compose
services:
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
- event-logs:/var/log/clickhouse-server
- ./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
ulimits:
nofile:
soft: 262144
hard: 262144
plausible:
image: ghcr.io/plausible/community-edition:v2
restart: always
command: sh -c "sleep 10 && /entrypoint.sh db createdb && /entrypoint.sh db migrate && /entrypoint.sh run"
depends_on:
- plausible_db
- plausible_events_db
ports:
- 8000:8000
environment:
- BASE_URL=https://analytics.yourdomain.com
- SECRET_KEY_BASE=your-64-char-secret-key
- DATABASE_URL=postgres://postgres:postgres@plausible_db:5432/plausible_db
volumes:
db-data:
event-data:
event-logs:
The tracking script is added to every page on your site:
<script defer data-domain="yoursite.com"
src="https://analytics.yourdomain.com/js/script.js">
</script>
Custom events track conversions, signups, purchases, and any other user action:
// Track a custom event with properties
plausible('Purchase', {
props: {
plan: 'pro',
revenue: { currency: 'USD', amount: 29 },
}
});
// Track a goal (form submission)
plausible('Newsletter Signup');
// Track with custom properties
plausible('Feature Used', {
props: { feature_name: 'CSV Export', user_tier: 'enterprise' }
});
Revenue tracking automatically calculates total revenue, average revenue per conversion, and revenue trend over time — essential for SaaS businesses and e-commerce.
Funnels let you define multi-step conversion paths:
- Home page → Pricing page → Checkout started → Purchase completed
Plausible shows drop-off percentage at each step, so you can identify where users abandon the conversion flow.
Google Search Console integration displays your top organic search queries alongside traffic data — without leaving the Plausible dashboard. This replaces the need to context-switch to Search Console for SEO analysis.
GA import migrates historical Google Analytics data into Plausible, so you don't lose years of historical comparisons when switching.
Key features:
- < 1 KB tracking script
- Cookie-free, no consent banner required
- Custom events with properties
- Revenue tracking and attribution
- Conversion funnels
- Google Search Console integration
- GA4 import for historical data
- UTM campaign tracking
- Public dashboard sharing
- Team access with multiple sites
- REST API
- AGPL-3.0 license, 21K+ stars
- Cloud at $9/month (10K pageviews)
Umami — The Simpler MIT Option
Umami takes a more minimal approach: excellent core analytics with less complexity, on a simpler technical stack, with an MIT license that allows commercial use without AGPL restrictions.
# Umami Docker Compose
services:
umami:
image: ghcr.io/umami-software/umami:postgresql-latest
restart: always
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
db:
image: postgres:15-alpine
restart: always
environment:
POSTGRES_DB: umami
POSTGRES_USER: umami
POSTGRES_PASSWORD: umami
volumes:
- umami-db-data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U $POSTGRES_USER -d $POSTGRES_DB"]
interval: 5s
timeout: 5s
retries: 5
volumes:
umami-db-data:
The tracking script is similarly small:
<script async src="https://analytics.yourdomain.com/script.js"
data-website-id="your-website-id">
</script>
Custom events in Umami use data attributes (no JavaScript required for simple tracking):
<!-- Track button clicks without JavaScript -->
<button
data-umami-event="Purchase Button"
data-umami-event-plan="pro">
Upgrade to Pro
</button>
<!-- Or with JavaScript -->
<script>
// After the umami script loads
window.umami.track('Newsletter Signup', { source: 'footer' });
</script>
Multiple website support — one Umami instance tracks unlimited websites. Each website gets its own dashboard, event tracking, and share URL.
Public dashboards share read-only analytics with clients or publicly. The share URL is a permanent, access-controlled view of your analytics.
Key features:
- < 2 KB tracking script
- Cookie-free, no consent banner required
- Custom events with properties
- Goal/conversion tracking
- UTM campaign tracking
- Multiple websites per instance
- Public dashboard sharing
- Team access with role-based permissions
- REST API
- Data export
- MIT license, 24K+ stars
- No cloud tier (self-hosted only)
Limitations vs Plausible:
- No conversion funnels
- No revenue tracking
- No Google Search Console integration
- No GA4 import
- No managed cloud option
Side-by-Side Comparison
| Feature | Plausible | Umami |
|---|---|---|
| License | AGPL-3.0 | MIT |
| Stars | 21K+ | 24K+ |
| Stack | Elixir + ClickHouse | Node.js + PostgreSQL/MySQL |
| Script size | < 1 KB | < 2 KB |
| Cookie-free | ✅ | ✅ |
| GDPR (no consent) | ✅ | ✅ |
| Custom events | ✅ | ✅ |
| Revenue tracking | ✅ | ❌ |
| Funnels | ✅ | ❌ |
| Google Search Console | ✅ | ❌ |
| GA4 import | ✅ | ❌ |
| Public dashboards | ✅ | ✅ |
| Multiple sites | ✅ | ✅ |
| REST API | ✅ | ✅ |
| Cloud option | $9/month | Self-hosted only |
| Min RAM (self-hosted) | 1 GB (ClickHouse) | 512 MB |
| MySQL support | ❌ | ✅ |
Performance at Scale
The technical stack difference matters at high pageview volumes.
Plausible uses ClickHouse as the events database. ClickHouse is a columnar database optimized for analytical queries — aggregating millions of rows to calculate pageview counts, unique visitors, and conversion rates. Plausible handles tens of millions of pageviews per month on modest hardware.
Umami uses PostgreSQL (or MySQL) for event storage. Standard row-based databases are less efficient for analytical aggregations at high volume. For sites under 1 million pageviews/month, you won't notice the difference. For sites with 10+ million pageviews/month, ClickHouse's query performance is measurably better.
Recommendation: Under 1M pageviews/month — either works perfectly. Over 5M pageviews/month — Plausible's ClickHouse backend is the safer choice.
Decision Framework
Choose Plausible if:
- Revenue tracking is important (e-commerce, SaaS with conversion goals)
- Conversion funnels help you optimize the user journey
- Google Search Console integration is valuable (SEO-focused sites)
- You want to import historical GA data for year-over-year comparisons
- You want a managed cloud option for $9/month instead of self-hosting
- You expect over 5M pageviews/month
Choose Umami if:
- MIT license is required (commercial products, avoiding AGPL obligations)
- You prefer PostgreSQL over ClickHouse (simpler to operate)
- MySQL support is needed (existing MySQL infrastructure)
- The simplest possible self-hosting matters most
- Core pageview and event analytics are sufficient — no funnels/revenue needed
Cost Comparison
| Scale | Google Analytics | Plausible Cloud | Plausible Self-Hosted | Umami Self-Hosted |
|---|---|---|---|---|
| 10K pageviews/month | Free | $9/month | $5–8/month | $5–8/month |
| 100K pageviews/month | Free | $19/month | $5–8/month | $5–8/month |
| 1M pageviews/month | Free | $69/month | $15–20/month | $10–15/month |
| Your data used for ads | Yes | No | No | No |
Related: Matomo vs Plausible vs Umami: Three-Way Analytics Comparison · How to Self-Host Plausible Analytics · How to Migrate from Google Analytics to Umami
See open source alternatives to Plausible on OSSAlt.