Can you run Matomo on Windows?
Matomo has become the de facto standard for GDPR secure web analytics and many organisations move over to Matomo. You can even install Matomo in your existing Windows environments and this might be very tempting but I would really recommend you not to. In this post I will explain why.
Matomo is a great open source project based on many other open source projects
This means that Matomo will work with a lot of other existing technologies, this is one of the great things with open source.
To run Matomo (Piwik) your host needs a couple of things:
- Webserver such as Apache, Nginx, IIS, LiteSpeed, etc.
- Matomo 4.x requires PHP version 7.2.5 or greater. Matomo fully works with PHP 8 as well. (the older Matomo 3.x required PHP version 5.5.9 or PHP 7.x)
- MySQL version 5.5 or greater, or MariaDB
- (enabled by default) PHP extension pdo and pdo_mysql, or the mysqli extension.
- Matomo can be run on any operating system such as Linux (Ubuntu, RedHat, CentOS, Raspberry Pi OS, etc.), Windows, macOS Server or FreeBSD.
Understanding open source is key to mastering it
Today there is no doubt that open source is superior to proprietary software but you need to use it wisely and maintain it properly.
While this post is not about maintaining open source on a general level most of the common best practices applies to Matomo as well.
Matomo has an active community and history of consistent activity and contributions, this is great and indicates that it will continue to be relevant.
With Matomo as with any software the adoptions of the software set up is key to success when you integrate it into you organizations echo system.
Be smart not lazy
While it might look easy to reuse existing installations and infrastructure Matomo is a software that will require attention over time while your system grows in usage and data volumes. This is where the windows option will start to create problems for you.
- Even though Matomo supports Windows, certain plugins or extensions might be optimized for Linux. It's always good to test and ensure that all features you need work seamlessly on Windows.
- A significant portion of web applications, including Matomo, have a larger user base on Linux. This means you might find more community resources, tutorials, and troubleshooting tips for a Linux environment.
- Historically, Linux has been favored for web hosting due to its performance and resource-efficiency. While Windows Server and IIS have come a long way and can be highly performant, for very high traffic sites, Linux still have a clear edge.
- Linux is often chosen for web servers due to its strong security track record. While Windows Server can be secured effectively, it is generally perceived to be more vulnerable due to its larger attack surface.
Known issues with Matomo on windows
Less control over scheduled tasks since cron (on Linux)is what Matomo is built for. The Windows alternative (Task Scheduler) will be a hack.
Issues with File permissions since it works. lot different on windows compared to Linux.
While MySQL or MariaDB can be run on Windows, there might be configuration nuances that differ from Linux. Ensuring optimal performance and security settings might require Windows-specific tweaks.
Some PHP extensions that Matomo requires or recommends might not be enabled by default on Windows installations of PHP. You'd need to ensure all required extensions are installed and enabled.
Conclusion
Personally I would never run any Open source software on Windows, since I have seen so many problems over the years (not just for Matomo) that has been related to the fact that Windows has and will never be to focus platform of any open source software project (unless distributed by Microsoft).