So erfassen Sie UTM-Werte in Shopify-Formularen (2026)

Zuletzt aktualisiert
Von Experten geprüft
5 Min. Lesezeit
Jacques Blom
Jacques Blom
CTO bei Fudge.

Key Takeaways

  • UTM-Parameter in einer URL (utm_source, utm_medium, utm_campaign) können mit JavaScripts URLSearchParams ausgelesen und in versteckten Formularfeldern gespeichert werden.
  • So erfahren Sie, welche Annonce, E-Mail oder Kampagne jede Kontaktformular-Einsendung generiert hat.
  • Versteckte Felder werden mit dem Formular übermittelt und erscheinen in den Einsendedaten neben der Nachricht des Kunden.
  • Beschreiben Sie diese Anforderung einfach Fudge — es kann die komplette Implementierung inklusive versteckter Felder und JavaScript erstellen.

Wenn jemand Ihr Kontaktformular ausfüllt, nachdem er auf eine Facebook-Ad geklickt hat, möchten Sie das wissen. Wenn eine Großhandelsanfrage nach einer bestimmten E-Mail-Kampagne eingeht, möchten Sie diese korrekt zuordnen. Das Erfassen von UTM-Parametern in Formularen schließt die Attributionslücke zwischen „Diese Person hat uns kontaktiert“ und „Diese Kampagne hat diesen Kontakt ausgelöst“.

So nutzen Sie UTM auf Shopify

UTM-Parameter werden an die URLs in Ihren Marketing-Links angehängt:

https://yourstore.com/pages/contact?utm_source=facebook&utm_medium=paid&utm_campaign=summer_sale

Wenn jemand auf dieser URL landet, befinden sich die UTM-Werte in der Adressleiste des Browsers. JavaScript kann diese auslesen und speichern, sodass sie bei der Formularübermittlung mitgesendet werden.

So erhalten Sie UTM-Parameter aus einer URL mit JavaScript

Der moderne, saubere Weg, um URL-Parameter auszulesen, ist URLSearchParams:

var params = new URLSearchParams(window.location.search);
var utmSource = params.get('utm_source');    // "facebook"
var utmMedium = params.get('utm_medium');    // "paid"
var utmCampaign = params.get('utm_campaign'); // "summer_sale"
var utmContent = params.get('utm_content');   // optional
var utmTerm = params.get('utm_term');         // optional (für Paid Search)

Wenn kein UTM-Parameter in der URL vorhanden ist, gibt params.get() den Wert null zurück. Behandeln Sie dies elegant durch Fallbacks auf leere Strings.


Versteckte UTM-Felder zu einem Shopify-Formular hinzufügen

Schritt 1 - Versteckte Felder zum Formular-HTML hinzufügen.

Fügen Sie im Kontaktformular Ihres Themes (normalerweise in sections/contact-form.liquid oder dem Kontaktseiten-Template) versteckte Input-Felder innerhalb des Formulars hinzu:

<input type="hidden" id="utm-source" name="contact[utm_source]" value="" />
<input type="hidden" id="utm-medium" name="contact[utm_medium]" value="" />
<input type="hidden" id="utm-campaign" name="contact[utm_campaign]" value="" />
<input type="hidden" id="utm-content" name="contact[utm_content]" value="" />

Für benutzerdefinierte Formulare oder Apps: Verwenden Sie das Format name="properties[UTM Source]" für Line-Item-Eigenschaften oder die Namenskonvention, die Ihr Formularsystem erwartet.

Schritt 2 - UTM-Werte auslesen und Felder mit JavaScript befüllen.

Fügen Sie dieses Skript nach Ihrem Formular (oder in theme.liquid vor </body>) ein:

<script>
(function() {
  var params = new URLSearchParams(window.location.search);
  var utmFields = {
    'utm_source': 'utm-source',
    'utm_medium': 'utm-medium',
    'utm_campaign': 'utm-campaign',
    'utm_content': 'utm-content'
  };

  Object.keys(utmFields).forEach(function(param) {
    var value = params.get(param);
    var field = document.getElementById(utmFields[param]);
    if (value && field) {
      field.value = value;
    }
  });
})();
</script>

Schritt 3 - Testen. Öffnen Sie Ihre Kontaktseite mit UTM-Parametern in der URL: https://yourstore.com/pages/contact?utm_source=test&utm_campaign=test_campaign

Senden Sie das Formular ab und prüfen Sie die E-Mail-Benachrichtigung — die UTM-Werte sollten in der Einsendung erscheinen.


UTMs über mehrere Seiten hinweg beibehalten

Ein häufiges Problem: Ein Besucher klickt auf Ihre Anzeige (UTMs sind in der URL der Landingpage), durchstöbert ein paar Produktseiten und besucht dann direkt die Kontaktseite — die keine UTMs in der URL hat. Bis er das Formular erreicht, sind die UTM-Werte verloren.

Lösung: UTMs beim ersten Besuch im sessionStorage (oder localStorage) speichern.

(function() {
  var params = new URLSearchParams(window.location.search);
  var utmParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_content', 'utm_term'];

  // UTMs beim ersten Seitenladen speichern, falls vorhanden
  utmParams.forEach(function(param) {
    var value = params.get(param);
    if (value) {
      sessionStorage.setItem(param, value);
    }
  });

  // Formularfelder aus dem Speicher befüllen (Fallback von URL)
  function populateField(paramName, fieldId) {
    var value = params.get(paramName) || sessionStorage.getItem(paramName) || '';
    var field = document.getElementById(fieldId);
    if (field) field.value = value;
  }

  populateField('utm_source', 'utm-source');
  populateField('utm_medium', 'utm-medium');
  populateField('utm_campaign', 'utm-campaign');
  populateField('utm_content', 'utm-content');
})();

sessionStorage behält Werte innerhalb einer Browser-Sitzung bei (bis der Tab geschlossen wird). localStorage bleibt über Sitzungen hinweg bestehen — leistungsstärker, erfasst aber auch UTMs von Wochen alten Besuchen, was vielleicht nicht gewollt ist.

Erstellen Sie ein Shopify-Formular mit UTM-Tracking, indem Sie es Fudge beschreiben.
Try Fudge for Free

UTM-Erfassung mit Formular-Apps

Die meisten spezialisierten Formular-Tools (Typeform, JotForm, Hulk Form Builder) verfügen über integriertes UTM-Tracking:

Typeform: Gehen Sie in den Formulareinstellungen auf Hidden Fields → UTM-Parameter hinzufügen. Typeform liest diese automatisch aus der URL aus und hängt sie an die Einsendungen an.

Jotform: Felder aus URL-Parametern vorbefüllen — fügen Sie ein Feld hinzu, gehen Sie zu Properties → Prefill → From URL Parameter.

Diese integrierten Optionen sind einfacher als benutzerdefiniertes JavaScript und lohnen sich, wenn Sie diese Tools bereits verwenden.


Was man mit UTM-Daten in Formulareinsendungen macht

E-Mail-Routing. Senden Sie Leads aus bezahlten Medien an Ihr Sales-Team, organische Leads an Ihr Content-Team.

CRM-Attribution. Wenn die Formulareinsendung in Ihr CRM gelangt (via Zapier, HubSpot-Integration etc.), reisen die UTM-Werte mit. Sie können Deals nach Quelle filtern und sehen, welche Kampagnen die wertvollsten Kunden generieren.

ROI-Reporting. Wenn Sie wissen, dass ein Großhandelskunde von einer bestimmten LinkedIn-Kampagne kam, können Sie dessen Lifetime Value dieser Kampagne zuordnen — weit genauer als Last-Click-Analytics.

Jacques's signature
Erstellen Sie benutzerdefinierte Shopify-Formulare mit voller Attributions-Tracking, indem Sie sie beschreiben.

You might also be interested in

So fügen Sie ein benutzerdefiniertes Kontaktformular in Shopify hinzu (2026)
Fügen Sie ein benutzerdefiniertes Kontaktformular in Shopify hinzu – vom einfachen integrierten Formular über benutzerdefinierte Felder mit einer App bis hin zur Einbindung von Typeform oder nativen Lösungen.
So fügen Sie ein Datei-Upload-Feld in Shopify hinzu (2026)
Fügen Sie Datei-Uploads zu Shopify-Formularen hinzu – mit Line Item Properties für Produktpersonalisierung, Formular-Apps für Kontaktformulare oder individuellen Lösungen.
So fügst du Bedingungslogik zu Shopify-Formularen hinzu (2026)
Füge Show/Hide-Bedingungslogik zu Shopify-Formularen hinzu – mit Formular-Apps wie Typeform oder Hulk, eigenem JavaScript oder durch Erstellen eines nativen bedingten Formulars.