May 6, 2013


How To Install Piwik on an Ubuntu 12.04 Cloud Server


Piwik is an open-source analytics system, which can be hosted at your cloud sever. It provides a more personalized solution than Google Analytics as it lets you have ownership and more control of your data, shows detailed traffic in real-time, and it has more stylistic graphs to see your data more effectively.


First, update Ubuntu for the latest software versions.
apt-get update
apt-get upgrade

APT will inform you about the available upgrade's number and size. Just type "Y" and press ENTER.

During the Package Configuration, APT will ask you "What would you like to do about menu.lst?" Just press ENTER to choose the default option, "keep the local version currently installed." After a few seconds, it will ask you the same question. Press ENTER again.

Now, install LAMP (Linux-Apache-Mysql-PHP) in Ubuntu, by typing in the console:

Use the down arrow key to go to the option, LAMP server, and select it by pressing the Space key. Press the TAB key to choose the OK button and hit ENTER. Tasksel installs the needed packages.

During the installation process, taskel is asking for a new password for the MYSQL root. Type the password of your choosing and press ENTER. At the next screen, type the same password once more and press ENTER.

After this, install some additional software that will be needed later on.
apt-get install unzip php5-gd

Type "Y" and press Enter to continue.

Installing Piwik

Go to the default root directory of Apache.
cd /var/www

Download latest Piwik zip file.

Unzip the downloaded file.

Clean up the unneeded files.
rm *html *zip

Set the correct file permissions.
chown -R www-data:www-data /var/www/piwik

Restart apache.
service apache2 restart

The rest of the process will go through the Web installer.

Complete the Piwik Installation Through the Web Installer

Open your web browser (Chrome, Safari, Firefox) and access the web installer of your Piwik installation by typing in the following URL:

You will enter into Piwik's Welcome Screen. Click Next:


At the System Check Screen, everything should be with green checkmarks. Click Next if you see this. If not, confim if you are using Ubuntu 12.04 and ran all the software updates/upgrades.

At the Database Setup screen, set the database server to be "127.0.01". You can use the phrase, "root", as the login and the same password that you setup during tasksel's MySQL installation procedure. Set a name for your database, eg. "piwik", and click Next.


Next screen should show: "Tables created with sucess!". Just click Next.

At the Super User screen, set the user login and password for logging into Piwik Analytics. Then, write your email address and your email preferences. Click Next when finished.

When you enter into Setup a Website screen, set the website's name and URL of the website where you will want to install the Piwik tracking code later. You may also configure the website's timezone, and set if it's an ecommerce site or not.


The next screen gives you the Tracking code which should be copied and pasted just before the closing tag (</body>) of your website.


If you use a CMS (Content Management System) like Wordpress or Drupal, there are two ways to install the piwik tracking code:
1. Either copy and paste the code from this screen at your HTML templates files.
2. Follow the instructions that the piwik modules/extensions for these CMSes provide.

Congratulations! Your Piwik is now installed to your cloud server.

Now, to confirm if your Piwik is fully setup and accessible, enter the URL below at your web browser's address bar.

Then login using your piwik admin login user and password.


Article Submitted by: Panmetro Web Design & Development

Share this Tutorial

Vote on Hacker News

Try this tutorial on an SSD cloud server.

Includes 512MB RAM, 20GB SSD Disk, and 1TB Transfer for $5/mo! Learn more

Create an account or login:


Write Tutorial
  • Gravatar anuragr 11 months

    can we have a Nginx/uWSGI instructions for piwik too? That'd be great.

  • Gravatar Kamal Nasser 11 months

    @anuragr: Take a look at

  • Gravatar jr5689 9 months

    I request an article on installing the GeoIP Geo location PECL extension. The Piwik version seems to miss out or assume half the steps. Thanks...

  • Gravatar Santiago 8 months

    @jr5689 I have written a detailed article about GeoIP PECL it should be published in a few hours~days.

  • Gravatar Etel Sverdlov 8 months

    @jr5689 and @Santiago -- here it is! Thanks, Santiago

  • Gravatar yevgtan 6 months

    I came to the step "Complete the Piwik Installation Through the Web Installer" but I have an codeigniter installed on my server. (Note: codeigniter redirects urls to its inner functions) So should i need to uninstall codeigniter to finish the piwik installation? And basically i'm installing piwik to have possibility to use GeoIP. May be there is no need to continue the installation of piwik?

  • Gravatar Kamal Nasser 6 months

    @yevgtan: You do not need to uninstall CodeIgniter, it should work fine even with CodeIgniter installed.

    And basically i'm installing piwik to have possibility to use GeoIP. May be there is no need to continue the installation of piwik?
    Piwik is basically a self-hosted version of Google Analytics -- is that what you need?

  • Gravatar charles about 1 month

    How do you point it do a domain, so I don't have to use a ip address. thanks!

  • Gravatar Kamal Nasser about 1 month

    @charles: Check out

  • Gravatar tmberthold 14 days

    I run an OpenCPU (nginx) server on Ubuntu 13.10 in my droplet. At first piwik did not work, then I noticed the tracking code contained "://ocpu/piwik/"; Once I changed that to ":///piwik/"; it worked (the android phone app. The desktop OS browser version still gives me Error: Form security failed. Please reload the form and check that your cookies are enabled. If you use a proxy server, you must configure Piwik to accept the proxy header that forwards the Host header. Also, check that your Referrer header is sent correctly.)

  • Gravatar tmberthold 14 days

    I meant change that to ":/my-IP//piwik/"; (substitute your IP or domain name)

Leave a Comment

Create an account or login: