Google Analytics collects visitors' data on servers in the USA, so every Polish website that uses it must display a cookie consent banner and comply with GDPR rules on transferring data outside the European Economic Area. Matomo takes a different approach: all traffic stays on your server, and cookieless tracking can be enabled with a single switch in the settings. Below, we explain step by step how to set up Matomo on Saplo, how to disable the consent banner in accordance with the regulations, and how to migrate historical data from Google Analytics.
Why Google Analytics is a GDPR problem
Google Analytics by default sends visitors' data (IP address, on-site behavior, device identifiers) to Google's infrastructure, often outside the European Economic Area. This requires:
- a consent banner for analytics cookies, which reduces conversion rates,
- a legal basis for transferring data outside the EEA, which is increasingly difficult to justify following the Schrems II ruling,
- recording Google as the data processor in your GDPR documentation.
Several European data protection authorities, including those in Austria and France, have already deemed the standard Google Analytics configuration non-compliant with the GDPR. Even if no one has challenged it in your case, the risk remains, and any audit or customer complaint could trigger it.
What is Matomo
Matomo (formerly Piwik) is an open-source web analytics platform that does the same things as Google Analytics (traffic, sources, conversions, funnels, and heat maps in the Premium version), with one key difference: your data stays on a server you control. No third party has access to it.
Additional benefits of running your own installation:
- cookie-free tracking - an option in the settings that, in many cases, allows you to collect statistics without showing a consent banner at all, because nothing is stored in the visitor's browser,
- your data never leaves - there is no need for a data processing agreement with an overseas provider, because the processor is your own Box,
- complete history with no limits - after a certain period of time, Google Analytics aggregates and deletes raw data, while Matomo keeps it for as long as you have disk space,
- data ownership - export raw data via API or access the MySQL database directly, without having to ask the provider for an extract.
Requirements
To set up Matomo on Saplo, you need:
- a Box with Docker enabled (the engine enables it automatically during installation from the App catalog, container nesting is required, which Saplo supports by default),
- at least 512 MB of free RAM on your Box, with more recommended for higher traffic,
- a shared MySQL database, which Saplo creates for you in the background (exactly as when installing WordPress),
- a domain or subdomain
*.saploapp.plincluded in the price of every plan.
You do not need to configure anything manually, as the recipe engine prepares all of the above when you click "Install".
Step-by-step installation
- In the Saplo panel, go to App catalog and select Matomo (the "Data" category).
- Choose the Box it should run on and the domain or subdomain under which the analytics panel will be available.
- Confirm the installation. The engine sets up a Docker container with the official image
matomo:5-apache, prepares a MySQL database and makes it available under the selected domain through nginx with free SSL. - After a few dozen seconds, the domain displays the Matomo installation wizard in your browser. The database connection details are already filled in, so you only need to create the first admin account and the first page to track.
- Finally, the Matomo wizard shows you a ready-made JavaScript code snippet to paste into the page you want to track.
Enabling cookieless tracking
To avoid a consent banner, open the Matomo panel and go to Administration -> Websites -> Manage, then enable "Cookieless tracking" for the relevant website. From that point, Matomo identifies visitors using technical request data, without a persistent identifier stored in the browser, which in most cases means you no longer have to display a consent banner for analytics cookies. While you are there, you should also enable IP address anonymization, as Matomo masks the last bytes of IP addresses by default, and disable tracking for visitors who have the "Do Not Track" header enabled. Together, these measures further strengthen your GDPR compliance. Whether your configuration fully complies with GDPR should ultimately be assessed by a legal professional, as this depends on exactly how data is collected. However, this mechanism itself eliminates the most common reason for displaying a banner.
Import historical data from Google Analytics
Switching away from Google Analytics does not have to mean losing years of collected statistics. Matomo has a Google Analytics data import plugin that supports both the older Universal Analytics and GA4. It runs as a separate step after installation: you connect your Google account via OAuth, select the property you want to import, and Matomo transfers historical sessions, traffic sources, and events to its own database in the background. Importing a large website with years of history can take several hours because the Google Analytics API has per-minute query limits, but the process runs in the background and does not block real-time tracking of new visits.
Reports, goals and e-commerce
A basic Matomo installation covers what most websites actually use Google Analytics for: traffic over time, sources (organic, paid, social, referral), on-site behavior, entry and exit paths, as well as conversion goals with funnels showing at which step visitors drop off. Online stores also get an e-commerce module that tracks carts, products and revenue, with the same reports as Google Analytics Enhanced Ecommerce, but without sending transactional data outside your server. Advanced features, such as heatmaps and session recordings, require the paid Heatmap & Session Recording plugin from the Matomo developers, which you install manually in the admin panel outside the installer itself.
Multiple websites in a single installation
A single Matomo installation can handle any number of tracked websites, so if you run multiple domains or have clients you want to give analytics access to, you do not need to set up a separate container for each one. In Administration -> Websites -> Manage, you add each website, and each one gets its own tracking code to paste and its own separate set of reports. You grant users access per website, so each client sees only their own data, while you, as the administrator, have an overview of everything.
Backups and updates
Backups depend on your chosen plan: Box L and higher include backups in the price (7 days of history for Box L, 14 days for Box XL, 30 days plus an off-site copy for Box XXL), while you can add daily backups to Box S and Box M as an extra. With Matomo, backups include the MySQL database with raw analytics data, so it is worth enabling them before the database grows to a size whose loss would really hurt. New Matomo versions are reported in the admin panel as soon as they are available, and updating takes just a few clicks in the same panel, with no need to access the container console.
Google Analytics vs Matomo on Saplo
| Google Analytics | Matomo on Saplo | |
|---|---|---|
| Where the data is stored | Google servers, often outside the EEA | Your Box, in Poland |
| Requires a consent banner | yes | no, if you enable cookieless tracking |
| Data processor in the GDPR agreement | no one, the data does not leave your Box | |
| Data history limit | aggregated data and deleted over time | no limit, the only limit is your Box's disk |
| Import history from another tool | none | built-in Google Analytics import plugin |
| Cost | free (paid in GA360) | included in every Saplo plan |
| Who manages it | You, but without manual server setup |
Frequently asked questions
Does Matomo really free me from needing a cookie banner? If you enable tracking without cookies and do not collect data that identifies individual users, then in most cases, yes. It still depends on your entire configuration, so if you have any doubts, consult a GDPR lawyer.
Can I import historical data from Google Analytics? Yes, Matomo has a plugin for importing data from Google Analytics (Universal Analytics and GA4), described in the import section above. The import runs in the background and does not interrupt ongoing tracking of new visits.
How much traffic can a Box with 512 MB RAM handle? This is the minimum for getting a small or medium-sized website started. With more traffic, you can add RAM to your Box on the go, without moving data or restarting.
Does Matomo do the same as Google Analytics? For basic reports (traffic, sources, behavior, goals and conversions, funnels, e-commerce), yes. Some advanced features (for example, heatmaps and A/B tests) are limited in the open source version or available as paid add-ons in Matomo, but they are more than sufficient for basic GDPR-compliant analytics.
Can I track multiple websites with one Matomo installation? Yes, one installation can handle any number of websites, each with its own tracking code and separate reports, and you can grant access separately for each site.
What if I need something lighter than Matomo? If you do not need features such as funnels, e-commerce or heatmaps, it is worth checking out Umami, a lighter, cookie-free analytics solution available from the same App catalog.
If you have questions about setting up Matomo on your own Box, write to us and we will help you configure cookie-free tracking and import data step by step.
- #Analytics
- #Google Analytics
- #Matomo
- #Guide
- #GDPR
