Privacy

Matomo and privacy: GDPR and TDDDG

Matomo runs on your own server, and the data is yours. That is a good start, but not yet a privacy-friendly configuration. Here are the two questions you need to answer, the Matomo settings that go with them and what is set by default.

Matomo On-Premise has a big advantage: the data sits on your server, no vendor analyses it for its own purposes, and nothing goes to a third country. Still, Matomo processes personal data such as IP addresses and visitor identifiers. And measuring as such can touch the visitor’s device. That is why every Matomo installation comes with two questions and a handful of settings.

Two questions: TDDDG and GDPR

First: does Matomo access the device? In Germany this is governed by § 25 TDDDG (the Telecommunications Digital Services Data Protection Act, formerly TTDSG), which implements Article 5(3) of the EU ePrivacy Directive. The provision does not only apply to cookies. In principle, any storing of information on the device and any access to information already stored there needs consent, unless it is strictly necessary for the service the user requested. Web analytics is generally not considered strictly necessary.

Second: on what basis do you process the data? Once § 25 TDDDG is satisfied, the subsequent processing of personal data needs a legal basis under the GDPR: either consent or, for data-minimised measurement, usually legitimate interest. A masked IP address, short retention periods and an easy way to object fit with that.

Two questions in two places: § 25 TDDDG concerns storing on and reading from the device, the GDPR the subsequent processing of personal data on your server. You answer both, in this order.

For Matomo, the first question means in concrete terms:

What Matomo can do Does it touch the device? How to switch it off
Set cookies (_pk_id, _pk_ses, _pk_ref) yes requireCookieConsent or disableCookies
Read device properties such as screen resolution and client hints yes disableBrowserFeatureDetection
Store something in local storage, for example a fire limit in Tag Manager yes do not use such features, or only after consent
Derive browser, operating system and device type from the user agent the browser sends anyway evaluated on the server nothing needed

For the first question you have three options:

Option Tracking code What happens
Measure without consent requireCookieConsent or disableCookies, plus disableBrowserFeatureDetection Matomo measures without cookies and reads no device properties
Without at first, with cookies after consent requireCookieConsent, the consent tool calls rememberCookieConsentGiven Whoever consents is recognised across visits
Only measure with consent requireConsent, the consent tool calls rememberConsentGiven Without consent the tracker sends nothing at all

The second call in the first option is often forgotten: by default Matomo reads device properties through browser feature detection, and that is also an access to the device. How to set up Matomo without cookies, including in Tag Manager, what is then missing from the reports and how to check in the browser that really nothing is stored is described in detail under Matomo without cookies.

The privacy settings in Matomo

Under Administration > Privacy > Anonymize data you find the most important switches. What applies by default and what each one does:

Setting Default What it does
Anonymize Visitors’ IP addresses on, 2 bytes Matomo stores only part of the IP. The more bytes, the less precise the location
Also use the anonymized IP addresses when enriching visits no Set to no, Matomo determines the location with the full IP and only masks it afterwards
Replace User ID with a pseudonym off Matomo stores a hash instead of the User ID. According to Matomo that remains personal data
Anonymize Order ID off Order IDs from the shop are not stored in plain text
Force tracking without cookies off Matomo sets no cookies, even if the tracking code reports consent
Anonymize Referrer off Store only without query parameters, only the domain or no referrer URL at all; the referrer type remains
Randomize config_ID off Matomo creates a new identifier for every request. Every action then counts as a new visit
Matomo, Privacy, Anonymize data: IP anonymisation on with 2 bytes (recommended), anonymized IP for enrichment set to No, below the checkboxes Replace User ID with a pseudonym, Anonymize Order ID, Force tracking without cookies, the Anonymize Referrer selection and Randomize config_ID for enhanced privacy, each with an explanation
The settings under Anonymize data in Matomo 6 on our test instance. In Matomo 5 they look almost the same.
Click the image: fit or full sizeTap the image: full size
Matomo, Privacy, Anonymize data: IP anonymisation on with 2 bytes (recommended), anonymized IP for enrichment set to No, below the checkboxes Replace User ID with a pseudonym, Anonymize Order ID, Force tracking without cookies, the Anonymize Referrer selection and Randomize config_ID for enhanced privacy, each with an explanation

The settings under Anonymize data in Matomo 6 on our test instance. In Matomo 5 they look almost the same.

Two points deserve a second look. Enrichment with the full IP is active by default: if you want Matomo never to use the full IP, switch it and accept less precise locations. And the randomized config_ID sounds like more privacy, but turns every click into a visit of its own. Visits, bounce rate and visit duration lose their meaning.

Data already stored can be cleaned up afterwards: under Anonymize previously tracked raw data you mask IP addresses, anonymize locations or replace User IDs for a chosen period. This cannot be undone.

Personal data in URLs and titles

URLs are a common leak. Newsletter links with the email address, tokens from password links or search terms with names would otherwise end up in the reports. Under Websites > Settings (Global websites settings) you define which URL parameters Matomo discards: only Common session parameters, the list Matomo-recommended PII, or a custom list that adds to that recommendation. Also check page titles, event names and custom dimensions: whatever is in there, anyone allowed to open the reports can see.

Deletion and access requests

Deleting old raw data. By default Matomo keeps every single visit indefinitely. Under Regularly delete old raw data you set a period; Matomo suggests 180 days. The finished reports remain. What is no longer possible afterwards: new segments or newly created reports for periods whose raw data has been deleted.

The path of a visit's data with the default settings: Matomo determines the location with the full IP address, masks it before storing and keeps the raw data indefinitely. With a retention period, only the finished reports remain afterwards.

Deleting old reports can be switched on as well. If the raw data is already gone by then, those reports are lost for good.

GDPR Tools. If a visitor asks for their data or wants it deleted, you find their visits under Privacy > GDPR Tools through a segment, for example the User ID or the visitor ID, and export or delete them there. Without cookies and without a User ID, however, a person’s visits can hardly be linked.

Opt-out and Do Not Track

Under Privacy > Users opt-out, Matomo comes with a ready-made opt-out that you embed in your privacy policy, either through the Matomo tracker or as self-contained code. The objection is stored in the cookie mtm_consent_removed, even if Matomo otherwise measures without cookies. Some browsers delete such cookies after a while, and the opt-out then no longer applies. Test the opt-out after every change.

I do not recommend Do Not Track, even though Matomo promotes it on its settings page. The standard is dead: the W3C stopped working on it in 2019, Safari removed it in 2019, Firefox in 2025. With support switched on, visits are missing from the reports, for a signal nobody else respects any more. If you want to honour a signal from the browser, use Global Privacy Control and check it in the tracking code.

A look at France: the CNIL check

Under Privacy > Compliance, Matomo has a check built in. It compares your settings with the conditions under which the French data protection authority CNIL allows audience measurement without consent, and can enforce them if you want.

Matomo, Privacy, Compliance: table on CNIL website analytics compliance with settings and status, compliant include IP anonymisation, IP address mask length and raw data retention, non-compliant include User ID tracking, device model and screen resolution detection, visits log, referrer anonymisation and campaign parameter masking
The CNIL check under Compliance, shown in Matomo 6 on our test instance with default settings.
Click the image: fit or full sizeTap the image: full size
Matomo, Privacy, Compliance: table on CNIL website analytics compliance with settings and status, compliant include IP anonymisation, IP address mask length and raw data retention, non-compliant include User ID tracking, device model and screen resolution detection, visits log, referrer anonymisation and campaign parameter masking

The CNIL check under Compliance, shown in Matomo 6 on our test instance with default settings.

The list shows how strict these conditions are: no User ID, no device model, no screen resolution, only major versions of browsers and operating systems, no visits log, rounded numbers in segments, masked campaign values, raw data for at most 25 months. For Germany this is not the yardstick, because the TDDDG has no such exemption for web analytics so far. As a pointer to what “data-minimised” can mean, the list is useful all the same. Whether this changes with the EU’s Digital Omnibus is covered in the article Digital Omnibus: audience measurement without consent?.

Checklist

  1. Decide: with or without consent, and what you want to measure for it.
  2. Without consent: requireCookieConsent or disableCookies, plus disableBrowserFeatureDetection, and nothing in local storage, as described under Matomo without cookies.
  3. Mask IP addresses and decide whether Matomo may use the full IP for the location.
  4. Exclude URL parameters, at least Matomo’s recommended list.
  5. Delete raw data after a period your data protection adviser sets.
  6. Offer an opt-out and test it.
  7. Switch off Do Not Track if it is active.
  8. Check in the browser: are really no cookies set before consent? Whether your website already sends data to third parties beforehand is shown by the free website check.
  9. Document what is configured. Your record of processing activities and your privacy policy rely on it.

Technology is not law

This page describes the technical side. Whether your setup is permissible without consent is for your data protection or legal adviser to answer. I take care of a clean implementation and documentation that makes this assessment possible, described under cookieless & privacy settings.

Sources

As of 11 November 2026

FAQ

Frequently asked questions

Is Matomo GDPR compliant?

Matomo is a tool. What can be compliant is a specific setup: what is measured, how Matomo is configured, how long data is kept and how visitors can object. Matomo offers a great many settings for this, and as an on-premise installation the data goes to nobody else.

Do I need a cookie banner for Matomo?

It is not only about cookies. Under § 25 TDDDG in Germany, any storing on or reading from the device needs consent unless it is strictly necessary, including reading device properties. Matomo can be configured to measure without such access. Whether that is enough for your website is for your data protection or legal adviser to decide.

Do I need a data processing agreement?

If a provider hosts Matomo for you or operates the server, that is usually processing on your behalf, and you need an agreement under Art. 28 GDPR. If you run Matomo yourself, no such agreement is needed for Matomo, but your server or hosting provider may still be a processor. Your data protection adviser will clarify that.

How long should Matomo keep raw data?

Your data protection adviser sets the period. By default Matomo deletes nothing. If you switch deletion on, Matomo suggests 180 days. The finished reports remain afterwards; only new analyses of old periods are no longer possible.

What has to go into the privacy policy?

Among other things the purpose, legal basis, retention period, the cookies used and how to object. You can put together the cookie details with the generator on the Matomo cookies page. The text itself is written by your legal adviser.

Questions about your setup?

In an intro call we'll look at your situation together.

Book an intro call

Newsletter

Matomo know-how, once a month.

Practical tips on tracking, privacy settings and performance, plus notes on important Matomo updates. No spam, unsubscribe any time.