About this project
Counter is presented as simple web analytics for showing how many people visit a web application. The project provides counter.dev as a hosted service and includes a demo. Its README describes the technology as a small Go server plus static assets. Data is saved to Redis, with a normal SQL database used for archiving older data.
The project's stated aim is to serve many users for free in a sustainable way. It explains lower costs through collecting only aggregated data instead of assigning individual user IDs via cookies or fingerprinting. This reduces database query cost and the amount of stored data. Unique-user counting is described as relying on sessionStorage, the browser cache mechanism, and inspecting the referrer. The README says this reduces server complexity and load while improving privacy, at the cost of knowing less about users; the project states it cannot and does not want to connect single page views to a user identity. It also notes that infrastructure is designed for high load using a static Go binary for HTTP requests and an in-memory Redis database regularly backed up to disk. The README argues this is more economical than a typical relational database accessed by a scripting language, and that dedicated or virtual servers can provide more performance for the same money than platform-as-a-service hosting, at the cost of manual management.
A linked issue is cited for real-world validation: serving millions of unique visits per month reportedly used roughly 25 percent of a small VPS costing 5 dollars per month. With a few hundred active users, non-fixed costs are described as about one cent per user per month, plus domain and an extra VPS backup service, with donations covering costs.
For local development the README says to run make devserver and notes that a Redis server is needed at localhost and default port. Self-hosting instructions are linked to a separate counter.dev-selfhost repository. The blog is based on Pelican, with templates in templates/blog, articles in posts, and generation via make blog; it is autogenerated on every deploy. The FAQ notes uncertainty about avoiding a cookie banner, referencing the ePrivacy Directive and a proposal for a new ePrivacy Regulation. Contributors are listed as Ana Maria Sandoval Jimenez, data scientist, and Irae Hueck Costa (ihucos), backend developer. Counter is AGPL licensed and open source for transparency.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.