Kukie.io integrates with Matomo (formerly Piwik), the open-source web analytics platform. When the integration is enabled, the banner script loads your Matomo tracker and starts or stops tracking according to your consent model and each visitor's choice.
You need your own Matomo account. Kukie.io does not host Matomo or provide Matomo analytics reports. The integration connects the Matomo you already use - Matomo Cloud or a self-hosted Matomo - to your consent banner. Your analytics data is collected and viewed in Matomo.
Configuring the Matomo Integration
In the Banner Editor, go to the Integrations tab and find the Matomo Analytics card. Switch on Enable Matomo Integration, then fill in the two fields that appear:
- Matomo URL - the address of your Matomo, including the protocol. For Matomo Cloud this is
https://yourname.matomo.cloud; for a self-hosted Matomo it is the address you open Matomo at, for examplehttps://analytics.example.com. Do not include a trailing slash or thematomo.js/matomo.phppath - the banner script adds them. - Site ID - the numeric ID Matomo assigned to this website. You can find it in Matomo under Administration → Websites → Manage.
Click Save. Each Kukie.io site has its own Matomo settings, so a website you track in Matomo needs its own Site ID in that site's Banner Editor.
Tip: Your Matomo URL must be reachable over HTTPS from your visitors' browsers, because they load the Matomo tracker from it. Local addresses (
localhost,.localdomains, private IP addresses) are rejected when you save.
The integration loads the Matomo JavaScript tracker (matomo.js). It does not load Matomo Tag Manager containers.
Consent-Aware Tracking
The Matomo integration follows the consent model that applies to the visitor's region:
Opt-in Mode (GDPR)
In opt-in regions, the Matomo tracker is not loaded at all until the visitor accepts the Analytics category. Before that, the visitor's browser makes no request to your Matomo server.
When the visitor accepts Analytics, the banner script loads the tracker with Matomo's consent API: _paq.push(['requireConsent']) followed by _paq.push(['setConsentGiven']), and records the page view. A returning visitor who accepted earlier is tracked from the first page of the visit. If the visitor rejects Analytics, Matomo is never loaded and the visit is never recorded.
If the visitor later withdraws consent for Analytics, the banner fires _paq.push(['forgetConsentGiven']) and Matomo stops tracking. Kukie.io also removes the cookies listed under Analytics in your cookie list, which includes Matomo's _pk_* cookies once a scan has found them.
Opt-out Mode (CCPA)
In opt-out regions, Matomo is loaded and tracks as soon as the page loads, with Matomo's own Do Not Track support switched on (setDoNotTrack), so a browser that sends Do Not Track is not tracked by Matomo. If the visitor opts out of the Analytics category, the banner fires _paq.push(['forgetConsentGiven']) to stop tracking, and Matomo is no longer loaded on later pages.
Notice Only and Hidden Modes
In these modes, Matomo is loaded and tracks immediately, the same way as in opt-out mode, including the Do Not Track setting.
Privacy signals: in opt-out, notice-only and hidden modes, a visitor whose browser sends Global Privacy Control is treated as having rejected everything except necessary cookies when Respect GPC is on (the default), and the same applies to Do Not Track when Respect DNT is on. Matomo is not loaded for that visitor unless they allow Analytics themselves later, in the banner or its preferences.
What Matomo Tracks
Once Matomo is loaded, it records what your Matomo is configured to collect, typically:
- Page views and navigation paths.
- Referrer information.
- Visit duration and bounce rate.
- Browser, device, and operating system data.
- Geographic location (based on IP, if configured in Matomo).
All of this data goes from the visitor's browser straight to your own Matomo - none of it is sent to Kukie.io. This makes Matomo a popular choice for organisations that want full control over their analytics data.
Matomo Cloud vs Self-Hosted
The integration works with both Matomo Cloud and self-hosted Matomo. The only requirement is that your visitors' browsers can reach the Matomo URL over HTTPS.
Removing Manual Tracking Code
If your site already has a Matomo tracking snippet added by hand, remove it after enabling the integration. Running both at the same time can count page views twice.
If you would rather keep your own snippet, leave the integration switched off. Kukie.io's auto-blocking treats Matomo as an Analytics script and holds it back until the visitor consents, as long as the Kukie.io script is placed above your Matomo snippet in the <head>.
Important: Unlike Google Analytics, Matomo does not use Google Consent Mode. The Matomo integration has its own consent management via the
requireConsent/setConsentGivenAPI. Make sure you do not rely on GCM parameters for Matomo tracking decisions.
