Vollständige technische Richtlinien für korrektes Conversion-Tracking. Alle Angaben basieren auf offiziellen Plattform-Dokumentationen.
Das Fundament jedes Trackings. Ohne korrekt eingebundenen Google Tag oder GTM laufen alle anderen Maßnahmen ins Leere.
<head> auf jeder Seite einbindenAW-XXXXXXXXX (Google Ads Konto-ID)<head> und <body>?gclid=-Parameter nicht entfernenutm_source=google&utm_medium=cpcutm_source=bing&utm_medium=cpcGoogle Ads → Ziele → Conversions → Neue Conversion-Aktion. Kategorie, Wert und Conversion-Fenster definieren. Empfehlung: 30 Tage Click-through, 1 Tag View-through für Standard-B2B.
Primary Conversions fließen ins Smart-Bidding ein. Secondary Conversions sind reine Beobachtungspunkte (z.B. Seitenaufrufe, Newsletter-Anmeldungen). Nicht jede Micro-Conversion als Primary setzen.
Unterschiedliche Conversion-Werte je Gerät, Standort oder Zielgruppe definieren. Z.B. Mobile-Leads 20% weniger werten als Desktop, wenn die Close-Rate unterschiedlich ist. Unter Ziele → Conversion-Wert-Regeln.
Click-through: 7–90 Tage je Produkt (längere Kaufzyklen = längeres Fenster). View-through: 1 Tag empfohlen (konservativ). Zu langes Fenster verzerrt Kausal-Attribution.
GA4: Admin → Datenströme → Interne Traffic-Regeln → eigene IPs eintragen. Google Ads: Kampagneneinstellungen → IP-Ausschlüsse. Verhindert verfälschte Daten durch eigene Formular-Tests.
Seit März 2024 ist Consent Mode v2 Pflicht für alle Werbetreibenden, die Google-Ads-Personalisierung und Remarketing in der EU nutzen. Ohne es verliert Google den Consent-Status und kann keine personalisierten Anzeigen ausliefern.
ad_storage – Cookies für Ads-Trackinganalytics_storage – Cookies für GA4ad_user_data – Neu: Nutzerdaten für Google-Adsad_personalization – Neu: Personalisierung erlaubtMuss im <head> vor dem GTM-Container-Code stehen. Setzt alle Parameter auf "denied" bis der Nutzer entscheidet.
gtag('consent', 'default', {
'ad_storage': 'denied',
'analytics_storage': 'denied',
'ad_user_data': 'denied',
'ad_personalization': 'denied',
'wait_for_update': 500
});Im CMP-Tool (z.B. Cookiebot) den GTM-Integrations-Modus aktivieren. Das CMP schiebt den Consent-Status automatisch in den GTM-DataLayer. Kein manueller Update-Code nötig.
GTM: Neuer Tag → Google Consent Mode (Community-Template). Trigger: Custom Event "cookie_consent_update" oder dem CMP-spezifischen Event. Prüfen: GTM Preview zeigt Tag als "fired" nach Consent.
Chrome DevTools → Application → Cookies: keine Google-Cookies vor Consent. Nach Consent: _gcl_au, _ga vorhanden. Google Ads Diagnose-Tool bestätigt Consent Mode v2 aktiv.
Enhanced Conversions ergänzen das Standard-Pixel-Tracking um gehashte First-Party-Daten (E-Mail, Telefon, Adresse). Dadurch können Conversions auch dann zugeordnet werden, wenn Cookies blockiert oder gelöscht wurden.
Google Ads → Ziele → Conversions → Einstellungen → Enhanced Conversions für Web aktivieren. Nutzungsbedingungen akzeptieren.
Bestehenden Google Ads Conversion-Tag öffnen → Enhanced Conversions aktivieren → Datenquelle wählen: "User-provided data" Variable. GTM liest Formularfelder automatisch aus.
GTM → Variablen → Neue Variable → "User-Provided Data". Formularfelder mappen: E-Mail-Feld-Selektor, Tel-Feld-Selektor. Alternativ: Data Layer Variable wenn Daten im DataLayer liegen.
// DataLayer Push (Entwickler-Option)
window.dataLayer.push({
'event': 'conversion',
'user_data': {
'email': 'user@example.com', // wird von GTM gehasht
'phone_number': '+49...'
}
});Google Ads → Ziele → Conversions → Enhanced Conversions-Status prüfen. "Aktiv" und "Gesund" = korrekt. Testconversion auslösen und in Echtzeit-Bericht prüfen (bis zu 3h Verzögerung).
Beim Server-Side Tracking sendet nicht der Browser, sondern dein eigener Server die Conversion-Daten an Google. Adblocker, ITP und Cookie-Restrictions verlieren ihre Wirkung.
googleadservices.comGTM → neuer Container → "Server"-Typ. Hosting wählen: Google Cloud (einfach, aber teurer) oder Stape.io (günstiger Managed Service). Domain für den Container festlegen: z.B. tracking.deinedomain.de (First-Party-Domain!)
Bestehender GTM-Web-Container: Google Tag Einstellungen → "Server container URL" auf deine Tracking-Domain zeigen lassen. GTM sendet Events nun zu deinem Server statt direkt zu Google.
Server Container → neuer Tag → "Google Ads Conversions". Conversion-ID und -Label aus Google Ads eintragen. Client: "GA4"-Client im Server Container, der GA4-Events empfängt und weiterleitet.
Server setzt _gcl_aw-Cookie (GCLID) als First-Party-Cookie mit 90-Tage-Laufzeit. Überbrückt ITP-Beschränkungen (Safari limitiert 3rd-Party-Cookies auf 7 Tage). Einstellung im GTM-Server-Container unter "Google Tag".
GTM Server Container Preview → alle Events sichtbar? Google Ads: Conversion-Diagnose prüfen. Vergleich: Conversion-Zahlen vor/nach Server-Side-Einführung sollten steigen (weniger Datenverlust).
Für Unternehmen, bei denen der Abschluss offline passiert (Telefon, Sales-Team, CRM) oder bei mehreren Domains/Subdomains. Essentiell für korrektes B2B-Attribution.
gclid einfügenGoogle Ads → Ziele → Conversions → Neu → Kategorie "Offline". Quelle: "Importieren → CRMs, Dateien oder andere Datenquellen". Conversion-Name festlegen (z.B. "Offline-Abschluss").
// Verstecktes Feld im Formular
<input type="hidden" id="gclid_field" name="gclid">
// JavaScript: GCLID aus URL lesen
function getParam(p){
var match = RegExp('[?&]'+p+'=([^&]*)').exec(window.location.search);
return match && decodeURIComponent(match[1].replace(/\+/g,' '));
}
document.getElementById('gclid_field').value = getParam('gclid') || '';Pflichtfelder: Google Click ID, Conversion Name, Conversion Time (Format: yyyy-mm-dd hh:mm:ss+TZ). Optional: Conversion Value, Conversion Currency.
Zapier: Trigger "Deal geschlossen in HubSpot" → Action "Upload Offline Conversion in Google Ads". GCLID-Feld mappen, Conversion-Wert (Deal-Wert) übergeben. Läuft vollautomatisch.
Microsoft Advertising nutzt den Universal Event Tracking (UET) Tag – das Äquivalent zum Google Tag. Setup-Philosophie identisch, aber eigene Tags, Consent-Implementierung und Zielgruppen-Workflows.
<head> oder via GTMad_storage und analytics_storagemsclkidMicrosoft Ads → Tools → UET Tags → Neuen UET Tag erstellen. Tag ID notieren (6-stellige Nummer).
<script>
(function(w,d,t,r,u){w[u]=w[u]||[];w[u].push({'projectId':'10000','properties':
{'pixelId':'DEINE_UET_ID'}});var s=d.createElement(t);s.src=r;s.async=true;
s.onload=s.onreadystatechange=function(){var y,rs=this.readyState,c=w[u];
if(rs&&rs!="complete"&&rs!="loaded"){return}try{y=BRAT;for(var i in c)
{y(c[i].properties,c[i].projectId)}}catch(ignore){}};
d.getElementsByTagName(t)[0].parentNode.appendChild(s)})(window,document,"script",
"//bat.bing.com/bat.js","uetq");
</script>Microsoft Ads → Tools → Conversion Tracking → Neues Ziel. Kategorie wählen, Conversion-Fenster definieren, Wert festlegen. UET Tag verknüpfen.
Analog zur GCLID-Integration: verstecktes Feld msclkid, JavaScript liest den Parameter aus der URL und befüllt das Feld. Wichtig: Auto-Tagging in Microsoft Ads aktiviert lassen.
Customer Match erlaubt das Targeting bestehender Kunden über gehashte E-Mail-Listen. Essentiell für Upselling, Loyalitätskampagnen und als Ausschluss-Liste für Neukunden-Kampagnen.
| Feld | Format | Pflicht |
|---|---|---|
| lowercase, SHA-256 gehasht oder Rohform | Pflicht | |
| Phone | E.164: +4917xxxxxxxx | Optional |
| First Name | Kleinbuchstaben, kein Titel | Optional |
| Last Name | Kleinbuchstaben | Optional |
| Country | ISO 3166-1 Alpha-2 (z.B. DE, AT, CH) | Optional |
| Zip | PLZ ohne Leerzeichen | Optional |
Google Ads → Tools → Data Manager. Neues Segment erstellen → Kundenliste → Datenquelle verbinden.
Verfügbare Quellen: BigQuery, Google Cloud Storage, Amazon S3, Snowflake, Salesforce, PostgreSQL, MySQL, SFTP. Für CRM-Systeme: Zapier-Integration oder API nutzen.
Datenbankfelder auf Google-Felder mappen. Transformation möglich: z.B. Telefonnummer in E.164 konvertieren, E-Mail trimmen und auf Kleinbuchstaben normalisieren.
Empfehlung: tägliche Synchronisierung. Maximale Listengültigkeit: 540 Tage. Einträge älter als 540 Tage werden automatisch entfernt. Mindestens 1.000 aktive Einträge für Ausspielung.
Google Ads → Kontoeinstellungen → "Conversion-basierte Kundenlisten aktivieren". Google erstellt automatisch Zielgruppen aus Nutzern, die eine Conversion ausgelöst haben – Echtzeit-Update.
// Beispiel: User List Member hinzufügen (Python-Pseudocode)
client = GoogleAdsClient.load_from_storage()
user_data_service = client.get_service("UserDataService")
request = client.get_type("UploadUserDataRequest")
request.customer_id = customer_id
request.job = f"customers/{customer_id}/offlineUserDataJobs/{job_id}"
# User-Daten mit SHA-256 hashen
import hashlib
email_hash = hashlib.sha256("user@example.com".lower().encode()).hexdigest()
member = request.operations[0].create
member.user_identifiers.append(...) # email_hash einsetzen