Die Implementierung eines Tag Containers hat sowohl für die IT- als auch die Marketing-Abteilungen von Unternehmen wesentliche Vorteile. IT’ler sparen sich ständige Anfragen bzgl. der Integrierung neuer Code Schnipsel, Marketing Leute empfinden weniger Frustration, da sie auf eine Integrierung eines dreizeiligen Code nicht mehr Tage oder auch oftmals Wochen warten müssen. Hinzu kommt eine verbesserte Übersichtlichkeit und Ordnung im Quelltext und schlussendlich muss auch der Geschwindigkeitszuwachs einer asynchronen Lösung erwähnt werden, da ein Browser nun beim Rendern einer Seite nicht mehr auf diverse Trackingpixel warten muss.
Viele Argumente sprechen also für den Einsatz eines Tag Containers. Beim Google Tag Manager kommt hinzu, dass dieser im Gegensatz zu vielen anderen Lösungen, kostenlos ist. Eine simple Implementierung ist relativ schnell und einfach bewerkstelligt. Die Generierung des GTM Tags, die Auswahl des Analytics Tag-Typs und die Auswahl der Tracking-ID sollte nicht länger als 10 Minuten dauern und kaum jemanden vor größere Probleme stellen. Eine gute Einstiegshilfe und die Basis-Implementierung finden Sie hier.
Die korrekte Implementierung des AdWords und Bing Conversion Trackings (inkl. Übergabe des Bestellwertes), Analytics E-Commerce Trackings sowie Affiliate Marketing Tracking ist allerdings alles andere als trivial und schon ein wenig anspruchsvoller. Dieses Tutorial bietet eine Schritt für Schritt Anleitung zur korrekten Implementierung aller oben genannter Kanäle.
Inhalt
- AdWords Conversion Tracking
- Conversion Werte übergeben
- Analytics E-Commerce Tracking
- Bing Ads Implementierung
- Affiliate Tracking Implementierung
AdWords Conversion Tracking
Die Konvertierungsziele werden wie immer über den AdWords Tracking Manager erstellt. Im nächsten Schritt muss nun in der Tag Manager Oberfläche ein AdWords Conversion Tag mit den entsprechenden Parametern erstellt werden.
- Klicken Sie dazu „Neu“ > „Tag“
- Benennen Sie den Tag. Ein eindeutiger Name wie „AdWords Conversion Tag“ bietet sich an.
- Die „conversion_id“ finden Sie im vom AdWords generierten Tracking Code
- Ebenso den Wert für das Feld „conversion_label“
- Conversion Wert wird nur benötigt, wenn Sie die generierten Umsätze übergeben wollen. Der Tag Manager nutzt hierzu Markos, geben Sie also in das Feld {{conversionValue}} ein. Grundsätzlich können Sie das Feld benennen wie Sie möchten, in diesem Tutorial nutzen wir allerdings conversionValue. Details zu Makros finden Sie weiter unten im Artikel.
- Speichern Sie den Tag
Im nächsten Schritt muss nun eine „Regel“ definiert werden, wann und wo der AdWords Conversion Code ausgespielt werden soll. Hierbei handelt es sich um Ihre „Conversion Page“. Diese Regel gilt natürlich nicht nur für AdWords, sondern für alle anderen genutzten Kanäle, in denen Sie Conversions tracken möchten.
- Klicken Sie dazu rechts oben bei „Auslösungsregeln“ auf „Hinzufügen“
- Am besten ist eine eindeutige Benennung wie z.B. „Conversion Page“.
- Unter „Bedingungen“ können Sie nun die URL Ihrer /bestellung-abgeschlossen/ Seite angeben. Definieren Sie dazu {{url}} „enthält“ z.B. /bestellbestaetigung/ (Oder wie auch immer Ihre Bestätigungsseite heißt)
- Definieren Sie zusätzlich noch {{event}} „ist gleich“ gtm.dom. Diese Bedingung weist den Tag Manager an mit dem Auslösen zu warten, bis die Bestätigungsseite vollständig geladen wurde. Zwingend erforderlich ist diese Angabe, wenn die E-Commerce Variablen nach dem Google Tag Manager im Quelltext erscheinen. Auch dazu später mehr.
- Speichern Sie ihre Regel
Der Adwords Tag wurde nun erfolgreich definiert. Im nächsten Schritt lernen Sie, wie ein Conversion Wert übergeben wird.
Conversion Werte übergeben
Wie oben erwähnt, nutzt Tag Manager Makros um variable Werte zu übernehmen. Das am häufigsten verwendete Marko ist die „Datenschichtvariable“ (DataLayer). Die Nutzung von DataLayers ist besonders für das E-Commerce Tracking notwendig. Um nur die generierten Umsätze an AdWords zu übergeben reicht es, die Datenschichtvariable auf der Bestätigungsseite mit den Umsatzwerten zu populieren. Unsere Datenschichtvariable für die Umsätze heißt „conversionValue“ und wird wie folgt definiert:
Conversion Makro definieren
- Klicken Sie dazu „Neu“ > „Makro“
- Benennen Sie das Makro. Wie oben erwähnt können Sie den Namen frei wählen, in diesem Tutorial heißt das Makro „conversionValue“
- Wählen Sie „Makrotyp“, „Datenschichtvariable“
- Benennen Sie die Datenschichtvariable mit „conversionValue“
- Wählen Sie Datenschichtversion 1
- Speichern Sie das Makro
Datenschichtvariable auf der Bestätigungsseite populieren
Im Quelltext der Bestellbestätigungsseite muss die unten stehenden Datenschichtvariable erscheinen und populiert werden. Das Feld XXXXX muss durch den Umsatz ersetzt werden (achten Sie darauf, einen Punkt anstelle eines Kommas zu nutzen, also z.B. 11.49 bei einem Umsatz von €11,49).
<script type="text/javascript"> dataLayer.push({'conversionValue': XXXXX}); </script>
Erstellen Sie nun eine neue Version des Containers und veröffentlichen Sie diesen. Wenn alle Schritte korrekt befolgt wurden, werden nun alle Umsätze an AdWords übergeben.
Analytics E-Commerce Tracking
Für Online Shops ist eine volle E-Commerce Tracking Implementierung unerlässlich. Für die korrekte Übergabe der Analytics E-Commerce Variablen aus dem Google Tag Manager sind diverse Makros / Datenschichtvariablen notwendig bzw. sinnvoll.
- transactionId – Eindeutige Bestellnummer (Pflicht)
- transactionAffiliation – I.d.R. der Shopname (Optional)
- transactionTotal – Ges. Wert der Bestellung inkl. Steuern und Versand (Pflicht)
- transactionTax – Höhe der Mehrwertsteuer (Optional)
- transactionShipping – Versandkosten (Optional)
- transactionCurrency – Währung (Pflicht)
- transactionCity – Stadt (Optional)
- transactionPostcode – PLZ (Optional)
- transactionCountry – Zielland (Optional)
- transactionProducts – Liste der erworbenen Artikel (Optional)
Wie auch das Makro „conversionValue“ müssen die oben stehenden (Pflicht) Datenschichtvariablen definiert werden. Folgen Sie also dem oben beschriebenen Prozess, aber achten Sie darauf, bei der Definition von „transactionProducts“ Datenschichtversion 2 zu wählen, da diese Variable verschachtelte Werte (Produkte) enthält.
Außerdem müssen folgende Produkt-Transaktionsdaten definiert sein:
- sku – Steht für „Stock Keeping Unit“ und bezeichnet die Artikelnummer
- name – Name des Produktes
- category – Produktkategorie
- price – Artikelpreis
- quantity – Anzahl
Beispielscript:
<script type="text/javascript"> var products=[ { sku: '201-xxx-xxxx-xx', name: 'Produktname 1', category: 'Produktkategorie 1', price: 1.59, quantity: 1 }, { sku: '202-xxx-xxxx-xx', name: 'Produktname 2', category: 'Produktkategorie 2', price: 9.90, quantity: 1 }, { sku: '202-xxx-xxxx-xx', name: 'Produktname 3', category: 'Produktkategorie 3', price: 10.00, quantity: 1 } ]; dataLayer.push({ event: "ecomEvent", transactionId: "274675", transactionAffiliation: "Shopname", transactionTotal: 21.49, transactionTax: 4.09, transactionShipping: 0, transactionCurrency: "eur", transactionCity: "Bonn", transactionPostcode: "53115", transactionCountry: "Deutschland", transactionProducts: products }); </script>
Das E-commerce Script kann im Quelltext vor dem Tag Manager Script erscheinen. Da unserer Conversion Regel allerdings „event“ „ist gleich“ „gtm.dom“ hinzugefügt wurde, ist dies nicht zwingend notwendig, da der Tag Manager wartet bis das Dokument vollständig geladen wurde und sicherstellt, dass alle Werte vorhanden sind.
Bing Ads Implementation
Mit den oben definierten Makros und der Auslöseregel geht auch die Bing Conversion Code Implementierung zügig vonstatten. Dafür melden Sie sich in Ihrem Bing Ads Konto an, generieren Ihren Conversion Code und kopieren diesen in die Zwischenablage. Öffnen Sie nun den Tag Manager.
- Klicken Sie dazu „Neu“ > „Tag“
- Benennen Sie den Tag, auch hier am besten eindeutig mit z.b. „Bing Ads Conversion“
- Wählen Sie Tag-Typ (Benutzerdefiniertes HTML)
- Kopieren Sie den Code aus der Zwischenablage in das „HTML“ Fenster
- Ersetzen Sie taxcost= mit der Datenschichtvariablen „transactionTax“, also taxcost={{transactionTax}}
- Das Gleiche für „shippingcost“, also shippingcost={{transactionShipping}}
- Schlussendlich noch revenue, also revenue={{transactionTotal}}
- Fügen Sie Ihre Auslösungsregel hinzu (Conversion Page)
- Speichern Sie den Tag
- Veröffentlichen Sie den Container
Affiliate Marketing Tracking
Mit Hilfe unserer Makros können wir nun auch jedes Affiliate Netzwerk implementieren. Dieses Beispiel nutzt den Tracking Code von Belboon und auch hier kopieren wir den vom Netzwerk generierten Code in die Zwischenablage.
- Klicken Sie dazu „Neu“ > „Tag“
- Benennen Sie den Tag, z.b. „Belboon Conversion“
- Wählen Sie Tag-Typ (Benutzerdefiniertes HTML)
- Kopieren Sie den Code aus der Zwischenablage in das „HTML“ Fenster
- Je nach Affiliate Netzwerk heißen die zu ersetzenden Parameter natürlich unterschiedlich. Im wesentlichen sind es aber i.d.R. immer drei: Netzwerk ID (wird vom Netzwerk übergeben und muss bis zur Sale Page „durchgeschleift“ werden, bei Belboon „belboon“), Transaktions ID (bei Belboon „oc“) und Umsatz (bei Belboon „sale“)
- Wir nutzen wieder die passenden Makros. Setzen Sie nun oc={{transactionId}} und sale={{transactionTotal}} und belboon={{belboon}} (Erklärung zu dem DataLayer Belboon folgt unten)
- Speichern Sie den Tag
- Veröffentlichen Sie den Container
Damit auch der Netzwerkparameter korrekt gespeichert und auf der Bestätigungsseite übergeben werden kann, müssen wir hierzu ein passendes Makro definieren.
Folgender Code muss im Quelltext erscheinen, damit der Netzwerkparameter korrekt in einer Datenschichtvariablen gespeichert werden kann. Bitte ersetzen Sie YYYY mit dem Wert, welcher vom jeweiligen Netzwerk übergeben wurde.
<script type="text/javascript"> dataLayer.push({belboon:YYYY}) </script>
Wenn Ihnen die Implementation zu kompliziert erscheint, bietet Rheinwunder auch einen Google Tag Manager Implementierungs Service.
Liebes Team von Rheinwunder,
wir sind im Moment dran unsere Website umzustellen auf mehr als ein Produkt und da habe ich euren Blog Eintrag gesehen, was wir bis dato gemacht haben ist den Google Tag Manager anzulegen und dieser funktioniert auch ganz gut.
Ich habe 2 Fragen
1) die Produkttransaktionsdaten müssen für jedes Produkt angefertigt werden und im Code der Seite eingesetzt werden, habe ich sie richtig versanden?
1a) Wenn ich das getan habe, kann mir Google analytics den Gesamtumsatz auswerfen? Davor nicht?!
2) Wenn ich nur ein Produkt in meinen Shop habe, ist es dann notwendig Produkttransaktionsdaten zu haben? den das Google Adwords Targeting transportiert mir den Einzelbetrag meines Produkts schon mit!
Mit freundlichen Grüßen
Lilian Weinberger
Guten Tag Frau Weinberger,
Vielen Dank für Ihren Kommentar.
1) Wenn Sie das Analytics E-Commerce Tracking einsetzen wollen, müssen auf der Bestätigungsseite die Transaktionsdaten wie im Tutorial beschrieben vorhanden sein.
1a) Sollten Sie einen Verkauf als „Ziel“ definiert haben, können Sie diesem bei Zielerreichung einen statischen Wert zuweisen. Umsätze werden ansonsten ausschließlich mithilfe des E-Commerce Trackings erfasst.
2) Über das AdWords Tracking sehen Sie nur Umsätze, die auch von AdWords generiert wurden. Mithilfe des E-Commerce Trackings können Sie Umsätze über alle Kanäle z.B. organische Suche, Newsletter, Affiliate, Facebook etc. berichten.
Ich hoffe das hilft!
Viele Grüße
Ralph
Hi Ralph,
hast du eine Idee, wie das mit dem neuen UET bing Tag und GMT zusammen funktioniert? Komme ich ohne extra Data Layer Integration für den bing code aus? Das würde ja sonst mal wieder den Sinn eines Tag Managements obsolet machen…
BG und danke
Jan
Hey Jan,
Den Bing UET Tag via GTM ohne dynamisches Umsatztracking zu nutzen funktioniert problemlos, den Artikel im Bing Blog zu diesem Thema hast Du bestimmt schon gefunden. Wenn Du auf der Bestätigungsseite den Umsatz übergeben möchtest, kommst Du aber leider nicht ohne zusätzliches JS im Quelltext aus:
Auch sonstige Event Goals müssen erst händisch implementiert werden. Wie Du sagst, macht das eine Container Lösung schon fast wieder obsolet.
Danke übrigens für den Hinweis, ich sollte den Post und die Bing UET Implementierung bei Gelegenheit einmal aktualisieren!
Sehen wir uns auf der dmexco?
Viele Grüße
Ralph
Danke dir! Der Artikel ist mir tatsächlich untergegangen…
Ja, wir sehen uns auf der DMEXCO! Klaro 😉
BG
Jan