GoatCounter

Privacy-focused web analytics that tracks unique visits without using cookies or collecting personal identifiers.

GoatCounter screenshot 1

GoatCounter is an open-source web analytics platform that tracks unique visits without using cookies or collecting personal identifiers. It is designed to provide meaningful site statistics while maintaining user privacy and avoiding the need for GDPR consent notices. The software focuses on providing essential metrics without the complexity of traditional analytics suites.

The software is available as a hosted service or as a self-hosted application. Users can deploy it on their own servers using statically compiled binaries or Docker containers, managing the installation via a command line interface. It can be integrated into a website using a single script tag, or through more technical methods for those who prefer to avoid client-side scripts entirely.

Key features

  • Tracks unique visits using a non-identifiable hash instead of cookies
  • Collects browser information, location, screen size, referring sites, and campaigns
  • Supports JavaScript-free tracking via an image-based tracking pixel
  • Allows data import from HTTP server log files such as nginx, Apache, and Caddy
  • Provides an HTTP/REST API for integration with backend server middleware
  • Includes built-in TLS and automatic ACME certificate generation
  • Supports data export to ensure users maintain ownership of their information
  • Interface designed for accessibility and compatibility with screen readers

The application is written in Go and offers flexible storage options depending on the scale of the project. It uses SQLite by default, which is suitable for smaller sites, but supports PostgreSQL for larger installations that require higher performance. The system is designed to handle millions of pageviews, though performance varies based on how those views are distributed across different pages. Administrators can manage the server through a dedicated management page and monitor health via a status URL.

Data ingestion is versatile, supporting a standard JavaScript integration, a no-JavaScript image tracker, or direct parsing of server logs. This flexibility allows the software to be used in environments where client-side execution is restricted or undesired.

GoatCounter is intended for website owners who require basic traffic metrics without compromising visitor privacy.

Last Modified
Software TypeWeb App / Server
Platform
Last Activity21 days ago
Repository Age7 years
Licenseeupl-1.2
Open Source Alternative to
Open Source Software.io

Join our newsletter to get shiny new open source software delivered to your inbox. Unsubscribe anytime.