A comparison of Umami and Matomo (formerly Piwik) would be helpful since they seem very similar. I looked at both websites and didn't see any mention of the other project.
Are there any "Google Analytics" alternatives that aren't based on Python, Node, Go, etc but something with a PHP back-end that can be deployed to any commodity LAMP hosting provider?
I think the question was if the software itself is actually simple to set up with a commodity web host. As easy as upload via ftp and configure in webbrowser easy.
Would awstats meet this criteria? Not PHP but even simpler. I have data from it going back to 2006 (maybe 2002 if I dig up backups), which is a lot of fun.
I remember once at a previous job one of the devs forgot to setup google analytics which was the go to tool at the time. Client calls in wanting to get some stats for their site after 3 months, and we had nothing... thankfully awstats comes with cpanel without any additional setup, and we had something to show. Not great, but better than nothing.
The advantage of Go is that you can compile it to a single (static) binary, and then it doesn't really matter what the rest of the backend is running. Unlike Python, Node, PHP, etc. you don't need to set up an environment.
It has a plain PHP + MySQL backend, so it's really easy to install (on a LAMP server, as a WordPress plugin or one-click install on a DigitalOcean droplet).
When I started building it 8 years ago, the idea was exactly this, it should run on any basic shared hosting that can run PHP, so any site can just have its own analytics dashboard, without relying on 3rd parties.
I'm very excited to see this space heating up. It seems for years we defaulted to using Google Analytics and no one wanted in the market. Now there are plenty alternatives, with many of them open source.
Yes, event tracking is already in the current build. I just haven't finished the UI components or documentation yet. But basically all you have to do is add a CSS class to an element and it will automatically start tracking. Like this:
Of these, do any have a funnel tracking feature that shows what visitors went through a specific series of pages/events? Seeing how users moved about the site and seeing how many converted is a deal breaker for me.
https://volument.com might be a good pick since it focuses strictly on conversion optimization. It attempts to measure the more general conversion flow, known as the AIDA funnel (awareness, interest, desire, and action).
True, but it at least respects the privacy of your visitors by doing very minimal tracking. Basically, all you get is country, some device stats, and a time stamp. Last time I used it, it didn’t even track return visits and used no cookies iirc. It felt nice
I currently use the self-hosted version on Heroku and impressed with its functionality. It's quite similar to Heap Analytics. My favorite feature is auto-tracking. That said, there are some scaling limitations currently if you have a high traffic site. We have a couple hundred thousand users monthly so we are likely on the larger side of PostHog deployments. The team is cranking out features and improvements incredibly fast and I'd expect these to be resolved soon. Feel free to DM - happy to answer any more questions.
Fathom started as open source, but the founders stopped supporting the open source project. It's basically abandoned at this point, with no new releases in almost two years and only updates to the README.
Thanks for mentioning https://www.userTrack.net, I'm the author and still working full-time on improving it. Let me know if you have any questions/remarks about userTrack.
Wow, that’s actually the first one (besides matomo which is rather enormous) that looks like a decent alternative to me with more than just bare-bones features. I’ll keep it in mind. And I really like the clear and to-the-point website.
To be honest, I did work a lot on it, 6-7 years as a side-project and one year full-time. I think feature-wise userTrack is pretty comparable to Matomo (including some of their premium features that cost 400eur+/year). I also recently recreated the entire front-end from spaghetti jQuery to TypeScript+React+MaterialUI and implemented an auto-updater system. This means that I can now implement new features, fix bugs and distribute the updates to users very fast.
I am really glad that you like the landing page! I probably changed it like 200 times in the last 2 months (last change was 2 minutes ago). I still want to improve it (eg. some hero video actually showcasing the product, so you don't have to spend time understanding the demo).
PS: I hope that the BTC transfer was successful and thanks again for the comment! (jk)
> am really glad that you like the landing page! I probably changed it like 200 times in the last 2 months (last change was 2 minutes ago).
Hilarious, I have changed our new home page literally hundreds of times over the last few days and having looked at yours, I see inspiration for yet another change.
Hey XCSme. Your product is one of the best I have seen. Very deep insights, with a good interface.
Ps: You probably need a better name. Since your website says it is privacy respecting, 'UserTrack' doesn't exactly convey that. Just something with 'Track' not in the name.
And adblockers like uBlock Origin tend to block everything like track.domain.com.
I did consider changing the name, but that's a lot harder than it seems (have to rebrand, change domain, probably lose all SEO, etc.). So far I didn't encounter any issues with ad-blockers (for users userTrack is self-hosted, so you can host it on any domain, so name doesn't matter there). I also rank highly for terms like "user tracking" which I think is good, as people would stumble upon a self-hosted alternative instead of some 3rd party platform like Google Analytics. In the end, it does track stats and users on your website, but if I were to start again I would indeed choose a friendlier name.
I am aware of that visual bug, I do have a better solution in mind for it, unforunately I have to write hacky code to make it work (due to the limitations of the material-ui library used). I think that's a very minor issue though, and there are more important issues I want to fix before it, especially that it's not an easy fix.
The problem with matomo (not their fault) is that Microsoft flags your site as distributing malware and you disappear from search engines. You have to fill out a bunch of forms to fix it. It’s listed in the matomo faq and is basically either from a bot falsely reporting you, or some other glitch. It’s why my blog is still invisible to bing users: if you visit in edge, you get huge menacing red warnings.
I've been using it for our name generator product Mashword (https://mashword.com) and it was really straightforward to implement. It's reasonably priced, has a clean interface and graphs, is privacy protecting and supports using your own domain for pulling in the js include.
There are a bunch of Github "awesome software" lists.
One thing I haven't seen is someone categorize open source web traffic analytics into Client Side Analytics (via javascript) and Web Server Log analytics.
Since each approach drastically changes the data collected and reported.
Matomo does provide an alternative to leverage web server log files (beyond the usual client side javascript)...using a python script: https://matomo.org/faq/log-analytics-tool/
When i first migrated (my personal sites) away from GA, i was concerned about performance, so was considering using server logs, and stumbled upon this feature of matomo. The javascript approach ended up not being the performance issue that i thought it would be...so i never ended up using the python script...So your mileage may vary, but to your question, this does exist.
I just checked your tracking code. It looks like you're using the locale storage to set a session id to track uniqueness. According to this [0] Stackexchange answer you will still have to display a cookie banner.
The local storage is mainly for performance. It's to prevent a round-trip to the database to figure out the session again. The session id will be the same regardless and it can function without local storage. But I do see your point. I may consider removing it just to be safe.
I always like seeing competitors to GA but the website could really use some more information on why you should use it and the features it gives you. It's hard to beat top competitors in a saturated space.
I've used https://count.ly/ instead of Google Analytics to gather exception data and business analytics from mobile and web apps. Relatively cheap for decent scale and they're very nice and helpful.
to be honest, if you are using nginx, just use / run https://goaccess.io/ It collects the same information as umami and is even more lightweight, since it just runs whenever you tell it to.
just add the command as a cron job, and you get an auto generated static dashboard. very neat.
I wish to see a line about backend platform on installation documentation. Yes, it's simple, but IMO no one will find "Umami requires bla bla platform on bla bla operating system." sentence useless.
From a quickscan of the GitHub repo [1], this is a JavaScript client, like Google Analytics, that sends data to a self-hosted Node.js backend that stores the data in MySQL or PostgreSQL using the Prisma database toolkit:
Any reasonable server side processing thing will exclude the obvious bots, which almost always have some kind of "Bot" wording in their user agent header.
There are a LOT of bots and crawlers with bogus browser user agents.
Some of the bad ones you can select see indirectly in logs because they pick UAs that almost no one uses any more. Go search your logs for IE8 or Firefox <= 70.0. Most just pick a random modern User Agent though and that's awfully hard to see in server logs.
Yeah, but so what? There are plenty of blacklists maintained for all sorts of things, and no metric is perfect. Some really rudimentary filtering or AI methods could get you pretty good data.
This looks great! For what it’s worth, I also maintain an open source (and self hosted) website analytics tool called Shynet [0] (someone else mentioned it in this thread, but thought I’d share here as well). Really great to see more options in this area!
234 comments
[ 3.4 ms ] story [ 315 ms ] threadhttps://www.awstats.org/
Also, anyone with a Tedomum account? It'd be nice if you could open an issue about adding umami.is. https://forge.tedomum.net/ReverseEagle/developers/-/issues
It has a plain PHP + MySQL backend, so it's really easy to install (on a LAMP server, as a WordPress plugin or one-click install on a DigitalOcean droplet).
When I started building it 8 years ago, the idea was exactly this, it should run on any basic shared hosting that can run PHP, so any site can just have its own analytics dashboard, without relying on 3rd parties.
1. Upload the script files.
2. Create a MySQL database for the script to use.
3. Run the auto-installer (to set up DB connection and create the tables in DB).
https://docs.usertrack.net/installation/uploading-the-script
Also, I did research on alternatives to GA few days back, might be helpful of someone:
https://github.com/Open-Web-Analytics/Open-Web-Analytics
https://matomo.org/
https://github.com/matomo-org/matomo
https://github.com/usefathom/fathom
https://www.goatcounter.com/
https://plausible.io/
https://github.com/PostHog/posthog
https://www.usertrack.net/
https://github.com/electerious/Ackee
https://count.ly/
https://github.com/vesparny/fair-analytics
https://goaccess.io/
https://www.kokoanalytics.com/
https://github.com/sheshbabu/freshlytics
https://github.com/milesmcc/shynet
https://simpleanalytics.com/
No, XCSme did not pay me for this comment ;)
To be honest, I did work a lot on it, 6-7 years as a side-project and one year full-time. I think feature-wise userTrack is pretty comparable to Matomo (including some of their premium features that cost 400eur+/year). I also recently recreated the entire front-end from spaghetti jQuery to TypeScript+React+MaterialUI and implemented an auto-updater system. This means that I can now implement new features, fix bugs and distribute the updates to users very fast.
I am really glad that you like the landing page! I probably changed it like 200 times in the last 2 months (last change was 2 minutes ago). I still want to improve it (eg. some hero video actually showcasing the product, so you don't have to spend time understanding the demo).
PS: I hope that the BTC transfer was successful and thanks again for the comment! (jk)
Hilarious, I have changed our new home page literally hundreds of times over the last few days and having looked at yours, I see inspiration for yet another change.
Ps: You probably need a better name. Since your website says it is privacy respecting, 'UserTrack' doesn't exactly convey that. Just something with 'Track' not in the name.
And adblockers like uBlock Origin tend to block everything like track.domain.com.
And just a bug/overlap I noticed when hovering over the delete button - https://i.imgur.com/aBA7cpr.png
I did consider changing the name, but that's a lot harder than it seems (have to rebrand, change domain, probably lose all SEO, etc.). So far I didn't encounter any issues with ad-blockers (for users userTrack is self-hosted, so you can host it on any domain, so name doesn't matter there). I also rank highly for terms like "user tracking" which I think is good, as people would stumble upon a self-hosted alternative instead of some 3rd party platform like Google Analytics. In the end, it does track stats and users on your website, but if I were to start again I would indeed choose a friendlier name.
I am aware of that visual bug, I do have a better solution in mind for it, unforunately I have to write hacky code to make it work (due to the limitations of the material-ui library used). I think that's a very minor issue though, and there are more important issues I want to fix before it, especially that it's not an easy fix.
I've been using it for our name generator product Mashword (https://mashword.com) and it was really straightforward to implement. It's reasonably priced, has a clean interface and graphs, is privacy protecting and supports using your own domain for pulling in the js include.
Be careful of this one. It started out as OSS, but switched to proprietary once they'd achieved traction.
One thing I haven't seen is someone categorize open source web traffic analytics into Client Side Analytics (via javascript) and Web Server Log analytics.
Since each approach drastically changes the data collected and reported.
i.e. collects both (or one of either) server logs and client side analytics, normalize them, etc.
When i first migrated (my personal sites) away from GA, i was concerned about performance, so was considering using server logs, and stumbled upon this feature of matomo. The javascript approach ended up not being the performance issue that i thought it would be...so i never ended up using the python script...So your mileage may vary, but to your question, this does exist.
https://github.com/snowplow/snowplow
[0] https://softwareengineering.stackexchange.com/questions/2905...
just add the command as a cron job, and you get an auto generated static dashboard. very neat.
Hacker News hug of death?
[1] https://github.com/mikecao/umami
https://www.awstats.org/
Some of the bad ones you can select see indirectly in logs because they pick UAs that almost no one uses any more. Go search your logs for IE8 or Firefox <= 70.0. Most just pick a random modern User Agent though and that's awfully hard to see in server logs.
[0] https://github.com/milesmcc/shynet