Trackingcontainer / EATMS.js
- Übersicht
- Implementierung
- eatms.js auf Singlepage nachladen
- Tagmanagement mit GET-Parametern diversieren
Übersicht
Übersicht
Der eatms-Container dient zur Identifizierung und Wiedererkennung von Nutzern sowie zur Einbindung dynamischen Codes.
Er ersetzt den klassischen Tracking-Tag-Script-Code – wenn der eatms-Container eingebunden wird, muss der Tracking-Tag nicht zusätzlich eingebaut werden.
Vorteile durch den Einsatz als Tag-Manager
Der Einsatz des eatms-Containers als zentrales Verwaltungswerkzeug bietet folgende Vorteile:
- Zentrale Verwaltung: Alle Tracking-Tags, Pixel und Drittanbieter-Skripte können an einer einzigen Stelle verwaltet werden, ohne dass jedes Mal der Quellcode der Website angefasst werden muss.
- Flexibilität und Geschwindigkeit: Neue Marketing- und Analyse-Tools lassen sich deutlich schneller implementieren oder anpassen, da Änderungen direkt über den Container gesteuert werden. Dies verringert die Abhängigkeit von der IT-Entwicklung.
Attributions-Tracking
- Automatische EMID-Erfassung: Wenn ein Nutzer die Website über einen Trackinglink erreicht, wird die EMID für die Attribution automatisch erfasst und in einem Cookie gespeichert. Dadurch bleibt die Zuordnung auch bei nachfolgenden Seitenaufrufen erhalten.
Wichtige Hinweise
- Das
eatms.jsScript sollte aus Performance- und Funktionsgründen am Ende des<body>-Elements eingebunden werden. - Nicht innerhalb des
<head>-Elements platzieren. - Soll der Container zusätzlich zur Ausspielung von Tags genutzt werden, muss er mit den entsprechenden Zusatzinformationen (Parametern) angereichert werden.
Implementierung
Grundsätzlicher Einbau
Grundsätzlicher Einbau
<script src="//SUB-DOMAIN/trck/etms/eatms.js"></script>
SUB-DOMAINist ein Platzhalter und muss durch die korrekte Domain des Partnerprogramms ersetzt werden.
Parameter
Der eatms-Container kann durch URL-Parameter mit zusätzlichen Informationen angereichert werden:
| Parameter | Bedeutung | Beispiel |
|---|---|---|
campaign_id |
Kampagnen-ID | &campaign_id=123 |
product |
Produktkennung | &product=product123 |
pagetype |
Seitentyp (z. B. Landingpage, Checkout, etc.) | &pagetype=landingpage |
category |
Kategorie, in der sich der Nutzer befindet | &category=shoes |
disable_tags |
Verhindert das Nachladen von Tags | &disable_tags=true |
Beispiele
Minimaler Einbau
<script src="//SUB-DOMAIN/trck/etms/eatms.js"></script>
Mit Parametern (z. B. für Kampagnen, Produkte und Consent-Steuerung)
<script src="//SUB-DOMAIN/trck/etms/eatms.js?campaign_id=1&product=product123&pagetype=landingpage&disable_tags=true"></script>
Consent-Übergabe
Damit der eatms-Container DSGVO-konform eingesetzt werden kann, muss sichergestellt werden, dass keine Cookies oder Tags ohne die ausdrückliche Zustimmung des Nutzers geladen werden. Der Container bietet hierfür verschiedene Mechanismen an, um den Consent-Status zu verarbeiten.
Es gibt grundsätzlich drei Wege, dies umzusetzen:
1. Übermittlung via GDPR-Parameter (TCF-Standard)
Der eatms-Container kann die Industriestandards GDPR und GDPR_CONSENT (TCF-String) interpretieren.
- Funktionsweise: Der Container reagiert auf das vorliegende Signal und handelt entsprechend der hinterlegten Einstellungen.
- Vendor-ID: In den Systemeinstellungen des Programms muss die entsprechende Vendor_id hinterlegt werden. Falls keine spezifische ID definiert wurde, greift der Container automatisch auf die Vendor_id der easy Marketing GmbH zurück.
- Beispiel für den Script-Aufruf:
&gdpr=1&gdpr_consent=COvFyGBOvFyGBAbAAAENAPCAAOAAAAAAAAAAAEEUACCKAAA.IFoEUQQgAIQwgIwQABAEAAAAOIAACAIAAAAQAIAgEAACEAAAAAgAQBAAAAAAAGBAAgAAAAAAAFAAECAAAgAAQARAEQAAAAAJAAIAAgAAAYQEAAAQmAgBC3ZAYzUw
2. Steuerung über spezifische Parameter
Falls kein TCF-String verwendet wird, kann der Consent über einfache URL-Parameter im Script-Aufruf gesteuert werden.
A. Allgemeine Consent-Flags
Je nach Implementierung können individuelle Parameter übergeben werden. Der genaue Schlüssel (z. B. consent, gdpr, cmp=true) wird in Absprache mit der Datenschutz- und Technik-Abteilung festgelegt.
B. Gezielte Deaktivierung via disable_tags
Um das Nachladen von Tags (z. B. aus dem Tag-Manager) explizit zu verhindern, wenn keine Einwilligung vorliegt, kann die Variable disable_tags genutzt werden.
3. Bedingter Aufruf (Conditional Loading)
Alternativ zur Parameter-Steuerung kann die Ladegrenze direkt auf die Website-Logik verlagert werden.
- Konzept: Der eatms-Container wird erst dann aufgerufen, wenn der Benutzer seine Einwilligung gegeben hat.
- Logik: Das Script-Tag wird erst durch das Consent-Management-Tool (CMP) in das DOM injiziert, sobald beispielsweise die Zustimmung für "Marketing" vorliegt. Liegt kein Consent vor, wird der Container gar nicht erst geladen.
Zusammenfassung der Parameter
| Parameter | Mögliche Werte | Beschreibung |
|---|---|---|
gdpr |
0 oder 1 |
Aktiviert den DSGVO-Modus. |
gdpr_consent |
[TCF-String] | Übergibt den detaillierten Consent-String (IAB-Standard). |
disable_tags |
true / false |
Verhindert bei true das Laden jeglicher Tags innerhalb des Containers. |
consent |
true / false |
Individueller Flag (nach Absprache). |
Hinweis: Die Wahl der Methode und die Benennung der Parameter sollten zwingend zwischen der Technik und der Datenschutz-Abteilung abgestimmt werden, um die rechtliche Konformität sicherzustellen.
Bedingungen einrichten
Der eatms wird neben seiner Funktion zum setzen von Cookies dazu genutzt, um externen Code auf der Seite zu platzieren, auf der der Container eingebunden wurde.
Damit nicht jeder Code auf jeder Seite ausgegeben wird, auf der der eatms Container eingebunden ist, können Bedingungen hinterlegt werden, die für die Ausspielung des eatms Containers zuständig sind.
Folgende Bedingungen stehen zur Verfügung:
eatms.js auf Singlepage nachladen
Wenn der eatms-Container auf einer Website nicht beim Seitenwechsel neu geladen wird, weil die Seite an sich nicht neu geladen wird, gibt es die Möglichkeit, dies über eine Funktion zu tun:
Function:
text eaTms.reRun();
Eine andere Möglichkeit ist die Umsetzung über jQuery:
jQuery Funktion:
text $.getScript('//DOMAIN.DE/trck/etms/eatms.js?campaign_id=CAMPAIGN_ID');
Tagmanagement mit GET-Parametern diversieren
Über den Tagmanager ist es möglich, externe Skripte (eng.: scripts), wie bspw. Targetingpixel, auf Seiten auszugeben. Voraussetzung dafür ist, dass der Tagmanager auf der jeweiligen Seite integriert ist. Da aber nicht alle Skripte auf allen Seiten ausgegeben werden sollen, empfiehlt es sich, den Tagmanager mit weiteren Informationen anzureichern. Diese Informationen können dazu genutzt werden, um sie als Bedingung für die Ausspielung von Skripten zu nutzen. Dadurch wird gewährleistet, dass nur die notwendigen Skripte ausgespielt werden.
Daher empfehlen wir folgendes Vorgehen:
An den Tagmanager werden die Informationen über die Seite, auf welcher der User sich gerade befindet, mit einem GET-Parameter* angehangen. Wir empfehlen, diese Anreicherung auf so vielen Seiten wie möglich vorzunehmen. Mit der Voraussetzung, dass auf der Seite auch die dementsprechenden Informationen vorliegen.
Darüber hinaus empfehlen wir, so viele Informationen über die Keys aufzunehmen, wie auf der aktuellen Seite vorliegen. Hierbei können unterschiedliche Informationen auf den verschiedenen Seiten aufgenommen werden. Das könnten bspw. der Produktpreis auf Produktseiten oder die Anzahl der Artikel im Warenkorb auf der Warenkorbseite sein.
Eine kleine Auswahl von Keys haben wir hier aufgelistet:
-
pagetype=
- category
- product
- landingpage
- homepage
- search
- …
-
product=
- F20383044 (EAN)
- iPhone 13 Pro Max (Produktname)
- 232859258 (Artikelnummer)
- …
-
category=
- shirts
- beauty
- tv
- …
-
price=
- bruttopreis
- nettopreis
-
amount=
- 5
*GET-Parameter oder auch URL-Parameter genannt sind Informationen, welche an eine URL angehangen werden. Diese bestehen immer aus einem Key (Schlüssel) und einem Value (Wert). Ein Beispiel wäre: https://easy-m.de?key=value&key2=value2