Umami on Joomla: free software and who pays for it
Umami is free. That is the reason you are reading this.
It is open source, MIT licensed, cookieless by default and the dashboard looks like someone cared. Compared to GA4 it is a relief. Compared to a 15 USD a month subscription it is free.
There is no Joomla extension. There is no WordPress plugin from the Umami team either so at least Joomla is not being singled out this time.
But the missing extension is the small problem. The bigger one is the word "free", which is doing more work in that first sentence than it looks like.
No time to read this?
Sign up, paste two lines of code and see your real traffic without a cookie banner. No credit card, live in minutes.
Get my free accountWhat free actually means here
Umami is free the way a puppy is free.
The software costs nothing. Running it costs something and the bill arrives in a currency you cannot put on an invoice.
Self hosted Umami needs a Node.js runtime, a Postgres or MySQL database and somewhere to put both. Your Joomla shared host almost certainly cannot run it, because shared hosting gives you PHP and MySQL and nothing that keeps a Node process alive. So you need a VPS or a container platform or one of the managed app hosts.
That is 5 to 10 EUR a month before you have counted a single page view. Umami Cloud exists too and starts around 9 EUR a month for 100,000 events, which is the honest comparison point against Plausible and Fathom rather than against zero.
If you would rather not run a server at all, a hosted GA4 alternative removes this line item.
Then there is the part nobody quotes a price for.
The operations you just signed up for
You are now running a second web application. Not a plugin on your existing site. A separate application with its own runtime, its own database and its own security surface.
That means Node version upgrades, because Node releases go end of life on a schedule and Umami follows the supported ones. It means Postgres maintenance and backups that you test, not just backups that run. It means applying Umami's own updates and it means noticing when your container stops.
None of this is difficult. All of it is yours now.
"Given enough eyeballs, all bugs are shallow."
Eric S. Raymond, in The Cathedral and the Bazaar (1999)
Raymond was right and it is the strongest argument for open source analytics. Thousands of people read this code. If Umami were doing something with your visitors' data that it should not, someone would have found it. You do not have to trust a privacy policy when you can read the source.
What all those eyeballs do not do is restart your container at two in the morning.
That is the split worth being clear about. Open source solves the trust problem completely. It does not touch the operations problem at all and the operations problem is the one that will actually cost you a Saturday.
One thing self hosting does not change is the cookie banner question. Umami counts without cookies either way.
Who self hosting is right for
Genuinely, a lot of people. This is not a warning label.
If you already run a VPS, if you already have Docker Compose files under version control, if patching things is a normal Tuesday for you, then Umami is excellent and the marginal cost of one more container is close to nothing. You get a good tool, full data ownership and no subscription.
If your Joomla site sits on shared hosting and you update it through the administrator interface because that is what you are comfortable with, then self hosting Umami means learning a new stack in order to count page views. That trade can still be worth it. Just make the trade knowingly rather than because a comparison article said free.
Adding the script, once you have it running
Umami gives you one tag:
<script defer src="https://your-umami-host/script.js" data-website-id="..."></script>
Do not paste it into your template's index.php. Joomla templates are updatable software and the next update overwrites your edit without telling you.
Do not paste it into a Custom HTML module either, unless the position renders on every single page and you accept that Joomla's text filters delete <script> on save for every user group except No Filtering.
Use a maintained system plugin. It runs on the finished page so it survives template updates, ignores positions and never meets the text filter. There are several generic script-injection plugins on the directory. Check the last updated date before you install one.
Where StatJolt fits in
StatJolt takes the opposite side of the trade Umami offers.
Umami says: the software is free, you run it. StatJolt says: nothing runs on your side at all.
There is no Node runtime, no Postgres, no container and no VPS. There is a Joomla plugin that you install through the Joomla installer like any other extension. You paste your code into one field and it goes onto every page. Nothing to patch, nothing to back up, nothing to notice at two in the morning.
It also writes nothing to your Joomla database, which matters more than it sounds. Self hosted analytics extensions that keep data in your site's own database turn every page view into a database write on the same database that serves your pages and your backups carry that weight forever.
Cookieless, no consent banner, no personal data. Core Web Vitals, funnels, user journeys and JavaScript errors included rather than sold as a tier. It is 0 EUR until 2027 at any traffic volume and free for low traffic sites afterwards, in exchange for a small badge you can move or hide.
What StatJolt does not give you is Umami's data ownership. Your numbers live on my servers, in the EU, under a privacy policy you have to actually read. If self hosting is a principle for you rather than a cost calculation, that is a real difference and Umami is the better answer.
The short version
Umami is good software and its licence is not the interesting part of the decision.
Self hosting it costs 5 to 10 EUR a month for infrastructure plus an ongoing share of your attention. If you already run servers, that is a rounding error and Umami is a fine choice. If you do not, you are taking on a Node application and a Postgres database in order to find out which of your articles people read.
There is no Joomla extension either way so whatever you pick, put the script in through a system plugin rather than your template. That part is the same regardless of who you end up trusting with the numbers.
Replace GA4 in 2 minutes
Just paste the code and see how much clearer it gets. No cookies, no banner, no consent tool. 0 EUR until 2027, at any traffic level.
Or keep the other path: maintaining a consent tool, modelled data and half an hour a month spent digging through reports.
Get my free account