Plugins View all plugins
Resources
Live demo ↗ Request a plugin Sign in feinwerk.io ↗ Get the connector
Campaign Score · Marketing & SEO · free

How clean is your campaign data?

One score for clean campaign data: Campaign Score finds spelling variants, unusual mediums and missing values.

Latest v5.0.0 · Matomo ≥ 5.0.0

How Campaign Score works: one score for clean campaign data and a suggestion for every finding
What it does for you
01

One number instead of many rows

See at a glance what share of your campaign visits has clean values, with its basis.

02

Concrete suggestions

For every spelling variant and every unclean value, Campaign Score names the spelling to use from now on.

03

Source and medium covered

With Marketing Campaigns Reporting the plugin checks name, source and medium together and finds missing values.

04

Fits your channels

The list of usual mediums matches Feinwerk Channel Grouping and can be adapted to your convention.

05

Light and safe

It only reads archived reports: no tables of its own, no extra archiving work, no visitor data leaving your server.

Click to enlarge

Use cases

Check and unify your campaign data in Matomo

One score shows how clean your campaign data is, and a table shows which values to make consistent.

Read the use case →
Frequently asked questions

A value in lowercase that only uses a to z, 0 to 9, underscore, hyphen and full stop, is no deviating spelling of another value, and, for the medium, is in the list of usual mediums.

No. Without it, Campaign Score checks the campaign name and keyword. With the free plugin, source and medium are added.

Keywords often hold search terms with spaces. For keywords, Campaign Score only shows spelling variants.

Matomo groups rare rows of large reports as "Others". Their values are unknown and do not count in the basis. The same applies to masked values and to visits from before Marketing Campaigns Reporting was activated.

Without Marketing Campaigns Reporting, Matomo writes names and keywords in lowercase. Also, the database groups values that only differ in case into one row per day.

No. It reads the existing campaign reports when you open the report and creates no archives of its own.

No. Only when you click thumbs up or down below the report does your Matomo server send that answer with the plugin and Matomo version to Feinwerk, without data about you, your website or your visitors. Switch it off with feedback = 0 in the [FeinwerkCampaignScore] section of config/config.ini.php.

Install via the Feinwerk connector
  1. 01 Download the Feinwerk connector and unzip it into your Matomo's plugins/ directory, then activate it.
  2. 02 Open Feinwerk Plugins and click "Connect with Feinwerk account". If your browser cannot reach the store, enter your instance token in the connector settings instead.
  3. 03 Open the Feinwerk Plugins screen, find Campaign Score, and click Install.
Download connector plugin

Prefer a manual install? Download the ZIP of version 5.0.0 and install it yourself. Download ZIP · Documentation for Campaign Score

Missing a feature in Campaign Score? Tell us what you need →

For the technically curious

One score for your campaign data

Campaigns only arrive cleanly in Matomo when everybody in the team writes their campaign links (UTM or mtm parameters) the same way. In practice "Newsletter", "newsletter" and "news_letter" end up as three campaigns in the report, mediums like "Facebook Ads" fit no channel, and some links lack a source. Campaign Score sums this up in one number: the share of campaign visits with clean values, always shown with its basis, for example "650 of 800 campaign visits with clean values".

What keeps the score down

Below the score, a table lists every problem with the visits it affects and a suggestion:

  • Spelling variants: values that only differ in case, spaces, underscores, hyphens or full stops. The suggestion is the most visited clean variant.
  • Format: values with capital letters, spaces or other characters, such as "Black Friday 2026", with the clean form as suggestion.
  • Unusual medium: a medium that is not in your list of usual mediums.
  • Missing value: campaign visits without a campaign name, source or medium.

Source and medium with Marketing Campaigns Reporting

On its own, Campaign Score checks the campaign name and keyword from Matomo's campaign report. With the free plugin Marketing Campaigns Reporting active, it also checks source and medium, together with the name: a visit only counts as clean when all three values are.

Dashboard and settings

A dashboard widget shows the score and the three largest problems with a link to the full report. You adjust the list of usual mediums in the general settings. The default list holds the mediums that Channel Grouping assigns to a channel, so both plugins agree on what a clean medium is. To make new links clean from the start, the UTM builder Feinwerk Campaigns gives your team a naming convention.

Read only, nothing sent

Campaign Score only reads the campaign reports Matomo has already archived. It creates no tables, stores nothing and changes no data. No data about your websites or visitors leaves your server.