The Best Free Tools For Web Traffic Analytics

From LinuxReviews
Jump to navigationJump to search
Ksysguard-icon-breeze.svg

Good web traffic analysis tools can tell you where your visitors come from, what pages they tend to enter your site through, what page they last viewed before abandoning your site, what keywords they the search for and a lot of other information that can help you make your website, or web store, better. There are plenty of free alternatives to proprietary commercial web traffic analytics tools like Google Analytics that let you keep your data and, if you choose the right tool, keep the colelcted data to a minimum while retaining the actually useful information. Some of the free software tools are great and some of them are garbage-tier. Here's a run-down of the alternatives.

Log Analyzers

Web server log analyzers have one advantage over all other tools:

  • They don't require JavaScript and they don't require cookies to generate reports.
  • You are in control of your data and there is little or no user-data to be in control of.

They do have a few disadvantages:

  • You do need to be in control of a web server and have access to logs. See Analytics Servers below if you have a website on someone else's server ("the cloud", etc).
  • You can't track users over time. There's no way to tell if someone who visited your website a month ago re-visited it today. That may be good or bad depending on how you look at it.

There's 3 usable free software tools for doing web traffic analytics using server logs. The alternative you're looking for is AWStats.

Analog
Sad hyemi2.jpgSad hyemi2.jpg
Analog can create a single page report with a whole lot of data including yearly, quarterly, monthly, weekly, daily and hourly traffic breakdowns, breakdowns by the hour of week, search queries, search keywords, web browsers used to visit a site (not sorted in any way) and a few other things.

The one-page report analog creates does have most of the data you would want except:

  • Any kind of country break-down because it does not support any form of GeoIP lookup.
  • Visitor entry and exit pages

The biggest problem with analog that make it a very poor choice is: It requires you to keep all logs so it can re-parse them every single time it creates it's report. That kind of makes it something you would only want to run once a week. Also, ever-increasing storage space is a concern.

Analog is free software under the GNU General Public License.

Analog web server statistics - search word report.jpg
AWStats
Yeonjung-happy.jpgYeonjung-happy.jpgYeonjung-happy.jpgYeonjung-happy.jpgYeonjung-happy.jpg
AWStats is a fully featured, mature and maintained web log analyzer. It creates reports with all the basic information you can create from logs. It can optionally use a JavaScript tag to get additional information about a sites visitors.

AWStats will present traffic breakdowns by month, day of month, day of week and hours on a summary page. That summary page will also include traffic by country (if you configure it to use a GeoIP database), robots and spiders, web browsers used by visitors, entry and exit pages, operating systems, web browsers used to visit, referring websites, search engines used to find your site with both a keyword and a key phrase breakdown (increasingly less useful since most browsers have stopped providing a referrer string) and HTTP status codes and errors.

Each of the items in the general summary can be expanded on sub-pages with long lists sorted by the number of hits.

AWStats creates a database in the form of a text file with the information it gathers from logs so you don't need to keep old logs around. It's written in Perl.

AWStats is the by-far best free software log analyzer. Installing and configuring it can be a bit difficult and time-consuming.

AWStats is free software under the GNU General Public License.

AWStats Hours and Countries.jpg


Matomo
Frustrated stallman cropped.jpg
Matomo is a highly advanced web analytics application, not just a log analyzer. It is something you have to install on a web servers vhost or on a dedicated server. It is meant to be used by embedding client-side JavaScript in web pages.

Matomo can be used as a pure log analyzer if you really want to. You shouldn't.

Matomo is really slow and inefficient when it imports entries from a web servers log. It does not support partial updates and it does not understand that it's parsed a log before so it will happily re-parse the same log time and time again. Further, it's log import functionality is incapable of understanding the simplest things such as a hit to a page followed a request for CSS and another request for JavaScript isn't three different pages.

Matomo has another huge disadvantage in comparison to pure log analyzers: You have to processes the logs again after they have been imported to Matomo's database.

Running it requires PHP and a database, something AWStats and Webalizer do not.

All that being said, it is a very powerful tool when when it is used to track visitors using either JavaScript or an image tag. That's clearly how it is intended to be used, the log analyzer appears to be some tacked-on afterthought. It's basically garbage. See Web Analytics Servers below for more details about it's other abilities and use-cases.

AWStats Hours and Countries.jpg
Webalizer
Kim.Se-jeong.confused.jpgKim.Se-jeong.confused.jpgKim.Se-jeong.confused.jpg
Webalizer creates a monthly overview that links to single-page monthly reports with daily and hourly statistics, top URLs by the number of hits, entry and exit pages, website referrers, top search strings, top web browser user-agents, traffic by country and, unless you disable it, the most seen IPs/hosts. The traffic by country breakdown requires a GeoIP database (the author provides one).

Webalizer does have all the most important data. There is no operating system breakdown or web browser breakdown, the list of web browsers is not grouped in any way unless you configure grouping yourself. It is not aware of any web crawlers beyond those you configure in it's configuration file, and the same goes for search engines. You will need a really long configuration file with a lot of SearchEngine and IgnoreAgent lines.

Webalizer does support partial updates and a history file so you can parse logs with it and throw those logs away and still have the statistical data from them intact.

Webalizer is free software under the GNU General Public License.

Webalizer October 2020.jpg
Log Analyzers By Feature
Analog AWStats Matomo Webalizer
License GNU GPL GNU GPL GNU GPL GNU GPL v3
Maintained Dialog-cancel.svg Dialog-ok.svg Dialog-ok.svg Dialog-cancel.svg
Requires storing historical logs Dialog-ok.svg Dialog-cancel.svg Dialog-cancel.svg Dialog-cancel.svg
Summary of human visitors by day Dialog-ok.svg Dialog-ok.svg Dialog-ok.svg Dialog-ok.svg
Summary of human visitors by month Dialog-ok.svg Dialog-ok.svg Dialog-ok.svg Dialog-ok.svg
Summary of human visitors by year Dialog-ok.svg Dialog-ok.svg Dialog-ok.svg Dialog-cancel.svg
Summary of human visitors by hour Dialog-ok.svg Dialog-ok.svg Dialog-ok.svg Dialog-ok.svg
Summary of human visitors by weekday Dialog-cancel.svg Dialog-ok.svg Dialog-ok.svg Dialog-cancel.svg
Summary of human visitors by country Dialog-cancel.svg Dialog-ok.svg Dialog-ok.svg Dialog-ok.svg
Most seen pages / URLs Dialog-ok.svg Dialog-ok.svg Dialog-ok.svg Dialog-ok.svg
User session duration Dialog-cancel.svg Dialog-ok.svg Dialog-ok.svg Dialog-cancel.svg
Grouped Visitor Web Browser / User-Agent breakdown Dialog-ok.svg Dialog-ok.svg Dialog-ok.svg Blond-anime-girl-with-red-questionmark.png (to some degree with configuration)
Visitor Operating System breakdown Dialog-ok.svg Dialog-ok.svg Dialog-ok.svg Dialog-cancel.svg
Entry and Exit pages Dialog-cancel.svg Dialog-ok.svg Dialog-ok.svg Dialog-ok.svg
Search Engines Dialog-cancel.svg Dialog-ok.svg Dialog-ok.svg Dialog-cancel.svg
Search Keywords Dialog-ok.svg Dialog-ok.svg Dialog-cancel.svg Dialog-cancel.svg
Search Queries (full) Dialog-ok.svg Dialog-ok.svg Dialog-ok.svg Dialog-ok.svg
External Referrers Dialog-cancel.svg Dialog-ok.svg Dialog-ok.svg Dialog-cancel.svg
Filters web crawlers Dialog-cancel.svg Blond-anime-girl-with-red-questionmark.png (to some degree) Blond-anime-girl-with-red-questionmark.png (to some degree) Blond-anime-girl-with-red-questionmark.png (can be configured)
Report by file size Dialog-cancel.svg Dialog-ok.svg Dialog-cancel.svg Dialog-cancel.svg
Report by file type Dialog-ok.svg Dialog-ok.svg Dialog-cancel.svg Dialog-cancel.svg
Supports ignoring URLs Dialog-cancel.svg Dialog-ok.svg Dialog-cancel.svg Dialog-ok.svg

Web Analytics Servers

You can install and run your own web analytics server using free software and get pretty detailed information about your sites visitors. There are advantages and some huge disadvantages to this approach. The advantages are:

  • You are in complete control of your data.
  • You do not need any client-side JavaScript if you choose Open Web Analytics and your content management system is written in PHP.

There's also some disadvantages:

  • You need to be able to install and run the analytics server software on a server somewhere. There is a cost attached to having a bare metal server or a cloud instance. You probably have a server you can install a analytics package on if you have a websites with enough traffic to make measuring it worthwhile.
  • Calling an analytics server like Open Web Analytics from a PHP CMS increases the server load.
  • These solutions tend to set web browser cookies. That may be a problem if you're in the EU and you use cookie warnings (you can, of course, opt to not track users until/unless they consent to a cookie warning).
  • You need to deploy client-side JavaScript if you run the analytics server on a different host/server or your content management does not use PHP (node.js, etc).
Matomo
Yeonjung-happy.jpgYeonjung-happy.jpgYeonjung-happy.jpgYeonjung-happy.jpgYeonjung-happy.jpg
Matomo is a really advanced and feature complete web traffic analytics platform written in PHP. It has all the features and it's capable of creating a wide range of reports.

Matomo has a very nice-looking dashboard with customizable floating widgets you can move around. It can generate a wide range of reports detailing just about everything. You can see the most visited pages, entry and exit pages, what operating systems and devices people use, what sites send traffic, what search engines were used to find your site and a whole lot more. All the reports have configurable time-frames so you can view them by day or week or month or just a few selected days.

Matomo is a bit resource-heavy compared to Open Web Analytics. You may need a dedicated server for it if you have north of 20k daily visitors.

Matomo is all in all a really processional and well-done analytics server. It's free software under the GNU GPL v3

Matomo dashboard - default 2020-09-14.jpg
Open Web Analytics
Hyuna-approves.jpgHyuna-approves.jpgHyuna-approves.jpgHyuna-approves.jpg
Open Web Analytics is a fairly complete analytics server written in PHP. You can install and run on a server or a cloud instance. It will show how much traffic you have with nice graphs, top page, page types, entry pages, exit pages, search terms, inbound links, referring websites, what search engines people use to find your site and the keywords and it can optionally show a lot more.

OWA allows you to define custom things to track like ad campaigns. It supports modules for additional functionality.

Open Web Analytics can track visitors by two means: You can either call it from a CMS using PHP (and give it additional data from your CMS) or you can simply insert a JavaScript snippet on the sites/pages you would like to track.

Open Web Analytics is free software under the GNU General Public License.

Open Web Analytics 1.7.0 dashboard.jpg

Free Web Services

Using a free third party web service to generate web analytics has one big advantage:

  • You don't need any hardware, software or anything else of your own. You can just sign up to some website, get some JavaScript snippet, insert that on your web page and you're done.

There are several big disadvantages to using someone else's server running someone else's analytics software:

  • You're not in control of your data.
  • It will, in all cases, rely in client-side JavaScript running in people's browsers
  • You might as well go with Google Analytics if you're going to let random strangers gather, process and control user-data generated by your websites visitors..

Using someone else's analytics server, even if it runs free software, is not something that we recommend so we're not going to list any of the commercial zero-price solutions that are readily available. If you wonder why, consider this: If such a service is free then your user-data is the product. There is on free lunch, any company who's offering to analyze your traffic for free is profiting off that free service in some way (or they would be bankrupt and not exist).

Add your comment
LinuxReviews welcomes all comments. If you do not want to be anonymous, register or log in. It is free.