ActiveCampaign erfasst UTM-Parameter automatisch als Touchpoints, sobald das Site-Tracking-Snippet auf deiner Website installiert ist. Für Automationen und Segmentierungen stehen diese Daten aber erst dann zur Verfügung, wenn du sie aktiv in Kontaktfelder schreibst. Dieser Beitrag zeigt, wie beides zusammenspielt und wie du daraus kanalspezifische Follow-up-Automationen aufbaust, die sich selbst steuern.
Das Wichtigste in Kürze
- Site Tracking erfasst UTM-Besuche als Touchpoints in der Attribution-Ansicht, stellt sie aber nicht direkt als Bedingungsfelder in Automationen bereit.
- Für kanalspezifische Segmentierung und Follow-ups musst du UTM-Werte aktiv in benutzerdefinierte Kontaktfelder schreiben — über versteckte Formularfelder oder ein JavaScript-Snippet.
- Conversions in ActiveCampaign werden entweder als URL-Ereignis (Danke-Seite besucht) oder als Automation-Ziel gemessen — beides dient unterschiedlichen Zwecken.
- Im Automation-Einstiegspunkt und in If/Else-Blöcken kannst du Kontakte nach UTM-Feldern aufteilen und kanalspezifisch behandeln.
- Ohne konsistentes UTM-Namensschema auf Kampagnenebene liefern Berichte keine verwertbaren Daten.
Die fünf UTM-Parameter und wofür du sie brauchst
UTM-Parameter sind URL-Anhänge, die deinem Tracking-System mitteilen, woher ein Besucher kommt und in welchem Kontext er auf einen Link geklickt hat. ActiveCampaign liest alle fünf Standard-Parameter aus und ordnet sie als Touchpoint dem Kontaktdatensatz zu.
Parameter | Bedeutung | Typischer Wert |
|---|---|---|
utm_source | Konkrete Quelle des Traffics | google, linkedin, newsletter |
utm_medium | Typ des Kanals | cpc, email, organic, referral |
utm_campaign | Name der Kampagne | webinar-juni-2026, produkt-launch |
utm_content | Unterscheidet mehrere Links innerhalb einer Kampagne | banner-header, cta-footer, video-ad |
utm_term | Keyword bei bezahlter Suche | activecampaign-agentur, crm-software |
Für die Praxis sind utm_source, utm_medium und utm_campaign die drei entscheidenden Parameter. utm_content ist sinnvoll, wenn du innerhalb einer Kampagne verschiedene Creatives oder Platzierungen gegeneinander testest. utm_term brauchst du nur bei Google Ads-Kampagnen, bei denen du auf Keyword-Ebene auswerten willst. Fang mit den ersten drei an und erweitere das Schema, wenn du siehst, dass du mehr Granularität brauchst.
Wie ActiveCampaign UTM-Daten intern verarbeitet
Jedes Mal, wenn ein bekannter Kontakt eine Seite mit UTM-Parametern aufruft und das Site-Tracking-Snippet aktiv ist, legt ActiveCampaign einen Eintrag unter dem Reiter „Attribution“ im Kontaktdatensatz an. Dieser Eintrag zeigt utm_source, utm_medium, utm_campaign, utm_content und utm_term des Besuchs — mit Zeitstempel und der besuchten URL. Mehrere Besuche erzeugen mehrere Touchpoints; sie stapeln sich chronologisch im Datensatz.
Die Attribution-Ansicht ist nützlich für manuelle Recherchen: Du öffnest einen Kontakt, klickst auf das Attribution-Tab und siehst auf einen Blick, über welche Kampagnen und Quellen er die vergangenen Wochen Kontakt aufgenommen hat. Damit lässt sich eine Customer Journey rekonstruieren — vom ersten Anzeigenklick bis zur Conversion auf der Danke-Seite.
Was die Touchpoint-Daten nicht können: Du kannst in Automationen und Segmentierungen nicht direkt auf Attribution-Felder filtern. Ein Automations-Trigger „Kontakt hat utm_source = google“ existiert in ActiveCampaign nicht von Haus aus. Die Attribution-Daten sind Lesedaten — sie dokumentieren, was passiert ist, aber sie lösen keine Aktionen aus und stehen nicht als If/Else-Bedingung zur Verfügung.
Touchpoint und Kontaktfeld: zwei verschiedene Dinge
Ein Touchpoint ist ein Besuchsereignis zu einem bestimmten Zeitpunkt — es kann beliebig viele Touchpoints pro Kontakt geben. Ein Kontaktfeld ist ein einzelner, dauerhafter Wert, der dem Kontakt zugeordnet ist und sich überschreiben lässt. Wer einen Kontakt hat, der zuerst über Google Ads kam und später über eine LinkedIn-Kampagne, sieht beide Touchpoints in der Attribution — im Kontaktfeld steht je nach Setup nur der erste oder der letzte Wert. Das ist eine bewusste Designentscheidung, keine technische Einschränkung: Du steuerst, ob du die Erstquelle oder die zuletzt erfasste Quelle speicherst.
Wie du UTM-Werte aktiv in Kontaktfelder schreibst
Für Automationen, Segmentierungen und Berichte auf Feldebene musst du UTM-Werte aktiv in benutzerdefinierte Kontaktfelder übertragen. Das klingt aufwendig, ist aber einmalig eingerichtet. Es gibt zwei gängige Wege — welcher besser passt, hängt von deiner Website-Infrastruktur ab.
Zuerst: Benutzerdefinierte Felder anlegen. Gehe in deinem Account zu Einstellungen → Felder und lege für jeden UTM-Parameter ein eigenes Textfeld an. Sprechende Namen helfen bei der späteren Nutzung: „Quelle (UTM Source)“, „Kanal (UTM Medium)“, „Kampagne (UTM Campaign)“. Für utm_content und utm_term sind separate Felder nur sinnvoll, wenn du sie tatsächlich auswertest — fang mit den drei wichtigsten an und erweitere das Schema bei Bedarf.
Variante A: Versteckte Felder im ActiveCampaign-Inline-Formular
ActiveCampaign unterstützt versteckte Felder in Inline-Formularen. Du fügst die soeben angelegten Kontaktfelder dem Formular als versteckte Felder hinzu. Ein JavaScript-Snippet auf der Seite liest beim Laden die UTM-Parameter aus der aktuellen URL aus und befüllt die versteckten Felder automatisch, bevor der Nutzer das Formular absendet. Beim Absenden trägt ActiveCampaign die Werte direkt in den Kontaktdatensatz ein.
Wichtig: Floating-Box-, Floating-Bar- und Modal-Formulare von ActiveCampaign unterstützen keine versteckten Felder. Wer diese Formulartypen einsetzt, muss auf Variante B ausweichen. Außerdem funktioniert das Snippet nur zuverlässig, wenn Formular und UTM-Link auf derselben Seite liegen. Kommt der Nutzer über eine Landing Page mit UTM-Link und füllt das Formular erst auf einer anderen Unterseite aus, muss der UTM-Wert zwischen den Seiten zwischengespeichert werden.
Variante B: localStorage-basiertes JavaScript-Snippet
Ein robusterer Ansatz speichert UTM-Werte beim ersten Seitenaufruf im localStorage des Browsers. Das Snippet prüft beim Laden jeder Seite, ob UTM-Parameter in der URL stehen. Wenn ja, schreibt es sie in den localStorage. Beim Absenden eines beliebigen Formulars liest ein zweiter Teil des Snippets die Werte aus dem localStorage und überträgt sie in die versteckten Formularfelder — unabhängig davon, auf welcher Unterseite das Formular liegt.
Dieser Ansatz ist formulartyp-unabhängig und überbrückt Seitenübergänge. Ein einziger Eintrag im globalen Header der Website — zum Beispiel über den Theme-Header in WordPress oder den Custom-Code-Bereich in Webflow — aktiviert das Setup für die gesamte Domain. Wer den Erstkontakt priorisieren will, also die Quelle des allerersten Besuchs speichern möchte, konfiguriert das Snippet so, dass es einen bereits vorhandenen localStorage-Wert nicht überschreibt. Wer immer die aktuellste Quelle speichern will, lässt das Snippet bei jedem Besuch neu schreiben.
Vergleich beider Varianten
Kriterium | Versteckte Felder (A) | localStorage (B) |
|---|---|---|
Formulartypen | Nur Inline-Formulare | Alle Formulartypen |
Seitenübergreifend | Nur mit zusätzlicher Lösung | Ja, von Haus aus |
Technischer Aufwand | Gering | Mittel |
Erstquelle schützbar | Mit Bedingung möglich | Einfach konfigurierbar |
Abhängigkeit von AC-Update | Hoch (Formularstruktur) | Niedrig (browsernativ) |
Wie ActiveCampaign Conversions erfasst und wie du sie einrichtest
ActiveCampaign kennt zwei Arten von Conversions: URL-basierte Conversions und Automation-Ziele. URL-basierte Conversions messen, ob ein Kontakt eine bestimmte Seite besucht hat — am häufigsten eine Danke-Seite nach einem Kauf, einer Buchung oder einer Webinar-Registrierung. Automation-Ziele sind interne Messpunkte innerhalb einer einzelnen Automation, die dir zeigen, wie viele Kontakte einen definierten Erfolg innerhalb dieser Sequenz erreicht haben.
URL-basierte Conversion anlegen
- Gehe zu Einstellungen → Conversions (im linken Menü ganz unten).
- Klicke auf „Neue Conversion hinzufügen“.
- Wähle als Typ „URL wurde besucht“.
- Trage die vollständige URL deiner Danke-Seite ein, zum Beispiel „https://deinedomain.de/danke“. Wildcard-Muster funktionieren, wenn du mehrere Danke-Seiten zusammenfassen willst.
- Vergib einen sprechenden Namen, der Kampagne und Ziel verbindet: nicht „Conversion 1“, sondern „Webinar-Anmeldung Danke-Seite“.
- Speichere und aktiviere die Conversion.
ActiveCampaign wertet ab sofort jede Seite mit dem Site-Tracking-Snippet aus. Sobald ein bekannter Kontakt die eingetragene URL besucht, wird die Conversion seinem Datensatz zugeordnet. Im Bereich Berichte → Conversions siehst du, wie oft die Conversion ausgelöst wurde und welche Automationen mit diesem Ergebnis in Verbindung stehen.
Automation-Ziel setzen
Ein Automation-Ziel ist eine Bedingung, die mitten in einer Automation als Erfolg gilt: Hat ein Kontakt ein bestimmtes Formular ausgefüllt, einen Kauf abgeschlossen oder eine Produktseite besucht — während er sich gerade in der Automation befindet?
- Öffne die gewünschte Automation im Editor.
- Klicke rechts im Canvas auf den Pfeil-Button für die Automation-Einstellungen.
- Wähle unter „Fortschritt dieser Automation verfolgen“ → „Tracking hinzufügen“.
- Entscheide: „Conversion hinzufügen“ (für eine bereits angelegte URL-Conversion) oder „Business-Ziel hinzufügen“ (für ein übergeordnetes Kampagnenziel, das mehrere Automationen überspannt).
- Bestätige die Auswahl und speichere die Automation.
Das Ergebnis: In der Automation-Übersicht erscheint eine Conversion-Rate, die zeigt, wie viele Kontakte das Ziel tatsächlich erreicht haben. Das ist der direkteste Weg, eine Nurture-Sequenz auf ihren echten Beitrag zu bewerten — und zu entscheiden, ob sie überarbeitet werden muss.
Conversion-Berichte auswerten
ActiveCampaign zeigt Conversion-Daten in zwei verschiedenen Bereichen. Im Bereich Berichte → Conversions siehst du die systemweite Übersicht aller definierten Conversions mit Anzahl und zeitlichem Verlauf. In der Automation-Übersicht siehst du, wie viele Kontakte das Automation-Ziel innerhalb einer bestimmten Automation erreicht haben — als absoluter Wert und als Prozentzahl der Eingetretenen.
Für kanalspezifische Analysen reichen diese Standardberichte oft nicht aus. Du weißt, dass eine Conversion 47 Mal ausgelöst wurde — aber du siehst nicht direkt, aus welchem Kanal die konvertierenden Kontakte kamen. Für diese Auswertung baust du in ActiveCampaign eine benutzerdefinierte Segmentliste: Alle Kontakte, die Conversion XY erreicht haben und utm_source = google im Kontaktfeld haben. Diesen Filter kannst du im Kontaktbereich zusammenstellen, als Segment speichern und regelmäßig aktualisieren.
Wie du UTM-Felder in Automationen zur Segmentierung einsetzt
Sobald UTM-Werte in Kontaktfeldern stehen, kannst du sie an zwei Stellen in der Automation einsetzen: im Einstiegspunkt als Segmentierungsfilter und innerhalb der Sequenz als If/Else-Bedingung. Beide Stellen verfolgen dasselbe Ziel — unterschiedliche Kontakte kanalspezifisch behandeln — greifen aber zu unterschiedlichen Zeitpunkten.
Segmentierungsfilter im Einstiegspunkt
Wenn du eine Automation mit dem Trigger „Formular ausgefüllt“ startest, kannst du direkt am Einstiegspunkt eine Bedingung hinzufügen: „Kontaktfeld UTM Source = google“. Damit tritt in die Automation nur ein, wer tatsächlich über Google kam. Wer über LinkedIn oder ein anderes Medium kam, läuft in eine andere Automation — oder bleibt unerfasst, wenn du das bewusst so entscheidest.
Für die meisten Anwendungsfälle ist ein einziger Einstiegspunkt ohne Segmentfilter praktischer, kombiniert mit einem frühen If/Else-Block in der Automation. Alle Kontakte laufen in eine Automation, werden aber sofort nach UTM-Medium aufgeteilt. Das reduziert die Anzahl der Automationen und macht Änderungen leichter verwaltbar — du pflegst die Unterschiede an einem Ort statt in fünf separaten Flows.
If/Else-Block nach utm_medium
Ein If/Else-Block mit der Bedingung „Kontaktfeld UTM Medium = cpc“ trennt bezahlte Klicks von organischen Besuchern und E-Mail-Empfängern. Was du damit machst, hängt von deinem Produkt ab — aber ein konkretes Beispiel zeigt den Nutzen: Ein Kontakt, der über eine Google-Ads-Anzeige auf deine Landing Page gekommen ist, hat auf ein bestimmtes Keyword geklickt. Er ist aktiv auf der Suche nach einer Lösung und hat oft eine kürzere Entscheidungszeit. Ein Kontakt, der über einen Newsletter kam, kennt dich bereits und braucht andere Argumente. Beide bekommen eine andere E-Mail-Sequenz — und UTM-Felder machen diese Unterscheidung möglich, ohne dass du den Kontakt danach fragen musst.
Konkrete Follow-up-Sequenz nach Quelle aufbauen
Ein typisches Setup für drei Hauptkanäle sieht so aus: Die Automation startet nach dem Formular-Submit. Der erste Schritt ist ein If/Else-Block, der nach utm_source unterscheidet.
- utm_source = google: Drei E-Mails in fünf Tagen, fokussiert auf konkrete Produktfeatures und einen klaren nächsten Schritt. Der Kontakt kennt dein Produkt bereits durch die Anzeige und braucht keinen langen Kontext.
- utm_source = linkedin: Fünf E-Mails in zehn Tagen, zuerst eine Einordnung des Problems, dann die Lösung, dann konkrete Argumente. LinkedIn-Leads kommen häufig aus einem B2B-Kontext und bringen andere Erwartungshaltungen mit.
- Else (alle anderen Quellen): Eine generische Nurture-Sequenz, die das Produkt erklärt und auf einen konkreten nächsten Schritt hinführt.
Dieses Setup ist einmal aufgebaut und läuft danach von selbst. Wenn sich zeigt, dass eine Sequenz besser konvertiert als eine andere, passt du nur diese an — die Grundstruktur bleibt stabil.
Welche Fehler beim UTM-Tracking in ActiveCampaign regelmäßig passieren
UTM-Parameter auf interne Links setzen
Wenn eine Landing Page interne Links enthält, die selbst UTM-Parameter tragen, überschreiben diese Links den ursprünglichen Touchpoint. Ein Nutzer kommt über utm_source=google und klickt dann auf einen internen Link mit utm_source=newsletter — ActiveCampaign registriert den zweiten Touchpoint und zeigt in der Attribution eine irreführende Quelle. UTM-Parameter gehören ausschließlich auf externe Links, die du außerhalb deiner Website verteilst: in Anzeigen, E-Mails, Social-Media-Posts und QR-Codes. Niemals auf interne Navigations- oder CTA-Elemente.
Inkonsistentes Namensschema bei utm_campaign
utm_campaign-Werte wie „Black-Friday“, „black_friday“, „BlackFriday“ und „blackfriday“ sind für ActiveCampaign vier verschiedene Kampagnen. Wer kein zentrales Namensschema festgelegt hat, kann in Berichten und Segmentierungen nicht zusammenfassen, was zusammengehört. Das Kontaktfeld spiegelt den exakten String wider — inklusive Groß-/Kleinschreibung und Sonderzeichen. Eine Regel, die funktioniert: Kleinschreibung durchgehend, Bindestriche statt Leerzeichen und Unterstriche, keine Sonderzeichen, kein Datum im Kampagnennamen (nutze stattdessen utm_content für zeitliche Varianten).
Formular nicht auf derselben Seite wie der UTM-Link
Wenn der UTM-Link auf eine Landing Page führt und das Formular erst auf einer anderen Unterseite ausgefüllt wird, landet der UTM-Wert nur dann im Kontaktfeld, wenn du ihn zwischen den Seiten weitergibst. Das klassische Szenario: Landing Page mit Angebot → Klick auf CTA-Button → separate Formular-Seite. Ohne localStorage-Speicherung oder explizite Übergabe der UTM-Parameter als Query-String von Seite zu Seite ist das Kontaktfeld für diese Nutzer leer — selbst wenn die Quelle klar ist.
Kein Fallback für Kontakte ohne UTM-Daten
Nicht jeder Kontakt kommt über einen UTM-Link. Direktbesucher, Empfehlungen, Dark Social und QR-Codes ohne Tracking hinterlassen keine UTM-Spur. Wenn eine Automation ein leeres UTM-Feld als Ausschlussbedingung verwendet, scheiden diese Kontakte vorzeitig aus der Sequenz aus. Jeder If/Else-Block, der nach UTM-Feldern fragt, braucht einen Else-Zweig, der Kontakte ohne Daten sinnvoll weiterführt — auch wenn es nur eine generische Variante der Sequenz ist.
Häufige Fragen
Können UTM-Parameter in ActiveCampaign-E-Mails automatisch ergänzt werden?
Ja. In den Kampagnen-Einstellungen unter dem Reiter „Erweitert“ kannst du festlegen, dass alle Links in einer E-Mail automatisch mit UTM-Parametern versehen werden. ActiveCampaign ergänzt dann utm_source, utm_medium und utm_campaign an jeden Link — ohne dass du jeden Link einzeln taggen musst. Dieselbe Option steht in Automation-E-Mails zur Verfügung. Das verhindert, dass E-Mail-Traffic in Google Analytics unter „Direct / None“ erscheint und damit Attribution-Daten verloren gehen.
Wie lange speichert ActiveCampaign Touchpoint-Daten?
Touchpoints bleiben dauerhaft im Kontaktdatensatz gespeichert, solange der Kontakt im System ist. Es gibt kein automatisches Ablaufdatum. Du kannst in der Attribution eines Kontakts Besuche nachverfolgen, die vor Monaten stattgefunden haben. Kontaktfelder hingegen können überschrieben werden, wenn dein Formular-Snippet den Wert bei jedem Besuch neu setzt. Wer nur den Erstkontakt bewahren will, konfiguriert das Snippet so, dass es nur schreibt, wenn das Feld noch leer ist.
Warum erscheint ein Touchpoint nicht im Kontaktdatensatz?
Die drei häufigsten Ursachen: Das Site-Tracking-Snippet fehlt auf der besuchten Seite — überprüfe, ob das Snippet wirklich auf jeder Unterseite geladen wird, nicht nur auf der Startseite. Der Kontakt ist beim Besuch noch nicht im Browser als AC-Kontakt identifiziert — der Tracking-Cookie wird erst nach einem Formular-Submit gesetzt. Oder ein Browser-Adblocker blockiert das Tracking-Skript. Anonyme Erstbesucher werden grundsätzlich nicht getrackt; der Kontakt muss dem System bekannt sein, bevor Attribution-Daten erfasst werden.
Kann ich nach utm_campaign segmentieren, wenn viele Kontakte dieses Feld leer haben?
Ja, aber du musst „leer“ als eigenständige Bedingung behandeln. In ActiveCampaign kannst du mit der Bedingung „Kontaktfeld ist leer“ filtern und diese Gruppe separat behandeln. Eine Segmentliste mit „utm_campaign ist nicht leer“ gibt dir alle Kontakte mit Kampagnen-Attribution. Wer Kontakte ohne Daten konsequent ausschließt oder in einen eigenen Else-Zweig leitet, hält die Datenqualität in den übrigen Segmenten hoch und vermeidet, dass unzugeordnete Kontakte die Auswertung verwässern.
Was ist der Unterschied zwischen einer Conversion und einem Automation-Ziel in ActiveCampaign?
Eine Conversion ist ein systemweites Ereignis — meistens ein URL-Besuch — das automationsübergreifend gemessen wird. Ein Automation-Ziel ist intern und misst, ob ein Kontakt innerhalb einer bestimmten Automation einen definierten Erfolg erreicht hat. Conversions tauchen in Berichte → Conversions auf und lassen sich automationsübergreifend auswerten. Automation-Ziele siehst du in der Automation-Übersicht. Für die meisten Setups reicht eine URL-basierte Conversion; Automation-Ziele sind sinnvoll, wenn du den Fortschritt innerhalb einer längeren Nurture-Sequenz separat messen und mit anderen Automationen vergleichen willst.
Lohnt sich der Aufwand für benutzerdefinierte UTM-Felder, wenn ich Google Analytics nutze?
Ja, denn beide Tools messen auf unterschiedlichen Ebenen. Google Analytics zeigt, wie viele Sessions und Conversions ein Kanal aggregiert erzeugt hat — eine Vogelperspektive auf Kanalebene. ActiveCampaign-Kontaktfelder zeigen, aus welchem Kanal ein bestimmter Kontakt stammt — und das kannst du für individuelle Automationen nutzen. Das eine ersetzt das andere nicht. Wer in ActiveCampaign kanalspezifische Follow-ups aufbauen will, kommt an Kontaktfeldern nicht vorbei, weil Automationen auf Kontaktdaten reagieren, nicht auf aggregierte Statistiken.
UTM-Tracking in ActiveCampaign ist kein einmaliger Setup-Aufwand, der dann von allein läuft. Es braucht ein konsistentes Namensschema, das alle im Team kennen, ein technisches Fundament aus Site-Tracking-Snippet und Kontaktfeldern und eine Automationsstruktur, die auf UTM-Daten reagiert. Wer diese drei Teile einmal sauber aufgebaut hat, gewinnt echte Transparenz darüber, welche Kampagnen wirklich Kontakte erzeugen — und kann die Automationen dauerhaft darauf ausrichten. Wer dabei konkrete Unterstützung beim ActiveCampaign-Setup sucht, findet bei unserer ActiveCampaign-Agentur den passenden Einstiegspunkt.


