GoatCounter is an open source web analytics platform available as a hosted service or self-hosted application.
GoatCounter addresses the tension between wanting meaningful analytics and respecting user privacy. It avoids tracking users with unique identifiers and does not require GDPR consent notices. The tool identifies unique visits using a non-identifiable hash rather than cookies, and offers fine-grained control over which data is collected. It keeps useful statistics including browser information, location, screen size, referring sites, and campaigns while maintaining a lightweight footprint of approximately 3.5K of extra data per site.
GoatCounter suits developers and site owners frustrated by the complexity of Google Analytics or Matomo who want simpler, privacy-respecting analytics. The tool emphasizes ease of use and accessibility, with an interface designed to work well with assistive technology. Integration is straightforward via a single script tag, though the tool also supports JavaScript-free image-based tracking, backend middleware integration, and log file parsing from nginx, Apache, Caddy, CloudFront, and other HTTP servers. Self-hosting requires only SQLite or PostgreSQL and works on multiple platforms through statically compiled binaries or Docker. Users retain full ownership of their data and can export or cancel at any time.
The project maintains active development with regular updates to both the hosted service and self-hosted codebase. The maintainer actively solicits financial contributions and provides comprehensive documentation including API details, integration guides, and privacy policies. The codebase remains fully open source with no restrictions on self-hosting, and the project demonstrates commitment to accessibility as a high-priority feature rather than an afterthought.