iFrame-Verfolgung mit dem Google Tag Manager

Voraussetzungen

Zwei GTM-Container sind erforderlich:

  1. GTM auf der Website des Kunden → Empfängt Ereignisse.
  2. GTM im Zenchef-Modul (iFrame) → Sendet Ereignisse.

Laden Sie die .json-Variablen herunter und importieren Sie sie in beide Container, bevor Sie beginnen, verfügbar hier.

 

 

Zielsetzung

Aktivieren Sie die Verfolgung von Zenchef-Reservierungen in Google Analytics 4 und Google Ads oder einer anderen Tracking-Lösung mit Google Tag Manager.

 

 

Erstellen von GTM-Tags

Drei Tags sind erforderlich:

  1. Benutzerdefiniertes HTML-Tag zum Senden von Ereignissen (innerhalb des GTM-Containers in Zenchef) → Sendet Ereignisse an die Website.
  2. Benutzerdefiniertes HTML-Tag zum Empfangen von Ereignissen (innerhalb des GTM-Containers auf der Website des Kunden) → Erfasst von Zenchef gesendete Ereignisse.
  3. Tracking-Tag (GA4 / Google Ads) (innerhalb des GTM-Containers auf der Website des Kunden) → Zeichnet Ereignisse im Tracking-Tool auf.

 

 

Konfigurieren der Tags

1️⃣ Sendetag (GTM Zenchef - iFrame)

Typ: Benutzerdefiniertes HTML
Code:

<script>
try {
var postObject = JSON.stringify({
event: 'reservation_completed',
variable: 'variable'
});
parent.postMessage(postObject, 'https://votresite.com');
} catch(e) {
console.log(e);
}
</script>

⚠️ Anpassen:

  • reservation_completed → Zu personalisierender Ereignisname (z.B. chose_date, chose_slot).
  • https://yourwebsite.com → Ersetzen Sie durch Ihre tatsächliche Website-Domain.
  • Fügen Sie bei Bedarf zusätzliche Variablen hinzu (stellen Sie sicher, dass sie mit denen aus der .json-Datei übereinstimmen).

Auslöser:

  • Typ: Benutzerdefiniertes Ereignis
  • Wählen Sie das entsprechende Ereignis aus der heruntergeladenen .json-Datei aus.

 

2️⃣ Empfangstag (GTM auf der Website des Kunden)

Typ: Benutzerdefiniertes HTML
Code:

<script>
(function(window) {
addEvent(window, 'message', function(message) {
try {
var data = JSON.parse(message.data);
var dataLayer = window.dataLayer || (window.dataLayer = []);
if (data.event) {
dataLayer.push({
'event': data.event,
'postMessageData': data
});
}
} catch(e) {}
});
function addEvent(el, evt, fn) {
if (el.addEventListener) el.addEventListener(evt, fn);
else if (el.attachEvent) el.attachEvent('on' + evt, function(evt) { fn.call(el, evt); });
else el['on' + evt] = function(evt) { fn.call(el, evt); };
}
})(window);
</script>

Auslöser:

  • Typ: Seitenansicht – Alle Seiten (um sicherzustellen, dass das Tag auf der gesamten Website aktiv ist).

 

3️⃣ GA4 / Google Ads Tracking-Tag (GTM auf der Website des Kunden)

Typ: GA4-Ereignis oder Google Ads Conversion-Tracking
Auslöser: Benutzerdefiniertes Ereignis

  • Ereignisname: Muss mit dem im ersten Tag definierten Namen übereinstimmen (z.B. reservation_completed).

 

Testen & Überprüfung

  • GTM-Vorschaumodus: Überprüfen Sie, ob Ereignisse korrekt gesendet und empfangen werden.
  • GA4-DebugView: Stellen Sie sicher, dass Ereignisse in Google Analytics angezeigt werden.
  • Google Tag Assistant: Überprüfen Sie, ob GTM die Tags korrekt auslöst.

Wichtig: Sobald die Tests erfolgreich sind, vergessen Sie nicht, Ihre GTM-Container (sowohl Zenchef als auch die Website des Kunden) zu veröffentlichen, um das Tracking im Produktivbetrieb zu aktivieren.

 

 

Zusammenfassung der durchzuführenden Aktionen:

  •  Importieren Sie die .json-Variablen in beide GTM-Container.
  • Fügen Sie ein Sende-Tag in GTM Zenchef hinzu.
  • Fügen Sie ein Empfangs-Tag in GTM auf der Website des Kunden hinzu.
  • Konfigurieren Sie ein GA4 / Google Ads Tracking-Tag auf der Website des Kunden.
  • Testen und validieren Sie mit Debugging-Tools.
  • Veröffentlichen Sie Ihre GTM-Container.

Die Verfolgung von Zenchef-Reservierungen ist jetzt vollständig betriebsbereit! 

Verknüpfung mit