I'm sure some of you must have heard of Google Analytics. Analytics is a service provided by Google, that keeps track of a site's traffic flow. What this means is, that is tracks visits (visitors, referrals, duration of each visit, page clicks, percentage of recurring visitors, etc.). Using this service you have a very good picture of your site's traffic. Of course, you have a wide variety of filters to apply when viewing the statistics.
Upsides of Google Analytics: It's a very good service and relatively easy to deploy. The great downside is that the collected data are beyond your control. You have no way of knowing how Google uses it. And if Google for some reason decides to shut down the service, you are left with nothing in your hands (maybe besides your balls...).
Fortunately, there's a pretty good alternative to Google Analytics and the great news is that it's FOSS. The name for it is Piwik.
Piwik came to my knowledge during this year's OpenSUSE conference, here in Thessaloniki, the first day of which I had the pleasure of attending it. There, Hans de Raad had a session regarding open source alternatives for web analytics and privacy in the web. Piwik was presented there and it seemed to me as a very mature product.
I gave it a try. Downloaded it locally at my home PC and installed it. The requirements are PHP and MySQL, pretty common I guess. The surprise came after I logged in using the account I had created during the setup.
Piwik is fantastic! It resembles Google Analytics but my gut feeling is that it's better!
The user interface is very appealing and friendly to the user. Surely, this is a good advantage for a product that someones tries for the first time, so the software gains points from the beginning. It heavily uses Javascript and the jqPlot Javascript library for its charts, a very nice charting library, creating "live" charts. So, the new Piwik user understands that a lot of work has taken place towards the user interface part by the Piwik developers and that's good.
Regarding the core features, Piwik has many (if not all and even more) features like Google Analytics. The first page is the Dashboard, which acts as the entry point for your analytics report. It includes a summary of the main features to track, which are visits, keywords, visitor map, visitors in real time, referrer websites, search engines, etc. This is the page where you get a first overview of your site's traffic.
The Visitors tab contains all information regarding visitors and visits. You can see a chart of the number of visits, along with average visit duration, number of unique visitors, outlinks, etc. Each metric below the main chart is clickable and the chart is updated to show the clicked metric. On the left, you see a screenshot of the overview page. There are other pages under this tab, where you can see the originating countries of the visits, the hours of visits during each day, the number of returning visitors and their following actions, and other metrics, like the visitor's browser, etc. All with their "live" charts which display the value of each point in the chart when your mouse hovers over it. Very nice and handy.
In the Actions tab, you can see a detailed view of the visited pages. You can see the entry pages, the exit pages (the pages that were last viewed before the visitor left the site), outlinks (links to external sites), and downloads (in case your site offers files for downloading).
The Referrers tab shows the sources (also known as referrals) of your site. Was your site searched and found through search engines, did the visitor click a link in another external website and came to yours, or was it a direct address input that led to it? This tab will show all of these, in detail.
Finally, in the Goals tab you can create goals in the form of rules that when they are accomplished, this fact means something for your site. It could mean that you earned some money, that you increased your traffic, etc. I guess this tab is more effective when your site is used as a commercial one and does not have an immediate effect for blogs and non-commercial sites.
I have yet to discover in detail all the features of Piwik. Besides, it's only been a couple of weeks that I deployed it and use it to track my own sites. I'm sure there's much more to this than meets the eye. The documentation and the forums at the official site are there to help you.
So, this is a rough overview of the features of Piwik. Piwik is at version 1.12 at the moment and the roadmap to 2.0 has already been set. From the technical point of view, it works the same way as Google Analytics does. You (as the site developer) have to inject a small Javascript snippet of code in each site page that contacts your analytics server and tracks your visit. Since this is FOSS, there is an option to opt-out from the tracking and to exclude the tracking of IP addresses, depending on your country's laws.
As a final conclusion, Piwik left the best of impressions to me. It's very intuitive to use, has an elegant UI, very nice graphical charts (which I forgot to mention that are exportable to a variety of output formats) and has many features out of the box. At least for my kind of use, I cannot think of anything that is missing from the current version. And what's the best of all, is that your analytics data are under your control. I think we must banish hidden from us practices like PRISM and that it was about time we took control of our systems and data.
Give it a try and you won't regret it. Trust me.