Skip to main content
Pro Plan15 minutesBeginner

Matomo Importer — Import your Matomo history

Bring your historical Matomo analytics data into Zenovay through the Matomo Reporting API. Idempotent, Pro+ feature.

importmigrationmatomodata
Last updated:
Pro Plan

If you're migrating from Matomo to Zenovay, the Matomo Importer lets you bring your historical daily aggregates into Zenovay so you keep full context on the day you switch. Zenovay connects to your Matomo Reporting API using your instance URL, token_auth, and site ID, then pulls the history directly. Your Matomo instance needs to be publicly reachable (self-hosted on a public host, or Matomo Cloud).

What it imports

  • Daily pageviews, visits, and unique visitors (over the requested date range)
  • Top pages, top referrers, top countries
  • Browser, device type, and operating-system breakdowns

What it doesn't import

  • Individual visitor sessions or raw event logs
  • Custom dimensions or custom reports
  • Ecommerce / revenue events
  • Real-time data (only completed days; today is always excluded)
  • Goals and conversions (daily aggregate totals only)

What you need

  • Your Matomo instance base URL (e.g. https://analytics.example.com)
  • Your token_auth — find it in Matomo under AdministrationPersonalSecurityAuth tokens
  • Your Matomo Site ID — shown in AdministrationWebsitesManage

If you don't want to use a personal token, create a dedicated token with View access to the site you're importing, and delete it once the import is done.

How to import

  1. Open your domain's detail page → Import tab.
  2. Select Matomo, then switch to the API connection mode.
  3. Enter your Matomo URL, token_auth, and Site ID.
  4. Click Connect and Import and wait for the progress bar.

By default Zenovay imports roughly the last 90 days. The import runs in the background, so you can navigate away and come back; the status will be waiting for you on the Import tab.

Behind the scenes, Zenovay calls the Matomo Reporting API (VisitsSummary.get and Actions.get for daily totals, plus Actions.getPageUrls, Referrers.getReferrers, UserCountry.getCountry, and DevicesDetection.* for the breakdowns) with your credentials. The token_auth is used only for this import; you can revoke it from Matomo at any time.

After a successful import, revoke or rotate your token_auth in Matomo — using a short-lived, read-only token created specifically for the import is the safest approach.

Verify your import

After the import completes, run through this short checklist to confirm the data landed correctly. This is the same runbook the Zenovay team uses internally.

  1. Open any analytics view in your dashboard (for example, pageviews for the last 90 days). The imported data appears immediately, blended with any native data already collected.
  2. Spot-check 3 random days against your Matomo dashboard. Expect ±5% on pageviews, ±3% on visits — Matomo and Zenovay dedupe visitors differently, so a small gap is normal.
  3. Imported rows are tagged imported_from='matomo' in the database, so you can always tell them apart from data Zenovay collected natively. (Note: the Stats API doesn't expose imported_from as a queryable filter key — its filters cover country, browser, device, os, source, the utm_* dimensions, and page. See Stats API for the full filter syntax.)
  4. Re-import the same period to confirm idempotency. The row count should stay the same — duplicates are impossible because of the database-level uniqueness constraint.
  5. When you're satisfied, remove or revoke the token_auth you created for this import.

If any of these checks look off, email support@zenovay.com with the date you imported and which days look wrong. We can spot-fix individual days.

Troubleshooting

"Available on Pro" message

The Matomo importer requires a paid plan. Upgrade your plan →

"Authentication failed"

Double-check your token_auth — it is case-sensitive. Also confirm the base URL does not have a trailing slash and is publicly reachable (Zenovay's servers cannot reach private network addresses like http://192.168.1.x). Create a new token in Matomo under AdministrationPersonalSecurityAuth tokens with at least the View permission on the target site.

"Site ID not found"

Confirm the Site ID by going to AdministrationWebsitesManage in Matomo. The ID is the number shown next to your site name. If you have multiple sites, ensure you're using the ID that matches the domain you're importing into Zenovay.

"No data returned"

If Matomo returns empty reports for your date range, check that tracking was active on those dates and that the Matomo site ID matches the domain. Also verify that the token_auth has View access to the site, not just superuser access to the admin area.

"Import timed out"

Very large date ranges (several years) can take time to process. Zenovay will retry automatically. If the import keeps timing out, try splitting the date range into smaller chunks (e.g. import one year at a time) and re-import — the idempotency constraint means overlapping ranges are safe.

FAQ

Will it overwrite my native Zenovay data? No. Imported rows are tagged with imported_from='matomo'. They are stored alongside (not on top of) any data you collect natively with the tracking script, so they're always distinguishable in the database.

Can I re-import? Yes, anytime. Re-importing overwrites the same date range cleanly — no duplicates, no orphan rows.

Is the Matomo import free? No. The Matomo importer (like the other analytics importers) requires a Pro or higher plan.

What time zone are the imported daily totals in? The imported rows use your Matomo site's configured time zone for the date dimension. If your Matomo site is set to Europe/London, "2026-05-16" in the import means a full day in London time.

Does Zenovay keep my token_auth? No. Your token_auth is sent with the import request, used only to make the Matomo Reporting API calls for that one import, and then discarded. It is not saved to a Zenovay database or reused. Even so, once the import is complete you should revoke or delete the token in Matomo as a precaution.

Will Zenovay see my visitors' personal data? No. The Matomo Reporting API returns only aggregate statistics (totals, top-N lists). No individual visitor records, IPs, or user IDs are transferred to Zenovay.

Does this affect my Matomo data? No. The importer is read-only. Zenovay never writes to your Matomo instance.

Was this article helpful?