On premise install - incl performance

I’m looking to setup a new on premise install which would serve, at a starting point, 10 very low traffic domains/websites. In time hopefully traffic demands will change, and the number of websites will also expand. My questions here are just about getting something setup for now. I’m assuming it’s easy to upgrade later.

I haven’t run matomo on premise previously, so this will also be an experiment (so don’t want major expenditure yet). I liked the cloud solution having used it briefly.

The two low cost options that spring to mind are to either:

  1. Use a virtual node or droplet from Linode or Digital Ocean. I’d get Nginx, PHP7, & MySQL setup. Those solutions start small and low cost and can scale as needed.
  2. I also have a reseller account and a traditional web host that is all PHP7 & MySQL ready. This is super easy, but the service performance is pretty lousy.

I’ve not deployed an analytics service like this before. If underlying matomo infrastructure is running slowly, does this kill performance on the website which has the tracking code installed? Or is the performance issue more around running reports and queries within the matomo application?

Please any thoughts as to:

  1. What minimum hardware spec do I need for running matomo on 10 websites/domains?
  2. Once up and running, is it simply a case of just taking a backup of the database (& perhaps some config), and transferring that to a new better hardware platform?
  3. My easiest & cheapest option is to install on the traditional webhost, is that worth a try?
  4. Any other ideas about this would be welcomed!

Thank you



Personally I am not a big fan of shared web hosts, even though you can definitely run Matomo there. But if you know how to set up MySQL, PHP and Nginx/Apache yourself, you will probably get a lot more performance from a virtual host from DO/Linode/Hetzner Cloud/etc.

If your Matomo is slow, it should not slow down the tracked website as it only starts loading once the user can interact with the website. Of course if the matomo.php request takes longer than the time the user is on the website it starts to be an issue.

That depends a lot on your definition of very low traffic. If we are talking about less than 100 page views per month per site, you will probably be able to host it successfully on a Raspberry Pi.

Having MySQL on an SSD and giving it a bit of memory speeds things up quite a bit. If you don’t need live results but can live with e.g. a 15min delay, you will also be able to speed things up a lot by disabling browser archiving and running a cronjob every 15min.
More than one CPU core is also quite useful so that a background task doesn’t take down the website.

Some more tipps: https://matomo.org/docs/optimize-how-to/

Of course with a vHost you can start on the smallest and increase the size when you need it.

Migrating Matomo should be mostly a matter of transfering the database. In theory you don’t loose anything essential if you only have the database. Copying over the files makes a few things easier though, as it means you don’t have to reinstall plugins, set up geoip databases and your custom logo.

Someone else might have a different opinion on this. But at the very least I’d recommend you to look closely into the technical details of your host so you don’t pay money for 250MB (including config and log file) on an overloaded server with an ancient PHP version and a contract that can’t be canceled below a year, as it happened to me.

If you have any other questions, just ask.

Brilliant, thanks Lukas.

At the moment I already have a reseller account with a traditional hosting service. From what you’ve described and confirmed, particularly around the straight forward nature of migrating platforms, for now I’ll probably start things off with this old host (it won’t cost me anything). I have very low expectations on their performance, but it should be very easy to setup, it will give a chance to test some basics (excluding performance), and then if matomo is all looking good move to a vhost or elsewhere for better performance.

Thank you for your help, enjoy the rest of the weekend!



1 Like