Last year I was working on a product idea and wanted to add some basic analyticsto measure how many people are visiting the site. I've also been wanting to addbasic analytics to my personal homepage/programming weblog to measure if anyoneis reading anything I write (and if so, what?)
Analytics are useful to measure things like“what type of content is popular,and should I write more of?”,“does it even make sense to distribute anewsletter?”,“how does the redesigned signup button affect signup rates?”,“is anyone even using this page I'm maintaining”?
I tried a number of existing solutions, and found them are either very complexand designed for advanced users, or far too simplistic. In addition almost allhosted solutions are priced for business users (≥$10/month), making it tooexpensive for personal/hobby use.
What seems to be lacking is a “middle ground” that offers useful statistics toanswer business questions, without becoming a specialized marketing toolrequiring in-depth training to use effectively. Furthermore, some tools haveprivacy issues (especially Google Analytics). I saw there was space for a newservice and ended up putting my original idea in the freezer and writingGoatCounter.1
Almost all hosted solutions are exclusively oriented towards business use. Thismakes sense from a business point of view – better to support 100 customerspaying €30 each than 1000 paying €3 each – but it does leave a lot of peoplewithout a good/affordable solution.
I think it’s important to make the barrier of entry for software like this lowas feasible to make actual meaningful inroads to “de-Google-fi” the internet abit, and make pervasive tracking less common. Making it freely available (forpersonal use) is part of that. In my own online purchasing behaviour I find thateven a small €1 or €2 subscription is quite a barrier, especially for personalprojects. From what I see, I don’t think my behaviour is an outlier. Most peopledon't use Google Analytics because they're overwhelmingly impressed by it, butjust because it's free.
The only other options outside of Google Analytics is to pay upwards of€10/month or to self-host something like Matomo, which also isn't free in termsof hosting costs, setup time, maintenance, etc. Never mind that average personrunning his photography website probably doesn't have the interest or know-how.
If you want to make the internet a bit better, then the only real option is tooffer a SaaS for free, at least for personal use. Ideally I'd like to make itfree foreveryone up ton pageviews/month – like Google Analytics – but I doneed to pay the bills 😅
Without focusing too much on specific features, high-level goals are:
Give useful data while respecting people's privacy. For the most part, itshould just “count events” rather than “get as much data as technicallypossible” (which, for the most part, is not even that useful or valuable foranalytics anyway).
There should always be an option to add GoatCounter to your sitewithoutrequiring a GDPR consent notice.
Easy user interface; some existing solutions are surprisingly complex, to thepoint where I wasn't able to get some basic data out of it. It's like puttinga layperson in front of a SQL database and telling them to “just” get some“simple” data out of it.
GoatCounter isn't intended to solve every possible analytics use case, and bylimiting the scope it should bebetter for the use cases itis designedfor.
Make a web app that Ilike using, rather than merelytolerate. This is abit subjective, and perhaps my tastes are old-fashioned, but I'm not wildlyimpressed by a lot of modern web UIs. Google Analytics is a good example wherepressing the “back button” will often break everything.
Works well with any browser and assistive technology, whenever reasonablypossible.
Easy to self-host without too much mucking about with web servers, proxies,{PHP,Python,Ruby,NodeJS,…}, SQL databases, what-have-you. I feel this is animportant feature, because “run your own” sounds nice but it becomes a bit ofa niche feature if you need to have a lot of knowledge and spend a lot of timesetting everything up.
Footnotes
A little context on the name: GoatCounter is written in the Go programming language, and I thought it would be fun to reflect that in the name. The original “intermediate” project in-between my original idea and GoatCounter was GoatLetter, a newsletter service with similar aesthetics to GoatCounter (something I will finishsoon™). Probably subconsciously influenced by MailChimp I ended up with “Goat”.
I originally wanted to avoid using the word “Analytics” as it's 1) associated with invasive tracking like GA 2) something I have trouble spelling correctly 😅 “Counter” refers to “counting requests” (as opposed to “analytics”. It's a bit of a weird name, but memorable, so I guess I'll stick with it for now :-) ↩