WordPress macht es leicht, Tracking einzubauen. Zu leicht, könnte man sagen. Für den Meta Pixel gibt es ein Plugin, für Google ein anderes, für TikTok ein drittes, dazu ein Cookie-Plugin und vielleicht noch der Google Tag Manager, den eine frühere Agentur eingerichtet hat. Nach zwei Jahren weiß niemand mehr, welches Script was misst, welche Conversion doppelt zählt und ob der Cookie-Banner überhaupt alles blockiert, was er blockieren soll.
Diese Anleitung zeigt einen einfacheren Weg: ein einziges Script im Head deiner WordPress-Seite, das alle Werbeplattformen versorgt. Du erfährst, wo du das Script am besten einfügst, wie du Formular-Leads zuverlässig als Conversion zählst und welche WordPress-typischen Fallen dir die Daten verfälschen.
Warum Tracking in WordPress so oft chaotisch wird
Das Problem ist selten ein einzelnes kaputtes Plugin. Es ist die Summe:
- Ein Plugin pro Plattform. Jedes bringt eigene Einstellungen, eigene Event-Namen und eigene Updates mit. Ein Plugin-Update kann still und leise Events umbenennen oder abschalten.
- Doppelte Pixel. Der Meta Pixel steckt im Theme, im Pixel-Plugin und im Tag Manager. Jeder Seitenaufruf zählt dann zwei- oder dreimal, und deine Kampagnen optimieren auf aufgeblähte Zahlen.
- Cookie-Plugin und Tracking passen nicht zusammen. Ein Consent-Plugin kann nur Scripts blockieren, die es kennt. Was ein anderes Plugin nachlädt, rutscht oft durch.
- Nur im Browser. Klassische Pixel-Plugins messen im Browser. Ad-Blocker, Safari und iOS schlucken einen Teil der Signale, bevor sie Meta oder TikTok erreichen.
Mehr Plugins lösen das nicht. Weniger Bausteine schon.
Das Ziel: ein Script statt fünf Plugins
Mit LeadSignal ersetzt ein einziges Tracking-Snippet die einzelnen Pixel-Plugins. Das Script erfasst Seitenaufrufe, deine Conversions und den Consent deiner Besucher und verteilt die Events an die verbundenen Plattformen:
- Meta: Meta Pixel im Browser und zusätzlich die Conversions API vom Server, mit Event-Deduplizierung über eine gemeinsame Event-ID.
- TikTok und LinkedIn: Pixel bzw. Insight Tag im Browser plus Events API bzw. LinkedIn Conversions API vom Server.
- Google Ads: das Google-Tag im Browser mit Consent Mode v2 und Enhanced Conversions. Eine serverseitige Übertragung an Google bietet LeadSignal derzeit nicht an.
Dazu kommt ein eingebauter Cookie-Banner, sodass du kein separates Consent-Plugin brauchst. Wie das Prinzip unabhängig vom CMS funktioniert, erklärt unser Guide zu einfachem Conversion-Tracking.
Schritt 1: Aufräumen, bevor du etwas Neues einbaust
Bevor das neue Script live geht, entferne alles, was dieselben Pixel bereits lädt. Sonst misst du doppelt.
Typische Kandidaten in WordPress:
- Pixel-Plugins wie PixelYourSite oder das offizielle Meta-Plugin für WordPress
- Google-Plugins, die das Google-Tag für Google Ads einbinden, etwa Site Kit mit aktivierter Ads-Verknüpfung
- GTM-Plugins wie GTM4WP, wenn der Container nur Werbepixel enthält
- Code, den jemand direkt ins Theme geschrieben hat, meist in der
header.phpoderfunctions.php - Snippets in einem "Header und Footer"-Plugin
Ein schneller Check: Öffne deine Seite im Inkognito-Fenster, mach einen Rechtsklick auf "Seitenquelltext anzeigen" und suche nach fbq(, gtag(, ttq. und _linkedin_partner_id. Jeder Treffer, den du nicht bewusst behalten willst, gehört entfernt.
Das ist nicht nur eine Frage sauberer Zahlen. Der LeadSignal-Cookie-Banner steuert nur die Scripts, die LeadSignal selbst lädt. Ein Pixel, das ein anderes Plugin einbindet, lädt an deinem Banner vorbei, im Zweifel ohne Einwilligung.
Behalte GA4 ruhig, wenn du es für Analysen nutzt. LeadSignal funktioniert neben einem bestehenden GA4-Setup.
Schritt 2: Das Script in WordPress einfügen
Kopiere das Script aus deinem LeadSignal-Dashboard. Es gehört in den <head> jeder Seite. In WordPress hast du dafür mehrere Wege, sortiert vom einfachsten zum technischsten:
| Weg | Für wen | Hinweis |
|---|---|---|
| Code-Snippet-Plugin (z. B. WPCode) | Die meisten Seiten | Script als "Site Wide Header" einfügen. Überlebt Theme-Wechsel und Updates. |
| Theme-Einstellungen | Themes mit Feld für Header-Code | Viele Themes und Builder haben ein Feld wie "Code im Head einfügen", z. B. Divi unter Theme-Optionen, Integration. Bei Elementor Pro heißt die Funktion "Custom Code". |
Child-Theme mit wp_head | Entwickler und Agenturen | Sauber versioniert, aber nur im Child-Theme, nie im Eltern-Theme. |
Finger weg von der header.php des Eltern-Themes: Das nächste Theme-Update überschreibt deine Änderung, und das Tracking ist ohne Warnung weg.
Nach dem Einfügen prüft die Onboarding-Strecke in LeadSignal live, ob das Script auf deiner Seite ankommt. Seitenaufrufe werden ab diesem Moment automatisch erfasst.
Schritt 3: Cookie-Banner aktivieren - und nur einen behalten
Zwei Cookie-Banner auf einer Seite sind schlecht für die Nutzer und schlecht für deine Daten. Entscheide dich deshalb für einen.
Variante A: Du nutzt den LeadSignal-Banner. Passe Layout, Farbe und Sprache im Dashboard an, aktiviere ihn und deaktiviere dein bisheriges Consent-Plugin. Der Banner steuert dann direkt, welche Pixel laden, und setzt die Signale für den Consent Mode v2, sobald eine Google-Ads-Integration eingerichtet ist. Nutze die Standard-Variante mit gleichwertigem "Ablehnen"-Button.
Variante B: Du behältst dein bestehendes Consent-Plugin. Dann muss die Entscheidung deiner Besucher an LeadSignal weitergereicht werden. Dafür gibt es eine JavaScript-Schnittstelle (leadsignal.setConsent). Das ist eine Integrationsaufgabe für jemanden, der dein Consent-Plugin kennt. Für die meisten kleinen Seiten ist Variante A der einfachere Weg.
Aktiviere in den Projekteinstellungen den strengen Consent-Modus. Dann verlässt vor der Marketing-Einwilligung außer der Consent-Entscheidung selbst nichts den Browser. Das ist die vorsichtigste Einstellung und passt am besten zu einer Datenschutzerklärung, die "erst nach Einwilligung" verspricht. Mehr dazu im Guide zu DSGVO-konformem Tracking.
Schritt 4: Formular-Leads als Conversion messen
Für die meisten WordPress-Seiten ist das ausgefüllte Kontaktformular die wichtigste Conversion. Genau hier passieren die meisten Fehler.
Gut zu wissen vorab: LeadSignal erkennt Formularfelder wie E-Mail, Telefon, Vor- und Nachname automatisch und hängt diese Kontaktdaten an spätere Events an. Das verbessert das Matching bei Meta und Co. Ein eigenes "Formular abgeschickt"-Event erzeugt die Erkennung aber nicht. Die Conversion selbst definierst du mit einem der folgenden Wege.
Der zuverlässigste Weg: die Danke-Seite
Leite nach dem Absenden auf eine eigene Danke-Seite weiter, zum Beispiel /danke-kontakt. In LeadSignal legst du dann ein Seiten-Event an: "URL enthält /danke-kontakt" wird zu deinem Lead-Event, gemappt etwa auf das Meta Standard-Event Lead.
Warum das so gut funktioniert: Die Danke-Seite sieht nur, wer das Formular wirklich erfolgreich abgeschickt hat. Fehlgeschlagene Validierungen, Spam-Abbrüche und Doppelklicks zählen nicht mit.
So stellst du die Weiterleitung in den gängigen Formular-Plugins ein (die genauen Bezeichnungen können je nach Version und Sprache leicht abweichen):
- WPForms: Einstellungen, Bestätigungen, Bestätigungstyp "Zu URL wechseln (Weiterleitung)".
- Gravity Forms: Einstellungen, Bestätigungen, Typ "Weiterleitung".
- Elementor Pro Formulare: Aktionen nach dem Absenden, "Weiterleitung" hinzufügen und die URL eintragen.
- Contact Form 7: hat keine eingebaute Weiterleitung. Nutze dafür ein Zusatz-Plugin oder den Weg über die Schnittstelle weiter unten.
Achte darauf, dass die Danke-Seite nicht im Menü verlinkt und am besten auf "noindex" gestellt ist. Sonst landen Besucher über Google darauf und erzeugen falsche Conversions.
Ohne Weiterleitung: Event per Schnittstelle auslösen
Wenn dein Formular auf derselben Seite bleibt, kannst du die Conversion per JavaScript auslösen. Lege dafür in LeadSignal ein Custom-Event an, zum Beispiel mit dem Namen lead. Bei Contact Form 7 reicht dann ein kurzes Snippet, das du mit WPCode im Footer der Formularseite einfügst:
<script>
document.addEventListener("wpcf7mailsent", function () {
window.leadsignal.trigger("lead");
});
</script>
wpcf7mailsent feuert nur, wenn Contact Form 7 die Nachricht erfolgreich verschickt hat. Andere Formular-Plugins haben ähnliche Ereignisse, die Namen stehen in deren Dokumentation.
Der Klick auf den Absende-Button - nur als Notlösung
Mit dem visuellen Event-Setup kannst du auch einfach den "Absenden"-Button anklicken und als Conversion markieren, ganz ohne Code. Für Buttons wie "Termin buchen" oder "Jetzt anrufen" ist das ideal. Beim Formular hat es einen Haken: Der Klick zählt auch dann, wenn das Formular wegen eines fehlenden Pflichtfelds gar nicht abgeschickt wurde. Nimm für Formulare deshalb lieber die Danke-Seite.
Schritt 5: Werbeplattformen verbinden und Events zuordnen
Verbinde im Dashboard Meta, Google Ads, TikTok und LinkedIn und lege pro Event fest, an welche Plattform es unter welchem Namen geht. Ein typisches Setup für eine Dienstleister-Seite:
| LeadSignal-Event | Auslöser | Meta | Google Ads | TikTok |
|---|---|---|---|---|
| Lead | Seite /danke-kontakt | Lead | Conversion-Aktion "Lead" | SubmitForm |
| Termin gebucht | Seite /danke-termin | Schedule | Conversion-Aktion "Termin" | Contact |
| Anruf-Klick | Klick auf Telefonnummer | Contact | Conversion-Aktion "Anruf" | Contact |
Du kannst jedem Event einen Conversion-Wert und eine Währung mitgeben, zum Beispiel den durchschnittlichen Wert eines Leads. Das hilft den Plattformen, auf wertvollere Conversions zu optimieren.
Schritt 6: Testen, bevor Budget fließt
Teste mit einem echten Durchlauf: Seite im Inkognito-Fenster öffnen, im Banner zustimmen, Formular abschicken, Danke-Seite abwarten.
- In LeadSignal: Das Event-Log zeigt das Event mit allen Details und der Session-Timeline. So siehst du, ob der Lead angekommen ist und von welcher Kampagne der Besucher kam.
- Bei Meta, TikTok und LinkedIn: Nutze die Test-Events bzw. den Verbindungstest der Integration, um zu prüfen, ob die Plattform das Event empfängt.
- Bei Google Ads: Prüfe den Status der Conversion-Aktion und die Tag-Diagnose. Google braucht oft ein paar Stunden, manchmal länger, bis neue Conversions sichtbar werden.
Teste einmal auch mit "Ablehnen" im Banner. Dann darf kein Werbe-Pixel laden.
Die typischen WordPress-Fallen
Caching- und Optimierungs-Plugins. WP Rocket, LiteSpeed Cache, Autoptimize oder Cloudflare Rocket Loader können Scripts zusammenfassen, verschieben oder bis zur ersten Nutzerinteraktion verzögern. Für Tracking ist das ungünstig: Wer die Seite schnell wieder verlässt, wird nie gemessen. Nimm das LeadSignal-Script in den Ausnahmelisten für "JavaScript verzögern" und "JavaScript kombinieren" auf und leere danach den Cache.
Theme- und Builder-Wechsel. Das visuelle Event-Setup merkt sich ein Element anhand von Merkmalen wie Text, Link und Position auf der Seite. Wenn du den Button-Text änderst oder die Seite neu baust, kann ein Klick-Event ins Leere laufen. Prüfe deine Klick-Events nach jedem Redesign. Seiten-Events über die Danke-Seite sind davon nicht betroffen, solange die URL gleich bleibt.
Staging-Seiten. Wenn deine Staging-Kopie dasselbe Script enthält, landen Testklicks in deinen echten Kampagnendaten. Entferne das Script auf Staging oder lege dafür ein eigenes Projekt an.
Weiterleitungen, die Parameter verlieren. Manche Weiterleitungs- oder Sprach-Plugins schneiden URL-Parameter ab. Dann fehlen die gclid und die fbclid, und Google bzw. Meta können die Conversion schlechter dem Klick zuordnen. Klicke testweise auf eine eigene Anzeige oder hänge ?gclid=test an die URL und prüfe, ob der Parameter nach der Weiterleitung noch da ist.
Fazit
Gutes Conversion-Tracking in WordPress braucht keine Plugin-Sammlung. Räum zuerst auf, binde ein einziges Script über ein Code-Snippet-Plugin ein, entscheide dich für genau einen Cookie-Banner und miss Formular-Leads über eine eigene Danke-Seite. Mit diesen vier Entscheidungen sind die meisten WordPress-Seiten in unter einer Stunde sauber aufgesetzt.
Du kannst das Ganze mit dem kostenlosen Plan ausprobieren: ein Projekt, eine Werbeplattform, ohne Kreditkarte. Alle Pläne findest du auf der Preisseite.
