Integration & tools · Knowledge
How do I integrate Matomo into Joomla?
Three routes lead to Matomo on a Joomla site: a plugin (the simplest), a template override in your own template, or a tag manager as an extra layer.
The prerequisite is always a running Matomo instance – self-hosted on your own server or as part of a hosting package; Joomla only delivers the snippet.
The three ways compared – and the setup that follows
The plugin route wins for nine out of ten sites: a system plugin inserts the tracking code into the head section of every page – update-safe, template-independent, removable in one click. Our free JStats plugin does exactly that (the in-house recommendation of this site, clearly labelled – the open source code keeps us honest). The template route means adding the snippet to your template's index.php or a head override: full control, but every template update needs a check, and template switches silently lose the code. The tag manager route bundles many tags centrally – powerful for marketing-heavy setups, oversized for a typical Joomla site that needs exactly one analytics snippet.
Whatever the route, the setup afterwards is identical: create the site in Matomo and note the site ID, paste the official snippet, then harden the installation – IP anonymisation on, cookieless mode considered, report archiving via cron. The final step is always the test visit in a private browser window; the visit must appear in Matomo's Visits Log before you trust any number.
Key facts
- Prerequisite: your own Matomo instance (PHP/MySQL) – Joomla only delivers the snippet.
- Simplest route: a system plugin such as our free JStats (in-house recommendation, open source).
- Template route: full control, but check after every template update – and code is lost on template switches.
- Mandatory hardening: IP anonymisation, cron-based archiving, optionally cookieless mode.
- Acceptance test: private-window visit appears in the Visits Log – only then is the setup done.