Required Configuration to Run Piwik

To run Piwik your host needs a couple of things:

  • Webserver such as Apache, Nginx, IIS, etc.
  • PHP version 5.3.2 or greater
  • MySQL version 4.1 or greater
  • (enabled by default) PHP extension pdo and pdo_mysql, or the mysqli extension.

We recommend using at least PHP 5.5 as it is much more memory efficient than previous PHP versions. However Piwik works well with any PHP >= 5.3.2.

To make the most out of Piwik, you also need the PHP GD extension: this is used to generate the sparklines (small graphs), graphs in statistics Email reports, as well as graphs in the Piwik Mobile App.

For medium and high traffic websites, please see the following FAQ for more information: Piwik setup for high traffic websites

Mysql User requirements

When installing Piwik, you will need to specify a MySQL username and password. The MySQL user must have permission to create and alter tables in the database. You can create a new database and Mysql user with the command:

$ mysql -u adminusername -p
mysql> CREATE DATABASE piwik_db_name_here;
mysql> CREATE USER 'piwik'@'localhost' IDENTIFIED BY 'password';
mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES ON piwik_db_name_here.* TO 'piwik'@'localhost' WITH GRANT OPTION;

Replace piwik_db_name_here with the name of your MySQL database (if possible, this database should only have the Piwik tables installed).

The Mysql USER should have the permission to SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES.

If you do not have a server with PHP 5 enabled, we have partnered with high quality web hosts who provide a pre-installed Piwik for a small fee. See the Piwik Hosting page for more information.