Using Matomo · Knowledge
How does campaign tracking with URL parameters work?
Without parameters, a newsletter click and a bookmark look identical: “direct”. Campaign parameters appended to your links tell Matomo the true source – no plugin, no code, just disciplined URLs.
Matomo natively reads its mtm_ parameters and understands Google's utm_ family as well – whichever you pick, pick one convention and stay with it.
The parameter set, a naming convention – and the two classic pitfalls
The working set is three parameters: campaign name (mtm_campaign – the umbrella, e.g. newsletter-2026-07), source (mtm_source – where the link lives, e.g. newsletter, mastodon, partnersite) and medium (mtm_medium – the channel type, e.g. email, social, banner). A tagged link thus reads: example.org/article?mtm_campaign=launch&mtm_source=newsletter&mtm_medium=email – Matomo files the visit under Acquisition → Campaigns, and suddenly “did the newsletter bring readers?” has a number. The convention part decides whether reports stay readable: lowercase everywhere, hyphens instead of spaces, dates in ISO order, and a small shared table of allowed source/medium values – future you will search for “email”, not for four spellings of it. The pitfalls: first, never tag internal links – a parameterised link from your own menu restarts the visit attribution and corrupts the very data you wanted; parameters belong exclusively on external entry points (mails, posts, ads, partner links). Second, mind the URL hygiene: parameters survive redirects only if the redirect preserves query strings, so test one tagged link end-to-end (the routine from the testing question) before rolling out a whole campaign. Done right, this is the cheapest analytics upgrade a Joomla site can get – pure discipline, zero technology.
Key facts
- Working set: mtm_campaign (umbrella) · mtm_source (where) · mtm_medium (channel type).
- Compatibility: Matomo reads mtm_ natively and understands utm_ links too – one convention, kept.
- Report home: Acquisition → Campaigns – publishing questions get numbers.
- Pitfall 1: never tag internal links – it corrupts visit attribution.
- Pitfall 2: redirects must preserve query strings – test one link end-to-end first.