Plugins View all plugins
Resources
Live demo ↗ Request a plugin Sign in feinwerk.io ↗ Get the connector
Plugin documentation · Visit Journey

Performance and archiving

Plugin documentation Plugin page

Feinwerk Visit Journey calculates the visit paths during Matomo's archiving. This page shows how much load that adds on a large instance, where it comes from and which settings control it.

Measurements

Nightly archiving of one day with its week, month and year, with and without the plugin:

Measurement without the plugin added by the plugin
Archiving time per night 3 minutes 17 seconds about 7 seconds (+4 %)
Database work 41.4 million rows read about 2 % more rows read
Peak memory 383 MB per archiving process about 18 MB

The test year holds one month of data. In a control test with twelve filled months on a smaller test instance, the year archive needed about 11 MB more memory with the plugin and no more database queries than with one month. Measured in October 2026 with version 1.0.0-beta.4 and Matomo 6. The versions for Matomo 5 from 0.3.0 calculate the paths the same way. On other servers, with other data and settings, the values differ.

Archiving time per period
As a table
Matomo without the pluginAdded by the plugin
Day58 s3 s
Week39 sno value
Month76 sno value
Year17 s3 s

Matomo recalculates the day from the raw data every night and builds the week, month and year from the shorter periods. Feinwerk Visit Journey needs its extra time for the day and the year; for the week and the month it is below the accuracy of the measurement.

Test setup

  • 5 million hits per month (about 1.7 million visits), test data with pages, referrers, events, goals and orders.
  • Matomo 6, PHP 8.3, MariaDB 10.11 with a 2 GB database cache.
  • Server with 4 cores, 3 of them for Matomo, 7.7 GB RAM and SSD.
  • Three runs per measurement after a warm-up run, the middle one counts; compared with the same instance without the plugin.

Where the load comes from

  • Day: The plugin reads the actions, conversions and entry channels of the day's visits in blocks of 5,000 visits and builds the paths from them. Almost all of the extra database work and about 40 % of the extra computing time come from here.
  • Week, month and year: The plugin merges the finished paths of the days without reading the raw data again. This costs some computing time, mostly for the year; the database hardly notices.
  • Archive size: about 0.2 MB per website and period. The path trees are limited, so the archive does not grow with the traffic.

Settings and load

  • Events shown as steps: In the test it made no measurable difference whether no events or all events were released as steps. The path trees are limited, and the database reads the same rows.
  • Record entry channels: Switched off, the setting saves about 6 MB of memory and a good fifth of the rows the plugin reads; the archiving time does not change measurably. So on large instances you do not need to switch entry channels off.

Recommendations for large instances

  1. Bundle changes to the settings: every change recalculates the paths of past days (setting "Days recalculated after changes", 30 days by default).
  2. Plan about 20 MB more memory per archiving process. Matomo itself needs the most for the year archive.