Calendar Icon
LinkedIn Logo

Wie man eine Data Layer in Matomo einrichtet

Lesezeit: 5 Minuten
SHARE
Inhalte

Einleitung

Wenn man Analytics implementiert, stößt man schnell auf ein Problem: Mit der Zeit wird das Tracking unübersichtlich. Immer mehr Skripte und kleine Code-Snippets sammeln sich an, und irgendwann wird es schwierig, den Überblick zu behalten oder Fehler zu finden.

Eine bewährte Lösung dafür ist die sogenannte Data Layer. Dabei handelt es sich um ein strukturiertes JavaScript-Objekt, in dem wichtige Informationen über die Website und das Nutzerverhalten gesammelt werden. Anstatt Daten direkt an das Analytics-Tool zu schicken, werden sie zunächst dort abgelegt. Tools wie der Matomo Tag Manager greifen dann auf diese Daten zu und verarbeiten sie weiter.

Matomo bringt dafür bereits eine eigene Data Layer mit – das _mtm-Array. Damit lässt sich Tracking deutlich sauberer und flexibler umsetzen.

Was genau ist eine Data Layer?

Vereinfacht gesagt ist die Data Layer eine Art Zwischenschicht zwischen deiner Website und deinen Analytics-Tools. Hier werden alle wichtigen Informationen zentral gesammelt – zum Beispiel, was gerade auf der Seite passiert oder wie Nutzer mit ihr interagieren.

Der große Vorteil: Tracking-Skripte müssen sich die Daten nicht mehr selbst aus dem HTML zusammensuchen. Stattdessen werden sie strukturiert in die Data Layer „geschoben“. Das macht das gesamte Setup stabiler – auch dann, wenn sich das Design oder der Aufbau der Website ändert.

Gleichzeitig können Entwickler und Analysten sauber getrennt arbeiten:
Die Entwickler sorgen dafür, dass die richtigen Daten in der Data Layer landen, und die Analysten entscheiden im Tag Manager, was damit passieren soll.

Typische Inhalte einer Data Layer sind zum Beispiel:

  • Seiteninformationen wie Name oder Kategorie
  • Nutzerinformationen (z. B. eingeloggt oder nicht)
  • Produktdaten
  • Interaktionen wie Klicks oder Formularabschlüsse

Beispiel:

				
					window._mtm = window._mtm || [];

window._mtm.push({
  event: "page_view",
  page_name: "Homepage"
});
				
			

So wird ein Seitenaufruf sauber strukturiert erfasst – unabhängig davon, wie die Seite technisch aufgebaut ist.

Die Matomo Data Layer (_mtm)

Immer wenn auf der Website etwas passiert, kann ein entsprechendes Objekt in die Data Layer gepusht werden. Der Matomo Tag Manager „hört“ dabei ständig mit und reagiert auf diese Ereignisse.

Die Initialisierung ist denkbar einfach:

				
					window._mtm = window._mtm || [];
				
			

Sobald ein relevantes Ereignis eintritt, wird es hinzugefügt:

				
					window._mtm.push({
  event: "login_click",
  button_text: "LOGIN",
  page_type: "login"
});
				
			

Hierbei gilt:

  • event beschreibt, was passiert ist
  • zusätzliche Felder liefern Kontext

Der Tag Manager kann diese Informationen dann nutzen, um passende Tags auszulösen und Daten an Matomo zu senden.

Der große Vorteil dieses Ansatzes: Die Website selbst bleibt unabhängig von der eigentlichen Tracking-Logik. Entwickler müssen nur dafür sorgen, dass Daten korrekt in die Data Layer geschrieben werden – alles Weitere passiert im Tag Manager.

So setzt du die Data Layer Schritt für Schritt um

1. Data Layer initialisieren

Die Data Layer sollte möglichst früh geladen werden – idealerweise noch vor dem Matomo-Container:

				
					<script>
window._mtm = window._mtm || [];
</script>
<script src="https://example.matomo.cloud/js/container_ABC123.js"></script>
				
			

So stellst du sicher, dass auch früh ausgelöste Events nicht verloren gehen.

2. Events in die Data Layer pushen

Bei jeder wichtigen Nutzeraktion wird ein Event hinzugefügt:

				
					window._mtm.push({
  event: "login_click",
  button_text: "LOGIN",
  page_type: "login"
});
				
			

Typischerweise besteht so ein Event aus:

  • einem Event-Namen
  • zusätzlichen Informationen zur Aktion

3. Variablen im Matomo Tag Manager anlegen

Im Tag Manager kannst du die Daten aus der Data Layer nutzbar machen:

  • Gehe zu „Variablen“
  • Erstelle eine neue Data Layer Variable
  • Trage den Namen ein, z. B. button_text

4. Trigger definieren

Jetzt legst du fest, wann etwas passieren soll:

  • Trigger-Typ: Custom Event
  • Event-Name: login_click

Immer wenn dieses Event gepusht wird, reagiert der Trigger.

5. Tag konfigurieren

Zum Schluss erstellst du ein Tag, das die Daten an Matomo sendet:

  • Event Category: CTA
  • Event Action: Click
  • Event Name: login_click

Diesen Tag verknüpfst du mit dem passenden Trigger.

Debugging leicht gemacht

Beim Einrichten hilft ein Blick in die Browser-Konsole:

				
					console.log(window._mtm);
				
			

So siehst du alle bisher erfassten Events.

Noch komfortabler ist der Preview- und Debug-Modus im Matomo Tag Manager. Dort kannst du genau nachvollziehen:

  • welche Daten in die Data Layer gelangen
  • welche Trigger ausgelöst werden
  • welche Tags feuern

Fazit

Eine Data Layer macht dein Tracking deutlich strukturierter und zukunftssicherer. Statt Daten überall im Code zu verteilen, hast du einen zentralen Ort, an dem alle wichtigen Informationen gesammelt werden.

Das sorgt nicht nur für mehr Übersicht, sondern auch für mehr Flexibilität: Neue Events oder zusätzliche Daten lassen sich leicht ergänzen, ohne bestehendes Tracking anfassen zu müssen.

Unterm Strich bedeutet das: weniger Chaos, einfacheres Debugging und eine Analytics-Implementierung, die langfristig gut wartbar bleibt.

4.9/5

Der IT-WINGS Blog -
Immer auf dem neusten Stand bleiben