It provides you with detailed reports on your website visitors: the search engines and keywords they used, the language they speak, your popular pages and so much more.
Piwik is a web analytics tool which can be self hosted to store your own web sites statistics and can be used as the best available alternative to Google Analytics.
It has a rich plugin repository and provides hooks in its API to build new plugins, which can be used to develop your own specific need analytics on top of it.
1. Easy & Quick Installation
I am a Java developer and I was thinking it will take more time to install as Piwik technology stack is PHP + MySQL. To my surprise, doing the setup of this tool was so easy I couldn't imagine. In fact, It was much easier then many complex open source application installations.
You need to have at least PHP5.1, which can be downloaded from PHP Downloads Page.
If you on Linux then its should be already available as upgrade package directly at OS level. So your System admin should be able to do that easily.
Once you have installed the PHP, you will be able to launch the Piwik application just by extracting the zip file in public_html folder in your home directory.
e.g. if your home directory is /home/swiki then you can extract the Piwik zip in /home/swiki/public_html/
and your piwik installation directory will look like this /home/swiki/public_html/piwik
Now you should be able to access the application at URL http://
This comes up with a wizard which will show you if all required components are installed properly or not and you can complete the installation by simply following the wizard step by step.
The best thing I liked about installation wizard is it suggests you the things which are missing instead of throwing some crazy error on browser.
2. Configurable Dashboard
Piwik dashboard is highly configurable. Its widget based and you can add,remove your widgets as per your needs.
You will be able to drag and move the widgets just like you can do in many widget aggregators like (iGoogle, Pageflakes,NewsGator)
Most of the widgets have view options like Pie chart, Line graph or Bar graph to see the graphical representation of same data.
It also allows you to export the graph and other data in the form of Image, CSV, XML, JSON & PHP.
3. User Management is simple and powerful
As per Piwik FAQ
'you can create an infinite number of users and websites to track.
For each user, you can set permissions to "view", "admin" or "no permission" for a specific website, or for all websites at once.'
In ideal world you would not need infinite users, but I have used the user management console of Piwik and its very easy to use.
The permission system in Piwik is really simple but powerful. Its very easy to manage from a small number of websites and users to hundreds of websites and thousands of users.
You can also use the Piwik UsersManager API to add, remove, edit users and their permissions.
4. Rich Extensible Plugin Repository
All Piwik features are developed as plugins, which means you can easily add new plugins built by the community to customize your own Piwik installation.
If you have specific needs then you can build a plugin that processes data in a different way for your site.
I am not a PHP developer but I have seen this community is very enthusiastic and many good plugins are available already.
5. Get full control of your site statistics
There are dozens of free and paid web analytics solutions available in the market, but all of them require you to store the data at their end.
One of the main advantages of Piwik is that you are in control of the statistics data you have to store.
Unlike other services (like Google Analytics), you host Piwik on your own server.
The installation process is very simple, and to the end user Piwik is just as simple to use and understand as Google analytics.
Piwik is installed on your server, which gives you full control over your data. You can access the data easily via the Piwik API.
User who have good understanding of SQL can also run manual queries on the MYSQL database in order to build advanced reports.
Last but not the least: as you own your data, you don't make it available to third-party companies which may reuse or sell this data for other purposes.
6. Gathering data by client side scripting
This approach is much better as compared to your web application itself taking care of logging the statistics data due to following reasons.
- This enables you to make site statistics collection available for multiple web application by easily integrating.
- It make more sense to have site statistics at one place as you can manage the data well.
- Though it wont be required always but you have an alternative of using Piwik API for you specific needs.
- You application is losely coupled so its always open to do its own very specific statistics logging if needed.
7. Widgetize your data!
You can also widgetize the content and show it on your website. For example if you want to show the live users on your website you can use the "Live" widget for Live Visitors!
If want to read more about Piwik here is the Piwik official website
You can also see the online demo at Piwik demo site