Piwik is a downloadable, Free (GPL licensed) web analytics software platform. It provides detailed reports on your website and its visitors, including the search engines and keywords they used, the language they speak, which pages they like, the files they download and so much more. Piwik aims to be an open source alternative to Google Analytics. Piwik is PHP MySQL software which you download and install on your own webserver. At the end of the 5-minute installation process you will be given a JavaScript tag. Simply copy and paste this tag on websites you wish to track (or use an existing plugin to do it automatically for you). To learn more about what Piwik offers, check out the list of features page. If you need professional help to make the most out of Piwik, get in touch with the Piwik analytics experts.

Piwik is the leading open source web analytics software used on more than one million websites in 200 countries. But when there are also dozens of other free and paid web analytics solutions, why choose Piwik? One of the principle advantages of Piwik is that you are in control. Unlike remote-hosted services (such as Google Analytics, Webtrends or Adobe Analytics), you host Piwik on your own server and the data is tracked inside your Mysql database. Because Piwik is installed on your server, you enjoy full control over your data. You can access the data easily via the Piwik APIs. Advanced users can use Custom Dimensions, Segmentation, or even run manual queries on the database in order to build advanced reports.

Piwik also protects your visitor privacy with advanced Privacy features. When using Piwik for Web Analytics, you ensure that your visitors behaviour on your website(s) is not shared with advertising companies.

Piwik is an open platform which you can extend with plugins and make it your own. More than 70 plugins are available on our Marketplace (both free plugins and paid premium plugins). For even more possibilities you can even build your own plugin for Piwik or get the experts to build it for you.

Another key advantage: in Piwik there is no sampling of data. Piwik always report all of your data and will not filter out some. There is no data limit with Piwik!

Piwik has to be installed on a server with both PHP and MySQL. At the end of the 5-minute installation, Piwik will give you a Javascript tag which you add to the bottom of each page of your website. Piwik will then record the activity across your website within your database. Piwik aggregates this data to provide detailed web analytics reports about your visitors, page views, referrer information, search engine keywords, Ecommerce, campaigns and much more! As well as tracking via the Javascript file, you can also import web server access logs into Piwik, or use the Tracking API.

Yes, check out the online demo to see how awesome Piwik is!
Please note that while this demo is useful to see what Piwik has to offer, it does not show all features. Indeed, the administration area is password protected. If you download and install Piwik yourself (or use a Hosting partner), you will get access to many more interesting features and reports.

If you prefer seeing the list of features all in one page, check out the list of features.

In Piwik, 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. The permission system in Piwik is simple and makes it very easy to manage from a small number of websites and users to hundreds of websites and thousands of users. See the Manage Users documentation.

You can add unlimited websites to track in Piwik, in the Admin Websites section. In fact, Piwik scales well to thousands of websites, and a few Piwik users are tracking even more. Each Website is defined by a URL. You can track sub domains in the same Piwik website, or you can create a different website for some of your subdomains. Learn more about creating Websites in the Managing websites page.

The ‘All Websites’ dashboard is a useful first page to look at for a quick overview of the performance of all your websites over the last day or week. You can even make it your default page to load in Piwik (go to top menu Administration > Personal > Settings). If you track more than 10 websites, the Website selector will display the first ten sites only, and show a search field where you can search quickly to look at another website.

In the Admin Websites page, you can also define for each website a list of Alias URLs which contains all the other domains and subdomains that will be tracked. This will ensure they don’t appear in your “Referrer” reports.

If you track many subdomains in the same Piwik website, you might want to see the domain name directly in your Page Title reports. If you want to show “support.example.org/Homepage” instead of simply “Homepage”, check out the JS setDocumentTitle documentation.

You can add unlimited number of Goals to track in Piwik (newsletter subscription, file download, ‘thank you’ page, etc.). Learn more about how to track your website Goals in the Goal Tracking documentation.

By default Piwik uses the browser language to determine location. To improve accuracy of country detection (and enable Region and City tracking), go to Piwik > Administration > Geo Location. Then, you can select the appropriate solution for your install. These include GEOIP database from Maxmind (for shared hosting) or a server side solutions such as GeoIP Apache or GeoIP PECL modules. Learn more about Visitors geo location in Piwik.

Piwik is the ideal Web Analytics software that respects Privacy, thanks to its Free/Libre software nature and useful Privacy settings, setting it apart from other commercial tools such as Google analytics.

The Piwik report “Pages > Outlinks” shows the list of external URLs that were clicked by your visitors from your website pages. Piwik will track as an “outlink” all clicks on URLs that are not the same domain as the website being tracked. For example, if your visitor click on a link to “piwik.org” on your website “example.org”, this will be counted as an outlink in the report. For each outlink, Piwik will report the number of clicks, and the number of unique clicks. Unique clicks are the number of unique visitors that clicked to a given domain ; for example, if the same visitor clicked 3 times on the same outlink, it will be reported as 3 clicks and 1 unique click. Note that Piwik is not able to track Javascript of flash links. Only HTML links are tracked, eg.

<a href='http://linkedin.com'>LinkedIn Profile</a>

If you wish to not track clicks on your subdomains as outlinks, for example if your website is “example.org/” and you don’t want to track outlinks to “news.example.org”, you can use the Javascript function setDomains(). Read more in the documentation.

Yes, you can use any combination of analytics packages at the same time on your pages. The downside is that your pages might take longer to load as each analytics Javascript tracking code will add some delay to the page load. We also recommend putting the Piwik Tracking code immediately before the closing </head> tag.

The next version of Piwik is most likely planned for sometime in the next four weeks. Piwik is an open source project and community where being able to innovate often is key. All code is developed in the open by multiple developers all around the world.

To stay tuned about the latest Piwik developments, follow the Piwik blog (you can subscribe to our rss feed). If you are interested in technical matters, you may follow our public issue tracker to check our progress, and register with the piwik-hackers mailing list (more info in the developer section). You may also register to our newsletter to receive an update from us two or three times a year.

We maintain Piwik by fixing bugs in new releases, e.g. 2.5.0, 2.6.0, 2.6.1, 2.7.0. We do not support older versions of Piwik nor do we provide patches for older versions of Piwik. Please keep your Piwik updated to the latest version to get security updates and new features.

Each newly released version includes many bug fixes and improvements (sometimes even security improvements!). When you use a Piwik version other than the latest stable version and request our help (for example in the forums or paid support), first make sure you upgrade to the latest stable version.

Piwik analytics UI can be used with any modern browser. To view your reports and dashboard, you can use Firefox, Chrome, Safari, Opera, Chromium, IE or others. Internet explorer is supported from version 8 and newer, but in Piwik 3.0 we will only support IE9 and newer.

Note that while the Piwik UI works with modern browsers, the Piwik JavaScript Tracker code supports as many browsers as possible. including old and outdated browsers.

Piwik is a Free Software, released under the GPL license. It does not have a monetary cost (it is free of charge) and the software license ensures it respects your freedom to use and modify the software. If you would like to pay back a little something, you are welcome to participate in the project and spend some of your time and energy to make Piwik better (the app, website or docs). You may also sponsor a new feature or a bug fix.

Piwik will automatically track visits on mobile phones that use browsers executing Javascript: iOs based devices such as iPhone and iPad, Android based phones or any other modern devices (running Palm Pre, Opera Mobile, Webkit, Mozilla Fennec, etc.). For low-end mobile devices that use browsers which do not execute Javascript, you can manually record visits using the Piwik Tracking API. Learn more about the Piwik Tracking API. See also Does Piwik track visitors without Javascript?

It is allowed to re-sell Piwik and provide it for free, or for a fee. In fact, we maintain a list of Official Hosting Piwik partners which we recommended. If you are providing a service reusing Piwik, you must also reuse the word Piwik with care. Please see the Piwik Trademark page for more details about how to reuse the name Piwik in your modified version of Piwik. In particular, it is not allowed to use Piwik in the URL domain name. We would love to know if you create something interesting using Piwik: drop us a message.

Reusing Piwik in any way is allowed as long as you respect the GPL license. If your product, software, or website uses Piwik but all the code (including your modifications) stays within your company or server, you have the freedom to keep your code and not be bound to the GPL License. For example, you can change the header and footer to reflect your brand, change the colors, or add new features and plugins on your own copy of Piwik.

If you distribute a modified version of Piwik, or a software that includes Piwik as a module, then you must give access to the code source and publish all the code under the GPL.

If you create and distribute a new custom plugin built for Piwik, as a Plugin developer it is allowed to release the plugin under a different license than GPL, as long as the plugin is distributed separately from the Piwik platform. For example some third party plugins from our open Marketplace may be released under a different license than GPL.

Similarly individual components, libraries and plugins within a Piwik instance may be available for reuse under a different license. Please refer to the LEGALNOTICE file included in the distribution.

You may want to learn more about the GPL License and look at the GPL FAQ. As well as respecting the GPL license, you must also reuse the word Piwik with care. Please see the Piwik Trademark page for more details about how to reuse the name Piwik in your modified version of Piwik. Finally, if you modify Piwik and add new features or fix existing bugs, please submit your improvements back to the Piwik team: together we will build the best Free/Libre open analytics platform!

Many medium-high traffic websites successfully use Piwik to track and analyse their website behavior and performance. See this FAQ for general information about high traffic Piwik.
If you want to provide high reliability and better performance in your Piwik setup, you can load balance Piwik services on various servers. It is pretty easy to do so, but make sure you read the following documentation.
Piwik stores all tracking data, reports, users, settings, etc. in the shared mysql database. Piwik also needs to read/create files to store information, caches, temporary files:

config/config.ini.php is used by every request to Piwik. It contains db access, plugins enabled, various settings, etc. The file is only modified when the Super User changes some settings in the Admin interface (activating plugins, changing smtp settings, etc.). This file must be synchronized on every Piwik server.

by default, Piwik uses file session storage, which are usually stored in tmp/sessions, or in the global sessions directory (see php.ini). There is a config setting to enable database session storage, see this faq

When Piwik is used behind a load balancer, here are the steps to follow:

synchronize config/config.ini.php on all servers – make sure the file config/config.ini.php is the same on all servers (using rsync for example).

setup a cron to delete the tracker cache every 5 minutes on all servers: rm piwik/tmp/cache/tracker/*

Piwik should then work as expected in a load balanced environment. For example, a common way to load balance Piwik on 3 servers: Load balancer in front of (2x) webservers which are tracking/querying the (1x) Master mysql DB server. For further optimization, a (1x) UI webserver can be added, to handle all API requests, UI requests, and run the cron archiving. This server can also be doubled and load balanced.

Typically, webserver boxes would be cheap to operate (trackers, frontends and archivers), and the Master DB server would be larger (eg. multiple cores, 16G memory, fast disk access), which could scale to a certain point (1M+ pages per day). Contact Piwik & Scalability Experts if you need professional assistance.

The Piwik team is honoured and grateful to have won several awards over the years, in recognition of building the leading open source web analytics platform used by more than 1,000,000 websites worldwide.

When working on the first version of Piwik, Matthieu was looking for a name that was unique, easy to remember, easy to pronounce, with as few letters as possible, and for which the domain name was still available. After a few hours of deliberation and creative thinking, and becoming inspired by the word “kiwi”, the name “Piwik” was born. The name ‘Piwik’ does not have a particular meaning, but we are on a mission: “To create, as a community, the leading international open source web analytics platform, that gives users full control of their data.”

Piwik is a Free/Libre collaborative effort with many people contributing to the project to make Piwik what it is today. Visit the Piwik Team page to view profiles. You can also be part of the Piwik project! We need help to build the best open source web analytics software, and there are many ways to help whether you are a Piwik user, a developer, a marketing fan, a blogger, or if your native language is not English and you want to translate the software. We hope you will join us! Check out Getting involved in Piwik.