HIER GEHT'S LOS

Erweiterte Google Ads Conversions mit Google Tag Manager einrichten

tl;dr: Ich zeige dir, wie du erweiterte Google Ads Conversions mit Google Tag Manager manuell einrichtest. Zum einen über CSS-Selektoren bzw. Datenschichtvariablen (in WooCommerce) und zum anderen über benutzerdefinierten JavaScript-Code. Dazu verwenden wir die Google Developer Console, den Google Tag Manager sowie eine Erweiterung für Google Chrome. 

Lesezeit: ca. 12 Minuten
Letztes Update: Juni 2022

In meiner Anleitung zum Thema E-Commerce Tracking mit WooCommerce von A-Z gehen wir unter Punkt 9 auch auf das Anlegen einer Conversion Aktion in Google Ads ein. Wenn wir im Google Tag Manager dataLayer-Variablen für die Bestellsumme, die Bestellnummer und die Währung anlegen, können diese Werte automatisch nach Google Ads übertragen werden, um den Erfolg bzw. ROAS (Return On Ad Spend) einer Kampagne zu messen.

Seit einigen Monaten bietet Google nun in einer Beta-Version die Möglichkeit, bei einer Transaktion mehr Kundendaten zu erfassen bzw. zu übertragen. Dies nennt sich Erweiterte Conversions und betrifft u.a. E-Mail Adressen, Telefonnummern und andere personenspezifische Daten wie Adresse, Postleitzahl oder Stadt.

Erweiterte Conversions und DSGVO

Doch Moment, wie schaut das hinsichtlich Datenschutzgrundverordnung (DSGVO) aus? Bei einer E-Mailadresse oder einer Telefonnummer handelt es sich doch um personenspezifische Daten (PII)? Hier hat sich Google etwas einfallen lassen, auf die zu übertragenden Daten wird datenschutzkonform der sichere Einweg-Hash-Algorithmus SHA256 angewendet, bevor die Daten an Google gesendet werden. Weitere Informationen zur Funktionsweise findet man direkt in der Google-Ads-Hilfe.

Voraussetzungen für erweiterte Conversions

Erweiterte Conversions sind nicht für jede Kampagne möglich. Google listet zwei Punkte auf, welche unbedingt notwendig sind:

  1. Du musst die URL der Conversion-Seite kennen, auf der das Conversion-Tag ausgelöst wird. In einem WooCommerce-Shop wäre dies beispielsweise eine /order-received/ Seite, bei einem Kontaktformular zum Beispiel eine /danke/ Seite. Die verschiedenen Möglichkeiten des Conversion Trackings im GTM, beispielsweise über ein custom event oder einen page view, habe ich in meinem Tutorial Conversion Tracking mit dem Google Tag Manager aufgezeigt.
  2. Auf der auslösenden Seite müssen logischerweise die zu erhebenden Kundendaten verfügbar sein, beispielsweise die E-Mailadresse, eine Telefonnummer, der Kundenname oder die Kundenadresse. In einem WooCommerce-Shop ist dies gewährleistet, da auf der /order-received/ Seite alle diese eben beschriebenen Daten vorhanden sind. Bei einem Kontaktformular (z.B. Contact Form 7) ist dies ebenfalls möglich, wenn dem Kunden auf der /danke/ Seite alle abgeschickten Infos nochmal zur Übersicht angezeigt werden.

Wenn diese beiden Punkte zutreffen, dann steht einer Aktivierung und Einrichtung der erweiterten Conversions nichts mehr im Weg. Wenn du bereits Google Ads schaltest, aber nicht weißt, wie das Conversion Tracking auf deiner Website eingerichtet ist, dann kannst du mich natürlich gerne kontaktieren.

Erweiterte Conversions in Google Ads aktivieren

Bevor wir die erweiterten Conversions im Google Tag Manager einrichten können, müssen wir diese zuerst bei Google Ads einmalig aktivieren. Du findest Conversions in deinem Google Ads Account im Bereich Tools und Einstellungen > Messung. Auf der Conversions-Übersichtsseite kannst du nun per Klick auf eine bestehende Conversion zu den Conversion-Einstellungen gelangen.

Google Ads Erweiterte Conversions

Bei der ersten Einrichtung musst du zunächst der Compliance-Erklärung von Google zustimmen. Anschließend kannst du Allgemeines Website-Tag (Anm. gtag) oder Google Tag Manager auswählen. Wenn auf WEITER klickst, überprüft Google, welches Tag auf deiner Website verbaut ist. Wenn der GTM erkannt wird, steht anschließend Google Tag Manager dort (wie auf dem Screenshot oben). Anschließend das geänderte Conversion-Tag abspeichern.

Achtung: Es kann bis zu fünf Tage dauern, bis die erweiterten Conversions im dazugehörigen Google Tag Manager Konto aktiviert werden. Dies solltest du bei der individuellen Planung berücksichtigen und daher nach maximal 5 Tagen überprüfen, ob die Funktion “Erweiterte Conversions” aktiviert ist.

Erweiterte Conversions mit Google Tag Manager einrichten

Standardmäßig gibt es drei Möglichkeiten, die erweiterten Conversions einzurichten – ich trenne die manuelle Konfiguration jedoch nochmal in zwei verschiedene Vorgehensweisen auf:

  1. Automatische Erfassung – diese werde ich in meinem Tutorial nicht berücksichtigen, da diese aktuell (November 2021) noch nicht wirklich flächendeckend ausgerollt ist bzw. ich die Option bei unseren Konten noch niemals bekommen habe. Mehr Infos zur möglichen Funktionsweise findet man wieder in der Google-Ads-Hilfe.
  2. Manuelle Konfiguration mit Datenschichtvariablen (DLV)
  3. Manuelle Konfiguration mit CSS Selektoren
  4. Code mit benutzerdefinierten JavaScript-Variablen

Für das Setup der manuellen Konfiguration mit CSS Selektoren bzw. über Code mit Javascript-Variablen ist eigentlich nicht einmal ein Basiswissen von CSS und JS notwendig. Du musst also kein Web-Developer sein, wenn du das erweiterte Conversion-Tracking nur auf Basis meines Tutorials einrichten willst ;- )

Manuelle Konfiguration mit Datenschichtvariablen (DLV)

In meinem Tutorial zum E-Commerce-Tracking mit WooCommerce habe ich beschrieben, wie man eine so genannte Datenschichtvariable (kurz DLV – Data Layer Value) aus dem dataLayer zieht. Wenn du das Conversion Tracking auf Basis dieses Tutorials eingerichtet hast, dann ist die Einrichtung der benötigten Werte für die erweiterten Conversions keine Hexerei mehr.

Ich stelle dir in der nachfolgenden Tabelle alle derzeit möglichen DLV-Variablen für WooCommerce zur Verfügung, nämlich spezifisch für Enhanced Ecommerce Tracking (EEC). Versichere dich also vor der Einrichtung, ob in deiner Analytics-Property unter Datenansicht > E-Commerce-Einstellungen die erweiterten E-Commerce-Berichte aktiviert sind.

Wert Datenschichtvariable
E-Mail orderData.customer.billing.email
Telefon orderData.customer.billing.phone
Vorname orderData.customer.billing.first_name
Nachname orderData.customer.billing.last_name
Straße orderData.customer.billing.address_1
Stadt orderData.customer.billing.city
Region orderData.customer.billing.address_2
Land orderData.customer.billing.country
Postleitzahl orderData.customer.billing.postcode

Hier einfach im Google Tag Manager unter “Variablen” die benötigte “benutzerdefinierte Variable” erstellen, “Datenschichtvariable” auswählen, dort den oben angezeigten Wert einbinden und nach einem vordefinierten Schema abspeichern. Ich persönlich nenne eine Datenschichtvariable immer “dlv – Name der Variable”.

DLV E-Mail

Diesen Vorgang für jede Variable wiederholen. Für Google ist die E-Mailadresse eine Voraussetzung. Alle anderen genannten Variablen können angelegt werden sind jedoch nicht verpflichtend.

Anschließend kannst du im Google Tag Manager deine bestehende Google Ads Conversion bearbeiten. Durch einen Klick auf das Häkchen bei “Von Nutzern gelieferte Daten von Ihrer Website einbinden” kannst du die erweiterten Conversions aktivieren. Wie zuvor beschrieben: diese Option ist erst einige Tage später verfügbar, sobald du die erweiterten Conversions in Google Ads aktiviert hast.

GAds Nutzerdaten

Per Klick auf “Select user-proviced data variable” (Anm. hier sieht man eindeutig, dass vieles noch im Beta-Stadium ist, weil dieser Menüpunkt noch nicht einmal auf Deutsch übersetzt wurde) kannst du unter “Neue Variable” eine neue Variable anlegen bzw. die zuvor angelegten Werte einbinden. Zuerst widmen wir uns der manuellen Konfiguration. Ich nenne die GTM-Variable an sich in diesem Fall “GAds – Nutzerdaten”.

Mit dem Klick auf “Manuelle Konfiguration” werden alle zuvor beschriebenen Variablen angezeigt. Du musst hier nichts anderes mehr machen, als auf jeden Wert zu klicken und die zuvor angelegte Variable auswählen, im nachfolgenden Screenshot für E-Mailadresse und Telefonnummer.

Google Ads Benutzerdaten

Sobald du alle benötigten Sub-Variablen hinterlegt hast, die Variable abspeichern und im Preview-Modus des GTM testen. Wenn alles seine Richtigkeit hast, siehst du bei der Untersuchung einer ausgelösten Conversion-Aktion nicht nur Bestellsumme, Bestellnummer und Währung, sondern auch die erweiterten Conversion-Werte.

Manuelle Konfiguration mit CSS Selektoren

Die Einrichtung über Datenschichtvariablen ist die nachhaltigste und auch unkomplizierteste. Vor allem, weil du dir keine Gedanken machen musst, wenn du auf deiner Website irgendwelche Umstellungen machst oder etwas im Quellcode änderst. Der dataLayer ist standardisiert und bleibt auch bei CMS- oder Template-Updates stets unverändert.

Allerdings gibt es auch die Möglichkeit, die Werte über CSS Selektoren abzugreifen. Wenn du in einem Standard-Shopsystem wie WooCommerce, Shopify oder Shopware eine Bestellung tätigst, werden im Checkout deine Kundendaten aufgelistet.

Für das nachfolgende Praxisbeispiel verwende ich erneut WooCommerce. Hier findet man im Bereich der Rechnungsadresse standardmäßig die meisten Werte, welche über die erweiterten Conversions übertragen werden können.

Klicke dazu mit der rechten Maustaste auf einen Wert (wie im nachfolgenden Screenshot die E-Mailadresse). Mit der Kontextmenü-Option “Untersuchen” kannst du das markierte Wort in der Developer Console untersuchen.

In der Developer Console klickst du nochmals mit der rechten Maustaste auf die E-Mailadresse im Quellcode, anschließend auf Kopieren und im letzten Schritt auf Selektor kopieren. Auf diese Weise wird der CSS-Selektor der E-Mailadresse in den Zwischenspeicher kopiert.

GTM Variable Checkout

 

Navigiere anschließend im Google Tag Manager zu den Variablen und erstelle eine neue benutzerdefinierte Variable. Hier benötigen wir keine Datenschichtvariable, sondern ein DOM-Element (DOM steht für Document Object Model).

Bei der Auswahlmethode ist standardmäßig die ID ausgewählt. Hier auf CSS-Selektor ändern. Anschließend den CSS-Selektor aus dem Zwischenspeicher reinkopieren und das DOM-Element abspeichern. Anschließend die gleiche Vorgehensweise wie mit den Datenschichtvariablen.

DOM E-Mail Adresse

Die Methode mit CSS-Selektoren ist deswegen fehleranfälliger als jene mit den Datenschichtvariablen, weil es passieren kann, dass die Selektoren bei Änderungen im Quellcode nicht mehr funktionieren. Beispielsweise wenn du das Aussehen des Checkout änderst oder sich der Checkout in WooCommerce (oder auch in einem anderen Shop-CMS) durch ein Versionsupdate selber verändert.

Code mit benutzerdefinierten JavaScript-Variablen

Die alternative Einrichtungsmöglichkeit zur Manuellen Konfiguration ist die Einrichtung über (benutzerdefinierten Java-)Code. Hier musst du im 1. Schritt in der “GAds – Nutzerdaten” Variable den Typ “Code” auswählen. Anschließend kannst du im Feld “Datenquelle” eine neue Variable anlegen.

GTM Nutzerdaten Code

Dort legst du nun eine Variable vom Typ “Benutzerdefiniertes JavaScript” an. Google stellt den Code für diese Variable zur Verfügung.

function () {
return {
"email": E-Mail_Variable , // Ersetzen Sie „E-Mail_Variable“ durch die Bezeichnung der Variable, über die die E-Mail-Adresse des Nutzers erfasst wird.
"phone_number": Telefonnummer_Variable , // Wiederholen Sie diese Zeile für „Telefonnummer_Variable“ und die folgenden Variablenbezeichnungen unten.
"first_name": Vorname_Variable
"last_name": Nachname_Variable , "home_address": {
"street": Adresse_Variable ,
"city": Ort_Variable ,
"region": Region_Variable ,
"postal_code": PLZ_Variable ,
"country": Land_Variable
}
}
}

Wichtig ist hierbei, dass du alle Code-Zeilen entfernst, welche du nicht zur Verfügung hast oder nicht benötigst. Wenn du also beispielsweise nur die E-Mailadresse und die Telefonnummer benötigst, dann würde der Code folgendermaßen aussehen:

function () {
return {
"email": E-Mail_Variable ,
"phone_number": Telefonnummer_Variable
}
}

Im Google Tag Manager selber sieht der Code folgendermaßen aus:

GTM Nutzerdaten JS

 

Ich benenne die Variable übrigens wieder nach dem Prinzip “Typ – Verwendung”, wobei cjs für custom java script steht. Du kannst dies natürlich benennen, wie du willst. Das Anlegen dieses benutzerdefinierten JavaScripts ist allerdings erst die halbe Miete, weil zum aktuellen Zeitpunkt nur den Standard-Code im GTM eingebunden hast, nicht aber die echten Werte.

Damit bei der “Code”-Variante die richtigen und echten Werte von GTM nach Google Ads übertragen werden, musst du für jede benötigte Variable eine JavaScript-Variable konfigurieren. Dies klingt äußerst komplex und nach einem Job für Webentwickler.

Die gute Nachricht: du musst nicht verzweifeln, das geht mit einem kleinen Workaround viel einfacher als gedacht. Im ersten Schritt musst du dir die Google Chrome Extension “GTM Variable Builder” von Alessandro Colarossi installieren. Diese findest du im Chrome Web Store.

GTM Variable Builder

Sobald du diese Extension installiert und aktiviert hast, kannst du aus jedem beliebigen Element im Frontend einer Website eine benutzerdefinierte JavaScript-Variable erstellen. Dies funktioniert folgendermaßen. Einfach im Checkout (bzw. auf deiner Conversion-Seite) den benötigten Text markieren. Anschließend die Developer Console öffnen, in den Bereich “Console” navigieren und auf das Icon der Extension klicken. Mit nur einem Klick wird aus dem markierten Element ein benutzerdefiniertes JavaScript generiert.

Anschließend kannst du in den Google Tag Manager wechseln und dort eine weitere Variable erstellen, erneut ein benutzerdefiniertes JavaScript. Dort kopierst du den Code hinein, welchen du dir zuvor über die Chrome Extension generiert hast.

GTM Email Variable

Ich habe die Variable in diesem Fall genau so benannt, wie Google die E-Mail-Variable in seinem Template benannt hat, also “E-Mail_Variable”.  Last but not least musst du den Platzhalter in der Nutzerdaten-Variable mit dem eben generierten Code ersetzen. Du kannst dies machen, indem du eine geschwungene Klammer (“{“) eintippst und anschließend im Dropdown-Menü auf die Sub-Variable mit dem richtigen Namen klickst.

CJS Email Variable

 

Auf diese Weise vermeidest du auch eine weitere Fehlerquelle, denn wenn du die Sub-Variable beispielsweise manuell eintippst und nur ein Leerzeichen zu viel machst, Groß-/Kleinschreibung nicht berücksichtigst oder ein Semikolon vergisst, funktioniert die Variable nicht.

Diesen Vorgang für alle vorhandenen bzw. benötigten Variablen wiederholen, anschließend abspeichern. Dann im Preview-Modus des GTM testen, ob die Werte korrekt übertragen werden. Wenn dies der Fall ist, kannst du eine neue Version des GTM-Containers veröffentlichen, damit die Adaptionen vom Live-System übernommen werden.

Resümee und Ausblick

Mit den erweiterten Conversions bietet Google seinen Ads-Kunden ein neues (bzw. neuartiges) Feature, mehr Daten über die eigenen Kunden zu generieren. Nachdem sich das Feature noch im Beta-Modus befindet, kann davon ausgegangen werden, dass Google noch einige Verbesserungen bzw. Erleichterungen implementieren wird. Als Beispiel kann ich hier auch die “Automatische Erfassung” nennen, welche in naher Zukunft mit Sicherheit zur Verfügung stehen wird.

Wer mit den Standard-Conversion-Daten (u.a. Bestellsumme, Bestellnummer) zufrieden ist, der kann die erweiterten Conversions derzeit noch ignorieren. Wer Conversions allerdings genauer erfassen wird, sollte sich das Feature in naher Zukunft zumindest ansehen.

Implementierung von Erweiterten Conversions

Die Implementierung ist meiner Meinung nach nichts für Einsteiger. Wer noch nie mit dem Google Tag Manager gearbeitet hat, sollte die Arbeit daher eventuell an seinen Developer oder an eine Agentur auslagern. Ich persönlich bevorzuge die einfachste und gleichzeitig am wenigsten fehleranfällige Möglichkeit – nämlich die Einbindung über Datenschichtvariablen. Die Einbindung über CSS-Selektoren und JS-Code funktioniert zwar ebenfalls, ist jedoch deutlich zeitaufwändiger und fehleranfälliger.

Was denkst du über das neue Google-Ads-Feature? Willst du in naher Zukunft bereits erweiterte Conversions messen? Lass mich in den Kommentaren wissen, was du über die erweiterten Conversions und die Einbindung über den Google Tag Manager denkst.


 

Über den Autor

Gerald Emprechtinger ist seit 2017 im Team von MONOBUNT und seit Februar 2022 als Agenturleiter tätig. Er hat ein Diplomstudium für Marketing und Medienmanagement an der FH Salzburg abgeschlossen, aktuell absolviert er ein berufsbegleitendes MSc-Studium für Digital Marketing & Analytics am MCI Innsbruck. Seine Leidenschaft gilt der Suchmaschinenoptimierung und der Webanalyse. Seit 2015 beschäftigt er sich mit WooCommerce und dem Google Tag Manager und hat dazu viele Blogartikel und Gastartikel verfasst. Hier geht es zu den weiteren Blogartikeln von Gerald bei MONOBUNT.

Archive

2 Antworten

  1. Sehr guter Artikel zum Thema Erweiterte Conversions mitsamt Anleitung! Dickes Lob :) Ich habe dazu nur eine Frage. Du schreibst, dass dies auch bei einem Kontaktformular möglich ist, wenn dem Kunden auf der /danke/ Seite alle abgeschickten Infos nochmal zur Übersicht angezeigt werden.

    Das heißt für mich, dass es über ein einfaches Kontaktformular mit einem “Vielen Dank. Wir haben Ihre Nachricht erhalten” auf der Bestätigungsseite noch nicht möglich ist. Lassen sich denn vielleicht schon nach einem Button-Klick wie “Jetzt Nachricht senden” auf der Seite des Kontaktformulars die bereits eingegebenen Informationen an Google mitgeben? Versteht das Google?

    Vorab schon mal besten Dank für die Antwort.

    Liebe Grüße
    Benett

    1. Hallo Benett,

      Vielen Dank für deine Antwort und dein Lob! Im Bezug auf die Erweiterten Conversions tut sich extrem viel – zum Zeitpunkt wo ich den Artikel verfasst hatte, war alles noch in einem ziemlichen Beta-Status. Im Bezug auf deine Frage: ich würde dir hier ein Kontaktformular-Plugin oder eine -Erweiterung empfehlen, welche die Formular-Daten im dataLayer mitsendet, dann kannst du diese wie von dir gewünscht durch den Klick auf “Jetzt Nachricht senden” übertragen.

      LG Gerald

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.

Bürozeiten:
MO-DO 08:00 – 17:00 Uhr
FR 08:00 – 12:00 Uhr