
Clashing goals
Counter tries to reach many goals. Some are aligned, some seem mutually exclusive at times. Part of maturing such a project is deciding priorities. As an example: while it is sensible to respect end-user's choice of using tracking blockers and not trying to circumvent such a tool, counter's users rely on having the most accurate data possible.
Let's list the goals of this project, in no particular order.
Data Privacy
I don't think there is much that can be written about data privacy that was not already publicly discussed. Everybody agrees it is an important topic. Pity that usually choosing privacy friendly solutions means using inferior products. We claim to be the exception.
Free
For whatever reason I have joy in giving away an essential tool needed for web development. Maybe I sympathise with the archaic notion of the internet being a playground with not many barriers. Ultimately I build a tool for myself, having to enter credit card details in my own software in order to use it would be a turn off (Well, yes, I could hack it).
Sustainability
It would be trivial to make a better time range selection for counter. But due to counter's unique way of doing things - that is mostly keeping all data in memory - I wouldn't be able to keep the lights on for much time if the project grows too much. There are many startups who failed to deliver on promises. I hope that counters way of achieving hosting many users for relatively little money is transparently enough disclosed.
Open Source
Technically an Open Source project is nothing more than a project where the Source Code is under a license generally accepted as Open Source (Counter is AGPL-Licensed). But the general expectation goes beyond that: Good documentation, configurability, deployment-independent code and data-independent code are traits which require work. Work that could be easily invested in adding in features instead.
Being a business
A business works different than an Open Source project.
Small CO2 footprint
Currently counter hosts hundreds of users and already tracked many millions of visits all in a small Virtual Private Server. A different analytics solution would need more resources in order to achieve the same.
Serving users
In the end it's like with a rucola salad. When asked in front of friends, I'd say that I eat that. There are many good reasons to eat such a healthy salad. But given the choice in a restaurant, believe me that I would never order a rucola salad. The same goes for counter, being an Open Source project and respecting the end-users data privacy is nice. But ultimately it is about presenting insightful and comprehensive metrics to users in an appealing way.
What to pick?
So many good choices, which one to pick, which on to toss overboard. In this blog post I want to proclaim caring about mostly one thing: Users. Of course in a sustainable way. The only reason such a product can exist is to serve and be usable to its users.