Matomo vs Umami: which self-hosted analytics fits your team
Choose Matomo when your team needs the full reporting depth of a web analytics suite. A team replacing Google Analytics that relies on ecommerce reports, segmentation, custom reports and the Google Analytics importer should start with Matomo. The importer brings in aggregated report data from a Google Analytics property, but Matomo's own FAQ says it does not import raw visit and action data, so the Visitor Log, Ecommerce Log, Custom Reports and Segmentation do not work for imported reports, and some reports such as Funnels are not imported. Matomo On-Premise is free, with unlimited users and hits, so the decision is about the server you will run, not a license fee.
Choose Umami when you want a small, cookieless install that answers simple traffic and campaign questions. Umami is MIT licensed, runs on Node.js with PostgreSQL, and ships a Docker Compose file that starts it with a bundled database, which keeps the first deployment compact. If your marketing team mainly needs visitors, sources, campaigns and conversions, that scope may be enough. Umami Cloud pricing is separate from the free self-hosted install, and the pricing page lists features such as email reports and a streaming API as Cloud-only, so confirm whether any of them are required before you assume parity.
The decision turns on four things: the reporting depth your analysts need, your consent posture under the ePrivacy rules in each market you serve, whether you need premium plugins such as Matomo's Heatmap and Session Recording (sold under the InnoCraft EULA rather than the GPL), and the server footprint your team is willing to operate. Map each Google Analytics report your business reads today against both products before you migrate. Ask your DeployOpen contact to size the stack for your expected monthly traffic and confirm the version and PHP or Node.js requirements against the current documentation.
Which platform fits which scenario
This table matches common buyer situations to the platform that usually fits them, with the condition that drives each choice. Read each row against your own traffic, reporting needs, consent position and team skills, because several rows turn on a single requirement.
| Scenario | Better fit | Condition that drives the choice |
|---|---|---|
| A small site that needs traffic and campaign numbers | Umami | Umami covers traffic, campaigns and conversions with a lighter stack. It fits when the questions are simple and event volume stays within what one small PostgreSQL install can handle. |
| A marketing team that needs segments, funnels and custom reports | Matomo | Matomo offers a deeper reporting suite. Choose it when segmentation, funnels and custom reports are daily work, not occasional checks. |
| A team migrating from Google Analytics with history to keep | Matomo | The Google Analytics Importer brings aggregated reports into Matomo, but it does not import raw visit data. Visitor Log, Ecommerce Log, Custom Reports and Segmentation do not work on imported reports, and some reports such as Funnels are not imported. Confirm which reports you must keep before you choose. |
| A team that wants no cookie banner on its site | Umami | Umami is designed to work without cookies and without automatic collection of personal data. Matomo can be configured for consent exemption under some EU authorities' rules, but that depends on keeping the configuration narrow. Confirm the position with your regulator or legal counsel. |
| A team that plans to add heatmaps or session recordings | Matomo | Matomo's Heatmap and Session Recording plugin is a paid premium plugin under the InnoCraft EULA. Per Matomo's ePrivacy FAQ, adding heatmaps or session recordings removes the CNIL consent exemption, so a cookie banner may be needed. Umami does not offer these features in its self-hosted edition, so confirm your need first. |
| A team with no PHP or MySQL skills but comfortable with Docker | Umami | Umami ships a prebuilt Docker image and a Compose file that starts a bundled PostgreSQL database. Matomo needs PHP, MySQL or MariaDB and a web server, so the operating skill set is different. |
| A team that already runs PHP and MySQL in production | Matomo | Matomo's requirements fit an existing PHP and MySQL estate. Confirm the version floors for your target release, since Matomo 6.0.0 needs PHP 8.1 or newer and MySQL 8.0 or newer or MariaDB 10.6 or newer. |
| A team that needs email reports or a streaming API without running servers | Umami Cloud | Umami's pricing page states that Umami Cloud adds email reports and a streaming API that the self-hosted version lacks. Matomo Cloud is the hosted option for Matomo, with data stored in Frankfurt, Germany. |
How Matomo and Umami are built and deployed
Matomo and Umami make different bets on what runs under the analytics layer. Matomo asks you to run PHP, MySQL or MariaDB and a web server, while Umami asks for Node.js and PostgreSQL, and the choice shapes how you patch, back up and scale each one.
Matomo's PHP and MySQL stack
Matomo runs on PHP behind a web server such as Apache, Nginx, IIS or LiteSpeed, with MySQL or MariaDB as its database. Matomo 4.16 and 5 run on PHP 8 with MySQL 5.5 or later or MariaDB, while Matomo 6.0.0 in beta needs PHP 8.1 or newer and MySQL 8.0 or newer or MariaDB 10.6 or newer. Check whether your current database version can move to the 6.x line before you plan an upgrade.
Sizing a single Matomo server
Matomo's requirements FAQ sizes one server with at least 4 CPUs, 8 GB of RAM and 250 GB of SSD for up to 1 million pageviews a month. Storage grows with the raw and archived data you keep, so ask how long your reports must cover before you size the disk. Benchmark your own traffic before you commit to hardware.
Splitting Matomo app and database
For up to 10 million pageviews a month, Matomo's FAQ recommends separate app and database servers, each with 8 CPUs and 16 GB of RAM. This adds a second system to patch, monitor and back up, and it needs private networking between the tiers. Ask your platform team whether they can run and restore the database tier independently.
Umami's Node.js and PostgreSQL stack
Umami is a Node.js application that stores data in PostgreSQL. A source install requires Node.js 18.18 or newer, and Umami supports PostgreSQL from version 12.14. Your team needs to own the Node runtime lifecycle along with the database, so check that your build pipeline can keep Node versions current.
Prebuilt image and bundled PostgreSQL
Umami publishes a prebuilt Docker image and a Docker Compose file that starts the application with a bundled PostgreSQL database. This gets a pilot running quickly, but a bundled database is usually not what a production backup plan expects. Decide whether the bundled database stays in production or moves to a database service you already operate.
Patching and upgrade effort
Matomo upgrades touch PHP, the database and the application together, and Matomo 6.0.0 still sits in beta. Umami releases move quickly, with v3.4.0 published on September 17, 2026, so a container image update is the usual path but still needs testing against your database schema. Ask each vendor which versions carry security fixes and how long each release line is maintained.
How the two compare on features, licensing and operations
This table sets Matomo's full analytics suite against Umami's lighter footprint across license, release status, reporting, paid add-ons, cookieless positioning, imports, databases and hosting. Read each row with your own reporting requirements and consent position in mind, since the right tool depends on which of these matter most to your team.
| Dimension | Matomo | Umami |
|---|---|---|
| License | GPL-3.0 (GPLv3) for the GitHub repository, with the On-Premise Community edition free forever | MIT license, with self-hosting free and Umami Cloud as a paid option |
| Latest release facts | Matomo 5.14.1 is the latest stable version, released October 4, 2026; Matomo 6.0.0 has been in beta since September 9, 2026 | Umami v3.4.0 was published September 17, 2026, following v3.3.1 and v3.3.0 |
| Reporting depth | Full web analytics suite with a broad report set; confirm the exact reports and ecommerce coverage in your target version | Web and product analytics covering traffic, campaigns and conversions; confirm which reports your required version includes |
| Paid premium plugins | Heatmap and Session Recording is sold per number of users under the InnoCraft EULA, not the GPL, with a 30-day free trial | No premium plugin equivalent is listed in the supplied facts; Umami Cloud adds features such as email reports and a streaming API |
| Cookieless tracking | Consent exemption depends on configuration; CNIL treats some setups as exempt, but adding User ID, heatmaps or session recordings removes that exemption | Positioned as working without cookies, cross-site tracking or automatic collection of personal data; confirm the consent position with your regulator |
| Google Analytics import | Free GA importer plugin for On-Premise under GPL v3+, but imports aggregated data only, so Visitor Log and Segmentation do not work for imported reports | No import capability is listed in the supplied facts; confirm with Umami before planning a migration |
| Database support | MySQL 8.0 or newer or MariaDB 10.6 or newer for Matomo 6.0.0; PHP 8.1 or newer | PostgreSQL from version 12.14, with Node.js 18.18 or newer for a source install |
| Managed-hosting and deployment | Self-hosted on Apache, Nginx, IIS or LiteSpeed, or Matomo Cloud with data stored in Frankfurt, Germany | Prebuilt Docker image and a Compose file with bundled PostgreSQL, plus deployment guides for managed hosting platforms |
What is free and what is paid on each platform
Matomo On-Premise is the free, self-hosted edition. The pricing page lists it as free forever with unlimited users and hits, with forum support. That means no license fee scales with traffic or headcount, so your recurring costs are the servers, the database, storage, backups and the people who run the installation. Support from the community forum is not a service level, so budget for internal ownership or a separate support arrangement.
- No license fee for the core product: the GPL-licensed edition carries no per-user or per-hit charge.
- Unlimited users and hits: the free tier has no traffic caps, so growth affects hardware, not licensing.
- Forum support only: community help is the default; any SLA-backed support must be contracted separately.
- Infrastructure and staff are the real cost: you pay for compute, SSD storage, backups and the time to upgrade.
- Premium plugins are extra: paid add-ons such as Heatmap and Session Recording are not part of the free edition.
Before committing, confirm with Matomo which features your team needs and whether they are in the free edition or a paid plugin.
Matomo Cloud is the hosted option, with plans starting at 29 (excluding tax) per month on the pricing page, for tiers from 50,000 to 10 million hits a month. Cloud data is stored in Frankfurt, Germany. Paid premium plugins, such as Heatmap and Session Recording, are sold per number of users under the InnoCraft EULA rather than the GPL, and come with a 30-day free trial.
- Hit-based cloud plans: the starting price is 29 (excluding tax) per month, and higher tiers scale with monthly hits up to 10 million.
- Frankfurt data location: Cloud data is stored in Frankfurt, which matters for data residency reviews.
- Premium plugins sold per user: Heatmap and Session Recording are priced by number of users, not hits.
- Different license for plugins: premium plugins fall under the InnoCraft EULA, so read its terms with your legal team.
- 30-day trial: the premium plugin listing offers a 30-day free trial before purchase.
Check the current tier, tax treatment and plugin pricing on the Matomo pricing page, and confirm which plugins your use case needs before you compare totals.
Umami is MIT-licensed and can be self-hosted for free, according to its pricing page. A self-hosted install runs on your own infrastructure, so you pay for hosting, the PostgreSQL database, backups and the work of upgrading. Umami publishes a prebuilt Docker image and a Docker Compose file that starts Umami with a bundled PostgreSQL database, which lowers the setup effort for a small deployment. Source installs require Node.js 18.18 or newer.
- No license fee for self-hosting: the MIT license and the free self-hosted install carry no recurring software charge.
- Docker path for a small install: the Compose file bundles PostgreSQL, which keeps initial setup short.
- Source install requirements: a source build needs Node.js 18.18 or newer, and PostgreSQL 12.14 or newer is supported.
- Self-hosting costs are yours: hosting, backups, monitoring and upgrades are your responsibility.
- Cloud-only features stay out: email reports and a streaming API are part of Umami Cloud, not the self-hosted version.
Confirm your hosting, backup and upgrade plan, and check the current features on the pricing page before assuming parity with Umami Cloud.
Umami Cloud is the paid hosted service. The pricing page lists Hobby at $0 per month for up to 100K events with 6 months of retention, Pro at $20 per month for 1 million events with 2 years of retention, and Business at $200 per month for 10 million events with 5 years of retention. Overage is billed per extra event: $0.00003 on Pro and $0.00002 on Business. Enterprise has custom pricing and retention.
- Hobby tier: $0 per month for up to 100K events with 6 months of retention.
- Pro tier: $20 per month for 1 million events with 2 years of retention.
- Business tier: $200 per month for 10 million events with 5 years of retention.
- Overage rates: $0.00003 per extra event on Pro and $0.00002 on Business.
- Cloud-only features: email reports and a streaming API are offered on Umami Cloud, not the self-hosted build.
Model your monthly event volume and retention needs against these tiers, and ask Umami whether taxes or currency conversion apply to your location.
What drives running cost on each platform
Matomo and Umami both start free to download, but what you pay to run them depends on server size, database work, upgrade cycles and the people who maintain them. The cards below separate one-time setup from recurring spend so you can ask each vendor or partner for a quote that covers the same ground.
Server size and traffic volume
Matomo's requirements FAQ sizes a single server with at least 4 CPUs, 8 GB of RAM and 250 GB of SSD for up to 1 million pageviews a month, and recommends separate app and database servers with 8 CPUs and 16 GB of RAM each for up to 10 million. Umami's install documentation has no comparable sizing table in the supplied facts, so confirm its footprint with your own traffic test. Hosting is the recurring cost that scales with pageviews on the Matomo side, so ask for both sizing tiers in any quote.
Database administration
Matomo runs on MySQL 8.0 or newer or MariaDB 10.6 or newer for Matomo 6.0.0, so your team needs MySQL or MariaDB backups, tuning and growth planning. Umami runs on PostgreSQL from version 12.14, and its Docker Compose file bundles a PostgreSQL database. Ask who owns backups, restore tests and storage growth for the database in each option, because that work recurs for the life of the install.
Upgrade effort and release cadence
Matomo 6.0.0 is in beta, and the latest stable release is 5.14.1, so a move to 6.x will need a planned upgrade and plugin compatibility check. Umami shipped v3.3.0, v3.3.1 and v3.4.0 within about five weeks in the supplied release history, which means more frequent minor upgrades to schedule. Budget time for testing each release against your tracking scripts and dashboards, whichever platform you choose.
Staff skills in PHP or Node.js
Matomo is a PHP application, so patching and troubleshooting depend on engineers who can work with PHP, web server configuration and MySQL. Umami is a Node.js application that needs Node.js 18.18 or newer for a source install, so Node.js skills or a prebuilt Docker image are the deciding factor. Staff time on the platform you cannot already support is a recurring cost, so price it into the quote explicitly.
Premium plugin subscriptions on Matomo
Matomo On-Premise is free, but the Heatmap and Session Recording plugin is a paid premium plugin sold per number of users under the InnoCraft EULA, with a 30-day free trial. Renewals recur, and the plugin also changes your consent position under the CNIL guidance in Matomo's ePrivacy FAQ. Ask for the per-user price, renewal terms and the number of users in scope before you commit.
Umami Cloud tiers versus self-hosting
Umami is free to self-host, but Umami Cloud Hobby is $0 per month for up to 100K events, Pro is $20 per month for 1 million events and Business is $200 per month for 10 million events. Overage on Pro is $0.00003 per extra event and $0.00002 on Business, and email reports and a streaming API are cloud-only features. Compare the cloud plan total against your own hosting, patching and staff time, and confirm which features you need before choosing.
Moving data between Matomo and Umami
This sequence shows how a team moves tracking from Matomo to Umami or the reverse without losing the history it needs. Each step produces a record that the next step depends on, so the cutover happens only after the team knows what carries over and what must be rebuilt.
Inventory tags, goals and reports
The team that owns the analytics setup lists every site, tracking tag, goal, event, and custom dimension in the current tool, along with the teams that read each report. Developers confirm where the tag is deployed, including tag managers, templates and single-page app routes. The output is a written inventory that maps each item to a field or report in the target tool. The step is done when every site and goal has a named owner and a matching entry in the target tool or an explicit decision to drop it.
Decide which historical data to keep
Stakeholders decide which historical periods and reports must remain available for reporting, audits or year-on-year comparison. Compliance and privacy leads confirm how long the business may retain the data under the organization's own policy. Because Umami and Matomo store data differently, the team should not assume raw events will move between them. The output is a retention decision for each report family. The step is done when the decision is signed off and the archive location is named.
Export or rebuild reports
For a move into Matomo from Google Analytics, the Google Analytics Importer can bring in aggregated report data for a new Matomo site. It does not import raw visit and action data, so the Visitor Log, Ecommerce Log, Custom Reports and Segmentation do not work for imported reports, and some reports such as Funnels are not imported. Moves between Matomo and Umami generally require the team to export what it needs as files and rebuild dashboards in the target tool, and the team should confirm the export options available in the version it runs. The output is a list of reports marked as carried over, archived or rebuilt. The step is done when each report on the inventory has one of those three labels.
Run both tools in parallel
The team deploys the new tool alongside the existing one, typically with the same tag firing to both during a set period. Analysts compare headline numbers such as visits and pageviews, and note where they differ because of different counting rules, bot filtering or cookie behavior. The team should confirm the expected variance with the vendor documentation rather than assuming the figures match. The output is a short reconciliation record for each key metric. The step is done when analysts sign off that the differences are explained.
Update tag deployment and consent settings
Engineers change the production tag, tag manager configuration and any server-side hooks to point at the target tool. Privacy staff review the consent setup for the new configuration, since Matomo's exemption under CNIL criteria depends on which features are enabled, such as User ID, heatmaps or session recordings. Umami's cookieless design changes what the consent banner must cover, so the team should check the current guidance with its regulator or counsel. The output is a dated change record and a tested consent flow. The step is done when a test site shows the tag firing with the expected consent state.
Retire the old server
Once the parallel run is signed off and the archive exists, the team stops the old tag, takes a final backup of the database and application files, and confirms that the archive can be restored. The team then shuts down the old server and removes its DNS, firewall and certificate entries after the retention period set in step two has been covered by the archive. Operators keep the final backup under the same access controls as the source data. The output is a decommission record. The step is done when the backup restore has been tested and the server is removed from monitoring.
Where Matomo and Umami implementation projects usually run long
Most overruns come from scope that was assumed rather than written down. On the Matomo side, the work spans server sizing, database tuning, plugin configuration and consent setup. Matomo's requirements FAQ separates a single server sized for up to 1 million pageviews a month from a split app and database layout for up to 10 million, so the first decision is which tier your traffic actually sits in. Tuning the MySQL or MariaDB side, choosing which premium plugins to enable and deciding how the consent configuration is set for each jurisdiction each take their own hours. Ask the implementer to list each of these as a separate deliverable in the written scope.
On the Umami side, the work centers on the database, the container layer and access controls, plus the tag rollout. A Docker Compose install with the bundled PostgreSQL is quick to start, but production readiness still depends on how the database is backed up, how the container is updated and who holds administrator access. The slip point that appears most often on both platforms is tag coverage across sites: every property, subdomain, single-page app route and checkout flow must carry the tracking code, and each missed template creates a gap that someone finds months later. Ask for a tag inventory as a named deliverable.
Two expectations also tend to stretch timelines. The first is historical data. Matomo's Google Analytics Importer brings in aggregated report data only, so Visitor Log, Segmentation and Funnels do not carry over, and stakeholders who expect those views need to hear that before the project starts. The second is consent review. If your team plans to use features that remove the consent exemption, such as heatmaps or session recordings, legal review takes longer than the technical work. Scope and timelines for either platform are agreed in writing before work starts, so put the historical data, tag inventory and consent review into that document explicitly.
Questions buyers ask before choosing Matomo or Umami
How much effort does self-hosting Matomo take compared with Umami?
Matomo takes more effort because it is a larger PHP and MySQL application with more reports, plugins and sizing decisions. Matomo's requirements FAQ sizes a single server with at least 4 CPUs, 8 GB of RAM and 250 GB of SSD for up to 1 million pageviews a month, and recommends separate app and database servers with 8 CPUs and 16 GB of RAM each for up to 10 million pageviews a month. Umami is a Node.js application on PostgreSQL, and its Docker Compose file starts the application with a bundled PostgreSQL database, so a small install has fewer moving parts. Effort rises with traffic, retention and how much you customize. Ask any consultant to separate one-time setup from recurring upgrades, backups and monitoring, and to state which upgrade path they will follow for each tool.
How long does it take to migrate from Matomo to Umami or back?
The duration depends on data volume, the reports you need to keep and how much history must be preserved, and no supplied fact gives a migration timeline, so treat any figure as something to confirm in a written scope. Moving historical data between the two tools is not a simple export, because each stores data in its own schema and reports differ. Plan for mapping goals, events and campaign tags, rebuilding dashboards, and running both tools in parallel during cutover. Ask the consultant to list which historical data will move, which will stay in the old tool as an archive, and who signs off on the cutover date.
Can an internal admin run Matomo or Umami without outside help?
An internal admin can run a small Umami install if the team already operates Node.js services and PostgreSQL, and the Docker image and Compose file reduce first-run work. Matomo is also manageable by a capable sysadmin, but it needs someone comfortable with PHP web servers, MySQL or MariaDB tuning, archiving and plugin updates, and sizing as traffic grows. Matomo's requirements FAQ also sets minimum versions, and Matomo 6.0.0 needs PHP 8.1 or newer and MySQL 8.0 or newer or MariaDB 10.6 or newer, so upgrades touch the whole stack. Decide who owns patching, backups and restores before choosing, and ask a partner to document the runbook so the knowledge stays in-house.
Can Google Analytics history move into Matomo or Umami?
Matomo can import Google Analytics history, but only as aggregated report data. Matomo's Google Analytics Importer is a free download for Matomo On-Premise under GPL v3+, and it brings reports into a new Matomo site. Matomo's FAQ on import limitations states that the Visitor Log, Ecommerce Log, Custom Reports and Segmentation do not work for imported reports, and some reports such as Funnels are not imported. The supplied facts do not describe a Google Analytics import path into Umami, so confirm that capability directly with Umami before you plan around it. Ask any consultant which reports the business relies on and whether those survive the import.
Does Matomo or Umami remove the need for a cookie banner?
Neither tool removes legal obligations by default, so the answer depends on configuration and the regulator in your market. Umami describes itself as working without cookies, cross-site tracking or automatic collection of personal data. Matomo's ePrivacy FAQ says France's CNIL recognizes some audience measurement trackers as exempt from consent when they are limited to purposes such as performance measurement, collect only anonymous statistics and exclude marketing measurement. The same FAQ says that features such as User ID, heatmaps or session recordings remove that exemption. Have your privacy counsel review the exact configuration, the jurisdictions you serve and your own consent records.
When is it worth paying for Matomo Cloud or Umami Cloud?
Pay for a cloud plan when the operating burden of a server costs more to your team than the subscription, or when you need features the cloud edition adds. Umami's pricing page says Umami Cloud adds features the self-hosted version lacks, such as email reports and a streaming API. Umami Cloud Hobby is listed at $0 per month for up to 100K events with 6 months of retention, Pro at $20 per month for 1 million events with 2 years of retention, and Business at $200 per month for 10 million events with 5 years of retention. Matomo Cloud plans start at 29 (excluding tax) per month for tiers from 50,000 to 10 million hits a month, with data stored in Frankfurt, Germany. Compare these against your event volume, retention needs and data location requirements.
What should a consultant quote include for a Matomo or Umami install?
A useful quote states the scope in writing before work starts, including the tool, the hosting environment, the traffic level it is sized for, and the data you plan to migrate. It should list deliverables separately: installation, configuration, consent setup, Google Analytics import if needed, dashboards, backups, documentation and handover. Ask which items are one-time and which recur, such as upgrades, monitoring, retainers or continuous support. Request the assumptions behind sizing and the upgrade path for each version you will run. DeployOpen plans, implements, hardens, backs up, upgrades and documents self-hosted platforms in your own infrastructure, and its engagements are typically fixed-scope with a quote following from the written scope.
Official sources for Matomo and Umami facts
Every version number, license term, hardware figure and price in this comparison traces back to a primary document, and the first check before any purchase or sizing decision is the vendor's own page on the day you buy. Matomo's license is stated in the Matomo LICENSE file, which is on a development branch, so confirm the license on the release tag you intend to deploy. Matomo's changelog is the place to confirm which stable and beta versions exist at the moment you read this, since the beta line moves quickly.
For hosting and cost questions, start with Matomo's requirements FAQ and pricing page. The requirements FAQ sets the minimum PHP and database versions for each major release, so a Matomo 6 upgrade plan should be checked against your current PHP and MySQL or MariaDB versions before anyone schedules work. Check the Matomo plugin marketplace listing for any premium plugin you plan to license, because its license, per-user pricing and trial terms are set there rather than by the GPL.
Migration and consent questions have their own sources. The Google Analytics import limitations FAQ explains which reports do not carry over, and the ePrivacy FAQ explains how features such as User ID or session recording affect consent exemptions. Confirm the current position with your data protection authority or counsel, not only with the vendor. On the Umami side, check the Umami repository, its releases page, the installation docs for Node.js and PostgreSQL requirements, and the pricing page to see which features stay exclusive to Umami Cloud.

