Matomo: A Self-Hosted Analytics Platform That Puts Data Ownership First
Empowering People Ethically, Matomo is hiring! Join us Matomo is the leading open-source alternative to Google Analytics, giving you complete control and built-in privacy. Easily collect, visualise, and analyse data from websites & apps. Star us on GitHub, Pull Requests welcome!
At a glance
- What is it?
- Matomo is a PHP and MySQL based open source analytics platform that gives website owners full control over their data and privacy. It is a direct alternative to Google Analytics, but the trade-offs are real: you run and maintain it yourself.
- Who is it for?
- Adopt Matomo if you want full control over your analytics data and are willing to run a PHP and MySQL application on your own server. Do not adopt it if you lack the time or skill to maintain a self-hosted application, or if you prefer a fully managed service.
- Can I use it commercially?
- Yes, with conditions. GPL-3.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
- Is it still maintained?
- Yes. The repository received new commits within the last day.
- What is it written in?
- Mainly PHP, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 15, 2026, and from our analysis. They are not legal advice.
DEEP OPEN-SOURCE ANALYSIS
The Problem It Solves: Data Ownership and Privacy
Matomo solves a specific problem: web analytics without handing your visitor data to a third party. Google Analytics is free, but it collects data on someone else's servers. Matomo is installed on your own webserver, so the data lives in your own database. The README states that 'you own your web analytics data' and that the platform can be configured to respect visitors' privacy. This matters for organizations that handle sensitive user data or operate under privacy regulations. The target audience is anyone who runs a website and wants analytics, but especially those who cannot or will not use a cloud service. The project describes itself as 'the leading Free/Libre open analytics platform' and claims to be used on more than 1,400,000 websites. That number is from the README, not an independent verification.
How It Works: A PHP and MySQL Application with a JavaScript Tag
Matomo is a full-featured PHP and MySQL software program. You download it, upload it to your webserver, and run an installation wizard in the browser. The installation process takes about five minutes, according to the README. At the end, you get a JavaScript code snippet. You copy and paste that tag onto the websites you want to track. When a visitor loads a page, the JavaScript sends tracking data back to your Matomo installation. The reports are available in real-time. The architecture is straightforward: a server-side PHP application, a MySQL database for storage, and a JavaScript client for data collection. The README emphasizes that Matomo is OS and server independent, meaning it should run on any server that meets the PHP and MySQL requirements. This design is similar to other self-hosted analytics tools, but Matomo's scope is broader, including e-commerce tracking, goals, campaigns, custom segments, geo-location, and real-time maps.
Getting It Running: Requirements and Installation Steps
The requirements are explicit. You need PHP 8.1.0 or greater, and MySQL version 8.0 or greater, or MariaDB version 10.6 or greater. The PHP extension pdo and pdo_mysql, or the MySQLi extension, is also required. The installation process is simple: download Matomo from matomo.org, upload it to your webserver, point your browser to the directory, and follow the steps. After installation, you add the generated JavaScript code to your pages. For development, the README suggests installing from the Git repository, which gives access to a DDEV environment. There is also a VisitorGenerator plugin that can generate fake data for experimentation. This is useful for testing before you start tracking real visitors. The README does not provide specific commands for installation, so you must rely on the official installation documentation for details.
Plugin Architecture: Extend or Trim the Platform
A key design choice is that Matomo's features are built inside plugins. The README says you can add new features and remove the ones you do not need. You can also build your own plugins or hire a consultant to build custom features. This is a modular approach that gives you control over the platform's footprint. For example, if you do not need e-commerce tracking, you can disable that plugin. If you need a custom report, you can write a plugin. This is a significant advantage over a monolithic analytics tool. However, it also means you need to understand the plugin system to get the most out of Matomo. The README does not explain how to write plugins, but it points to developer.matomo.org for technical changes and guides. The plugin architecture is a double-edged sword: it is flexible, but it adds complexity for non-developers who just want basic analytics.
Limitations and Wrong Tool Cases
The most obvious limitation is that you must host it yourself. That means you are responsible for server maintenance, security patches, database backups, and scaling. If your website gets a lot of traffic, your Matomo installation may become a performance bottleneck. The README does not provide performance benchmarks or scaling guidance. Another limitation is the license. Matomo is released under GPL v3, which is a copyleft license. If you modify the code and distribute it, you must make your modifications available under the same license. This is not a problem for most users, but it can be a concern for companies that want to embed Matomo in a proprietary product. The README also mentions a security bug bounty program, which suggests that security issues are taken seriously, but it also implies that vulnerabilities are possible. For a small website with modest traffic, Matomo is a reasonable choice. For a large enterprise with millions of page views, you would need to invest in infrastructure and expertise.
Alternatives and the Difference in Approach
The obvious alternative is Google Analytics, but the difference in approach is fundamental. Google Analytics is a cloud service: you add a JavaScript tag, and Google handles the data collection, storage, and reporting. You do not control the data or the code. Matomo is self-hosted: you run the software, you own the database, and you can access all statistics through the Matomo Analytics API. Another alternative is a lightweight self-hosted tool like Plausible Analytics or GoAccess, but those are not mentioned in the README. Plausible is also open source and privacy-focused, but it is designed to be simple and lightweight, whereas Matomo is full-featured. The trade-off is between simplicity and features. If you need advanced analytics like e-commerce tracking and custom segments, Matomo is more suitable. If you just need page views and referrers, a simpler tool may be easier to run. The README does not compare Matomo to these alternatives, so this is based on general knowledge.
Maintenance and Upgrade Cost
The maintenance cost is not trivial. You must keep the PHP and MySQL versions up to date, as the requirements state minimum versions. The repository shows a default branch of 5.x-dev and recent releases are alpha versions, which suggests active development and frequent releases. The README mentions a changelog for current and past releases, and a separate changelog for technical changes. This means you need to track releases and apply updates to get bug fixes and security patches. The README does not provide a specific upgrade process, but it does mention a continuous integration server with thousands of unit tests and integration tests, which indicates a mature quality assurance process. The cost of maintenance is not just time; it is also the risk of breaking something during an upgrade. If you are not comfortable with server administration, the maintenance burden could be a reason to choose a cloud service instead. The GPL license also means you have the freedom to modify the code, but that freedom comes with the responsibility to comply with the license terms.
Editorial conclusion
Adopt Matomo if you want full control over your analytics data and are willing to run a PHP and MySQL application on your own server. Do not adopt it if you lack the time or skill to maintain a self-hosted application, or if you prefer a fully managed service. Before deploying, verify that your server meets the stated requirements: PHP 8.1.0 or greater, MySQL 8.0 or MariaDB 10.6 or later, and the pdo, pdo_mysql, or MySQLi extension. Also review the GPL v3 license to understand your obligations, especially if you plan to modify and redistribute the code.
Community notes