Privacy-First Web Analytics Without Google Analytics
Most FOSS projects do not need surveillance-grade analytics. They need to know whether people can find the documentation, which release notes were read, and whether a migration guide helped.
That is a much smaller problem than Google Analytics was built to solve.
Decide what you actually need
Before choosing a tool, write down the questions you want analytics to answer:
- Which pages are useful?
- Which downloads or docs are popular?
- Did a launch post send traffic?
- Are users coming from search, Mastodon, newsletters, or package registries?
- Are there broken paths or dead pages?
If those are your questions, privacy-friendly analytics are enough.
Plausible and Umami
Plausible and Umami are the cleanest replacements for simple website analytics. They are lightweight, understandable, and designed around aggregate reporting.
Use them when you want:
- A small JavaScript snippet
- Cookie-free analytics
- Simple dashboards
- Page views, referrers, countries, devices, and events
Plausible has a strong hosted offering. Umami is especially pleasant for simple self-hosting.
Matomo
Matomo is closer to a full Google Analytics replacement. It has more features, more reports, and more knobs.
That is useful if you need:
- Campaign tracking
- Goals and funnels
- Ecommerce-style reporting
- Long-term historical reports
- WordPress integration
The trade-off is weight. Matomo is excellent, but it is more system to run.
PostHog
PostHog is product analytics, not just web analytics.
It makes sense for FOSS SaaS products, hosted open-core tools, and projects that need feature flags, event funnels, experiments, or session replay. It is usually overkill for a documentation site.
If you use PostHog, be deliberate about privacy settings and data retention. Product analytics can become invasive if you collect everything by default.
GoAccess and log analytics
The most privacy-preserving analytics may already be on your server: access logs.
GoAccess can turn Nginx or Apache logs into useful reports without placing any JavaScript in the browser. This is ideal for:
- Static sites
- Package mirrors
- Download servers
- Privacy-sensitive projects
You will not get client-side events, but you will get honest traffic patterns.
A good default
For most FOSS websites:
- Use GoAccess for server-side visibility
- Use Umami or Plausible if you need page-level dashboards
- Use Matomo when you need a broad analytics suite
- Use PostHog only when you are building a product
Collect less. Keep it shorter. Explain it clearly in your privacy policy.