Data Layer 

Data Layer: wie Ihre Website Daten an Tags übergibt

Zwei Personen arbeiten an einem Schreibtisch mit Computern in einem modernen Büro.
Ralph Grundmann · Zuletzt aktualisiert am 04.11.2026

Der Data Layer, deutsch Datenschicht, ist ein JavaScript-Objekt, über das eine Website Informationen an Tags übergibt. Der Google Tag Manager und das Google-Tag lesen dort Ereignisse und Werte aus, etwa den Namen eines Formulars oder den Wert einer Bestellung. Ihre Tags müssen diese Angaben dann nicht aus dem Seitenaufbau herauslesen.

Was ist ein Data Layer?

Laut Google dient der Data Layer dazu, Informationen an Tags weiterzugeben. Auf der Website ist er eine Liste mit dem Namen dataLayer. Die Website schreibt Daten hinein, der Tag Manager liest sie aus.

Das trennt die Website von der Messung. Ändert sich das Design, bleiben die Daten gleich. Ohne Data Layer müsste ein Tag solche Werte aus dem DOM holen, also aus dem Seitenaufbau. Dieser Weg versagt leichter, sobald sich eine Vorlage ändert.

Beispiel: dataLayer.push

Mit dataLayer.push fügen Sie neue Angaben hinzu. Dieses Beispiel meldet ein abgesendetes Formular:

dataLayer.push({
  'event': 'generate_lead',
  'form_name': 'kontakt'
});

Der Schlüssel event hat eine feste Bedeutung, denn auf ihn reagieren Trigger. generate_lead ist ein Ereignisname aus der Referenz von GA4. form_name ist ein frei gewählter Name.

Angaben, die schon beim Laden der Seite bereitstehen sollen, stehen im Quelltext über dem Snippet des Tag Managers:

<script>
window.dataLayer = window.dataLayer || [];
dataLayer.push({
  'pageType': 'produktseite',
  'visitorType': 'kunde'
});
</script>

Die Zeile mit window.dataLayer legt die Liste an, falls sie noch nicht besteht, und überschreibt vorhandene Einträge nicht.

Beispiel: Kauf im Online-Shop

Für E-Commerce sieht Google ein festes Schema vor. Auf der Bestellbestätigung meldet dieses Beispiel einen Kauf von zwei Artikeln an GA4:

dataLayer.push({ ecommerce: null });
dataLayer.push({
  event: 'purchase',
  ecommerce: {
    transaction_id: 'B-10042',
    value: 50.00,
    tax: 9.50,
    shipping: 4.90,
    currency: 'EUR',
    items: [{
      item_id: 'SKU-123',
      item_name: 'Beispielprodukt',
      price: 25.00,
      quantity: 2
    }]
  }
});

Die erste Zeile leert das vorherige E-Commerce-Objekt, damit keine alten Werte in das neue Ereignis geraten. Pflicht sind transaction_id und items. value braucht GA4 für Umsatzberichte, currency immer dann, wenn value gesetzt ist. value ist die Summe aus Preis mal Menge ohne Versand und Steuer, beide stehen in eigenen Feldern. Die Transaktions-ID verhindert doppelt gezählte Käufe.

Data Layer im Google Tag Manager

Der Tag Manager arbeitet in drei Schritten mit den Einträgen:

  1. Trigger: Ein Trigger vom Typ „Benutzerdefiniertes Ereignis“ mit dem Namen generate_lead reagiert auf den Eintrag.
  2. Variable: Eine Datenschichtvariable mit dem Namen form_name liest den Wert aus.
  3. Tag: Ein Tag für GA4 oder für das Conversion-Tracking löst aus und sendet den Wert weiter.

Tag, Trigger und Variable erklärt der Artikel zum Google Tag Manager. Der Server-Container arbeitet anders. Er erhält Anfragen, aus denen Clients Ereignisdaten machen, und sieht die Liste im Browser selbst nicht. Werte aus dem Data Layer müssen Sie dafür im Web-Container als Parameter mitsenden.

Data Layer oder Werte aus der Seite auslesen?

Quelle Eignet sich für Aufwand und Risiko
Integrierte Variablen Einfache Werte wie Seitenpfad oder Klickziel Kein Entwicklungsaufwand, nur wenige Werte verfügbar
Auslesen aus dem Seitenaufbau Schnelle Tests und sichtbare Texte Kein Entwicklungsaufwand, bricht leicht bei Änderungen an der Vorlage
Data Layer Bestellwerte, Produktdaten, Formularnamen und alles, was nicht sichtbar auf der Seite steht Einmalige Entwicklung, bleibt bei Designänderungen stabil

Für Werte, auf denen Gebote oder Umsatzberichte beruhen, spricht vieles für den Data Layer.

Data-Layer-Konzept für die Entwicklung

Bevor jemand Code schreibt, legen Sie fest, welches Ereignis wann ausgelöst wird und welche Werte es enthält. Eine kleine Tabelle reicht aus:

Ereignis Auslöser Werte
view_item Produktseite geladen currency, value, items
generate_lead Formular erfolgreich übermittelt form_name
purchase Bestellbestätigung geladen transaction_id, value, currency, items

Halten Sie Namen und Beispielwerte fest. Danach kann die Entwicklung jedes Ereignis gegen diese Tabelle prüfen. Nutzen Sie die empfohlenen GA4-Namen, wenn es für den Vorgang welche gibt.

Data Layer testen

  1. Vorschau öffnen: Starten Sie die Vorschau des Tag Managers und lösen Sie den Vorgang aus, zum Beispiel einen Testkauf.
  2. Einträge prüfen: Laut Google zeigt der Tag Assistant den Zustand des Data Layers zu jedem Zeitpunkt der Ereigniskette. Prüfen Sie Ereignisname, Schreibweise und Werte.
  3. Browser-Konsole nutzen: Die Eingabe von dataLayer in den Entwicklerwerkzeugen listet alle Einträge der Seite auf.
  4. Empfang prüfen: Kontrollieren Sie im Zieldienst, ob der Wert dort richtig ankommt, etwa in den Echtzeitberichten von GA4.

Regeln für einen funktionierenden Data Layer

  • Schreibweise: dataLayer muss genau so geschrieben sein. datalayer funktioniert laut Google nicht.
  • Nie überschreiben: Eine neue Zuweisung löscht laut Google vorhandene Einträge.
    // Löscht vorhandene Einträge. So nicht verwenden:
    window.dataLayer = [];
    
    // Richtig:
    window.dataLayer = window.dataLayer || [];
  • Nur für die aktuelle Seite: Werte gelten laut Google, solange die Person auf der Seite bleibt. Was Sie auf mehreren Seiten brauchen, schreiben Sie auf jeder Seite neu hinein. In Single-Page-Anwendungen gibt es keinen neuen Seitenaufruf, daher bleiben alte Werte bestehen, bis Sie sie ersetzen.
  • Anführungszeichen: Google empfiehlt, Variablennamen in Anführungszeichen zu setzen. Technisch nötig sind sie in JavaScript nur, wenn der Name Sonderzeichen wie einen Bindestrich enthält. 'event' und event ergeben denselben Eintrag, wie die Beispiele oben zeigen.
  • Einheitliche Namen: Dieselbe Angabe heißt auf allen Seiten gleich. visitorType und visitor_type wären zwei verschiedene Variablen.
  • Reihenfolge: Angaben für den Seitenaufruf stehen vor dem Snippet des Tag Managers.
  • Sparsam mit Daten: Der Data Layer lässt sich im Browser auslesen. Schreiben Sie nur hinein, was die Messung braucht, und klären Sie personenbezogene Angaben vorab mit der für Datenschutz zuständigen Person.


 Ihr nächster Schritt 

Sie möchten einen Data Layer planen oder prüfen lassen?

Wie wir vorgehen, beschreibt unsere Seite Web Analytics. Im Erstgespräch klären wir, was für Ihre Website sinnvoll ist.


Erstgespräch anfragen
 Häufige Fragen 

Data Layer: die wichtigsten Fragen

Was ist der Data Layer im Google Tag Manager?

Der Data Layer ist ein JavaScript-Objekt auf Ihrer Website, in das die Website Ereignisse und Werte schreibt. Der Google Tag Manager liest sie aus und übergibt sie an Tags.

Brauche ich einen Data Layer?

Für einfache Messungen wie Seitenaufrufe nicht. Sinnvoll ist er, sobald Sie Angaben aus dem System brauchen, etwa Bestellwerte, Produktdaten oder den Namen eines Formulars.

Wer befüllt den Data Layer?

In der Regel die Entwickler:innen der Website oder eine Shop-Erweiterung. Die Messverantwortlichen legen vorher fest, welche Ereignisse und Namen gebraucht werden.

Warum kommt mein Data-Layer-Wert nicht im Tag an?

Häufige Gründe sind eine abweichende Schreibweise, ein Ereignis, das erst nach dem Tag ausgelöst wird, oder eine Datenschichtvariable mit falschem Namen. Bei verschachtelten Werten braucht die Variable den Punkt-Pfad wie ecommerce.value. Die Vorschau zeigt, welcher Wert beim Auslösen tatsächlich vorlag.

Weitere Begriffe

 Erstgespräch anfragen 

Fragen zu diesem Thema?

Schreiben Sie uns kurz, worum es geht. Sie sprechen direkt mit Ahmed Badia.
Microsoft Partner Badge
SISTRIX-zertifizierte Agentur
4,9
Basierend auf 32 Rezensionen

Bewertungen aus unserem Google-Unternehmensprofil. Wir gleichen jede Bewertung mit unseren Kundenprojekten ab.

Erstgespräch anfragen
Ahmed Badia
Ahmed BadiaSenior Software Developer Team LeadAnrufen: 0228 243 313 54

* Pflichtangabe

Bitte geben Sie Ihren Namen ein.

Bitte geben Sie eine gültige E-Mail-Adresse ein, z. B. name@firma.de.

Für einen Rückruf.

Bitte geben Sie Ihre Nummer mit Vorwahl ein, z. B. 0228 243 313 53 oder +49 228 243 313 53.

Bitte schreiben Sie uns kurz, worum es geht.

Kostenlos und unverbindlich. Antwort in der Regel noch am selben Werktag.

Informationen zur Verarbeitung Ihrer Daten: Datenschutzerklärung