Zum Inhalt

Measurement Manager

Der Measurement Manager ist die Standardintegration für Websites. Er lädt die Sensoren für Zensus- und pseudonyme Messung, wertet den TCF-Consent aus und entscheidet daraufhin selbst, welche Messung ausgeführt wird.

Voraussetzungen

  • Angebotskennung und Domain-Dienstname sind eingerichtet, der CNAME löst auf — siehe Einrichtung der Messdomain
  • eine TCF-2.x-konforme CMP, in der Vendor 730 (INFOnline) mit den Purposes 1 und 8 hinterlegt ist
Vendor 730 allein genügt nicht

Der Manager aktiviert die pseudonyme Messung nur, wenn Vendor 730 und die Purposes 1 und 8 eingewilligt sind. Fehlt einer der Purposes, bleibt die pseudonyme Messung aus — für Sie sieht das genauso aus wie ein fehlerhafter Einbau. Details zur CMP-Konfiguration: Measurement Manager und CMP.

Wichtige Informationen hybriden App-Messung

Bitte prüfen Sie vor der Integration des Measurement Mangers, ob auf diese Webseiten hybrid zugegriffen wird. Für die korrekte Erfassung des App-Traffics muss die Integration der Zensus SDK in Ihrer App zeitgleich mit der Aktivierung des Measurement Managers erfolgen. Dies kann zu einer Überzählung der hinterlegten Angebotskennung (MEW) des Webviews führen.

Wird die pseudonyme Messung (Webview) direkt über den Measurement Manager ausgespielt, so ist es zwingend erforderlich auch die Zensus Library (IOMb, ab Version 1.0.1) zu implementieren und initialisieren. Bei einer abweichenden Umsetzung können keine hybriden Requests aus dem pseudonymen Webview erfasst werden.

Achten Sie des Weiteren darauf, dass Ihre neue App-Version - mit integrierter Zensus-Library - vor der Aktivierung der pseudonymen Messung im Measurement Manager auf Ihrer Webseite eine hohe Update-Quote bei Ihren Nutzern aufweist.

Einbau

Zu ersetzen sind genau diese drei Werte:

Platzhalter Wodurch
<domain service name> Ihr Domain-Dienstname — an allen Stellen, auch in dn. Die Pfade und Attribute drumherum bleiben unverändert.
<angebotskennung> Ihre Angebotskennung
cp Ihr Seitencode für die jeweilige Seite (nicht ein Wert für die ganze Site)
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
<!DOCTYPE html>
<html lang='de'>
<head>
  <meta charset='UTF-8'>
  <!-- Preload Measurement Manager -->
  <link rel='preload' href='//<domain service name>/iomm/latest/manager/base/es6/bundle.js' as='script' id='IOMmBundle' crossorigin>
  <link rel='preload' href='//<domain service name>/iomm/latest/bootstrap/loader.js' as='script' crossorigin>
  <script type='text/javascript' src="//<domain service name>/iomm/latest/bootstrap/loader.js" crossorigin></script>
</head>
<body>
<script type='text/javascript'>
  IOMm('configure', { st: '<angebotskennung>', dn: '<domain service name>' });
  IOMm('pageview', { cp: 'startseite' });
</script>
<!-- Content -->
</body>
</html>

Rufen Sie configure vor dem ersten pageview auf. Beide Aufrufe gehören in den <body>, die Ladezeilen in den <head>.

Pfade und Attribute nicht verändern

Der Bootstrap-Code liest die Bundle-URL aus dem href und der id des Preload-<link>. Ändern Sie Attribute oder Pfade, findet er das Bundle nicht und es wird nicht gemessen. Ersetzt werden ausschließlich die Werte aus der Tabelle oben — dn muss zeichengleich dem Host in den Preload-Pfaden sein.

CMP mit automatischem Script-Blocking

Blockiert Ihre CMP 3rd-Party-Skripte automatisch, wird die consentfreie Zensusmessung mitblockiert. Ergänzen Sie die Loader-Zeile in diesem Fall um data-cmp-ab="2" — bei ConsentManager ist das zum Beispiel nötig:

1
<script type='text/javascript' src="//<domain service name>/iomm/latest/bootstrap/loader.js" data-cmp-ab="2" crossorigin></script>

Parameter

Die beiden Aufrufe nehmen diese Parameter:

1
2
IOMm('configure', { st: '<angebotskennung>', dn: '<domain service name>', mh: 5 });
IOMm('pageview',  { cp: 'startseite', co: 'optionaler kommentar' });
Parameter Pflicht Kurz
st ja Ihre Angebotskennung
dn ja Domain-Dienstname; falsche Notation = keine Messung
cp faktisch ja Seitencode; fehlt er, landet der Aufruf im Leercode und ist nicht zuordenbar
mh nur pseudonym 5 aktiviert die pseudonyme Messung, als Zahl
co, pt, cn, dc, dg nein Kommentar, Pixeltyp, Land, Distributionskanal, Debug

Vollständige Angaben zu Typen, Längen, erlaubten Zeichen und Auswirkungen bei falschen Werten: Parameter-Referenz.

Pseudonyme Messung aktivieren

Ergänzen Sie den configure-Aufruf um mh: 5:

1
2
3
<script type='text/javascript'>
  IOMm('configure', { st: '<angebotskennung>', dn: '<domain service name>', mh: 5 });
</script>
Bestehenden pseudonymen Mess-Tag entfernen

Aktivieren Sie die pseudonyme Messung im Manager, müssen Sie den bestehenden pseudonymen Mess-Tag (ehemals SZM-Tag) gleichzeitig aus Ihren Webseiten entfernen. Bleibt der alte Tag stehen, wird doppelt gezählt; das kann zur Sperrung Ihres Digital-Angebots bei der IVW führen.

Zwei Ausnahmen, die bestehen bleiben müssen: das Newsletter-Pixel und die AMP-Integration. Beide werden vom Manager nicht abgedeckt — entfernen Sie sie, fällt die dortige Messung aus.

Suchen Sie in Ihren Templates nach de.ioam.de, tx.io, iam.js und dem Kommentar <!-- SZM VERSION, um den alten Tag zu finden.

Einbau ohne Preload

Wenn Preload nicht möglich ist, laden Sie das Bundle am Ende des <body> — dann müssen alle Befehle vor dem Bundle stehen:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
<head>
  <script type='text/javascript' src="//<domain service name>/iomm/latest/bootstrap/stub.js" crossorigin></script>
</head>
<body>
<!-- Content -->
<script type='text/javascript'>
  IOMm('configure', { st: '<angebotskennung>', dn: '<domain service name>' });
  IOMm('pageview', { cp: 'startseite' });
</script>
<script type='text/javascript' src='//<domain service name>/iomm/latest/manager/base/es5/bundle.js' crossorigin></script>
</body>

Das stub.js im <head> ist zwingend: es legt die Befehlswarteschlange an. Ohne es existiert IOMm beim configure-Aufruf nicht, beide Befehle gehen verloren und es wird nichts gemessen.

Diese Variante hat zwei Nachteile: die Reihenfolge ist fehleranfällig, und Sie müssen die ECMAScript-Version selbst festlegen (im Beispiel es5) statt sie automatisch erkennen zu lassen.

Skriptladen: async und defer

async und defer am <script>-Tag verkürzen die Zeit bis zum First Paint, verzögern aber den Messaufruf. Bei Nutzern, die schnell weiterklicken, kann die Seite verlassen sein, bevor die Messung ausgelöst wurde — dann fehlt der Pageview. Die Abwägung zwischen Ladezeit und Messvollständigkeit müssen Sie selbst treffen; für eine möglichst vollständige Messung laden Sie das Bundle wie oben mit Preload.

Soll das Ladeverhalten für alle Bundles gelten, setzen Sie es nicht am einzelnen Tag, sondern per Meta-Tag im <head>:

1
<meta name='iomm_config_loading' content='defer'>

Single Page Applications

Wechselt die Ansicht ohne Neuladen der Seite, müssen Sie pageview bei jedem Ansichtswechsel selbst auslösen — typischerweise im Router-Hook Ihres Frameworks. configure läuft dabei einmal pro Dokument und wird nicht wiederholt.

Bei serverseitig gerenderten Seiten laufen beide Aufrufe bei jedem Laden.

Zurück-Navigation

Holt der Browser die Seite aus dem Back/Forward-Cache, löst der Manager den letzten pageview automatisch erneut aus. Sie müssen dafür nichts tun — und diese zusätzlichen Page Impressions sind kein Fehler.

Version festlegen

Standardmäßig lädt jedes Modul in der neuesten Version (latest im Pfad), damit Updates und Bugfixes automatisch greifen. Sie können stattdessen fest pinnen:

  • Managerlatest im Bundle- und Preload-Pfad durch die Version ersetzen, z. B. //<domain service name>/iomm/1.6.0/manager/base/es6/bundle.js
  • Sensoren<meta name='iomm_config_version_sensor_iomb' content='1.1.2'> im <head> (iomb oder iomp)
  • Erweiterungen<meta name='iomm_config_version_ext_{modul}' content='1.1.2'>

Die passende ECMAScript-Version erkennt der Manager selbst. Mit <meta name='iomm_config_esm' content="es5"> im <head> erzwingen Sie ES5, auch wenn der Browser ES6 beherrscht.

Einbindung prüfen

Siehe Prüfen mit den Browsertools für den schnellen Netzwerk-Tab-Check und myAudit für tiefere Analysen — es zeigt beide Messverfahren in Echtzeit.

Mit dg: true im configure-Aufruf protokolliert der Manager seine Schritte in die Browser-Konsole — welche Parameter er übernommen hat, welche Sensoren er lädt und warum ein Messaufruf ggf. unterbleibt. Das ist der schnellste Weg, einen Konfigurationsfehler von einem Consent-Problem zu unterscheiden.


Letztes Update: August 27, 2026