Zum Inhalt springen

Professionelles Website-Tracking mit Umami: Events, Funnel und Profi-Tricks

Wie man mit Umami über reines Besucherzählen hinauskommt: Events, Properties, Funnel, Goals, before-send-Hook und Server-Side-Tracking – datenschutzkonform und ohne Cookie-Banner.

Die meisten Websites „tracken” nur Besucherzahlen – und wissen am Ende trotzdem nicht, warum aus Besuchern keine Anfragen werden. Professionelles Tracking beantwortet andere Fragen: Wo brechen Interessenten ab? Welcher Kanal bringt echte Kontakte? Klickt überhaupt jemand auf die Telefonnummer? Mit Umami lassen sich diese Fragen beantworten – cookieless, DSGVO-konform und ohne Cookie-Banner. Wir nutzen es auf dieser Seite selbst und zeigen, wie man mehr herausholt als die nackte Besucherzahl.

Warum Umami – und warum wir es selbst nutzen

Umami ist ein schlankes, quelloffenes Analyse-Werkzeug, das ohne Cookies und ohne seitenübergreifendes Tracking auskommt und sich selbst hosten lässt. Wir setzen es aus mehreren Gründen ein: Die Daten liegen auf eigenen Servern in Deutschland, das Skript läuft über eine eigene Subdomain als Proxy (das macht es widerstandsfähiger gegen Ad-Blocker), und weil keine personenbezogenen Profile entstehen, brauchen wir keinen Cookie-Banner. Tracking und digitale Souveränität schließen sich damit nicht aus.

Ein sauberes Fundament: Tracker-Konfiguration

Bevor es um Events geht, lohnt sich der Blick auf das Tracker-Skript selbst. Hier entscheidet sich, wie verlässlich und vollständig die Daten überhaupt ankommen. Ein robustes Setup sieht etwa so aus:

<script
  defer
  src="https://stats.ihre-domain.de/script.js"
  data-website-id="IHRE-WEBSITE-ID"
  data-host-url="https://stats.ihre-domain.de"
  data-cache="true"
  data-exclude-search="true"
  data-do-not-track="true"
></script>

Die wichtigsten Stellschrauben:

  • data-host-url lenkt die gesammelten Daten gezielt auf Ihre eigene (Proxy-)Domain – die Grundlage für den Ad-Blocker-resistenten Aufbau über eine Subdomain.
  • data-cache="true" spart wiederholte Konfigurationsabfragen und beschleunigt das Tracking.
  • data-exclude-search="true" lässt URL-Parameter (?...) aus den Seitenpfaden heraus – das hält die Berichte sauber, wenn an URLs Tracking- oder Filterparameter hängen.
  • data-do-not-track="true" respektiert die „Do Not Track”-Einstellung des Browsers.
  • data-domains="ihre-domain.de" sorgt dafür, dass der Tracker nur auf der echten Domain feuert – praktisch, damit Staging- oder Entwicklungsumgebungen die Statistik nicht verfälschen.

Profi-Pflicht: Schließen Sie Ihren eigenen Traffic aus. Ein einziger Befehl in der Browser-Konsole markiert den Browser dauerhaft als ausgeschlossen:

localStorage.setItem('umami.disabled', 1);

Sonst zählen die täglichen Eigenbesuche der Inhaber und Pflegenden kräftig mit – gerade bei kleinen Seiten verzerrt das die Zahlen erheblich.

Wir richten cookieless Umami-Tracking ein — auf eigenen Servern, ohne Cookie-Banner.

Mehr erfahren

Events sind das Herzstück

Seitenaufrufe zeigen, dass jemand da war. Events zeigen, was er getan hat. Umami kennt dafür zwei Wege.

Deklarativ über Datenattribute – ideal für einfache Klicks, ganz ohne eigenes JavaScript:

<a href="tel:+4917600000000" data-umami-event="telefon-klick">
  Jetzt anrufen
</a>

<a href="/angebot.pdf"
   data-umami-event="download"
   data-umami-event-datei="angebot.pdf">
  Angebot herunterladen
</a>

Jedes data-umami-event-*-Attribut wird als zusätzliche Eigenschaft (Property) gespeichert – allerdings immer als Text.

Programmatisch über die JavaScript-API – für alles, was an einer Bedingung hängt:

umami.track('kontakt-formular', { schritt: 'abgeschickt', betreff: 'angebot' });

So halten wir es auf dieser Seite: Statt jedes Element von Hand zu verkabeln, lauscht ein kleines Skript auf ein data-track-Attribut und ruft im Hintergrund umami.track() auf. Telefon-, E-Mail- und Formular-Klicks sind damit zentral und einheitlich erfasst, ohne dass beim Pflegen der Inhalte jemand daran denken muss.

Ein Beispiel aus der Praxis

Nehmen wir einen Handwerksbetrieb, der wissen will, welcher Weg überhaupt zur Anfrage führt. Wir erfassen drei Dinge: den Klick auf die Telefonnummer (und von welcher Stelle aus), den Klick auf eine Leistung und das Absenden des Formulars.

<a href="tel:+4917600000000"
   data-umami-event="telefon-klick"
   data-umami-event-quelle="seitenkopf">Anrufen</a>

<a href="/dachsanierung"
   data-umami-event="leistung-klick"
   data-umami-event-leistung="dachsanierung">Dachsanierung</a>

Nach zwei Wochen zeichnet sich oft ein klares Muster ab: Wenn die meisten Anrufe von der Leistungsseite „Dachsanierung” kommen und das Formular kaum jemand nutzt, gehört die Telefonnummer genau dort nach oben – und über das Formular muss man sich vorerst keine Gedanken machen. Ohne Events wäre beides reine Vermutung.

Für Shops kommt Umsatz-Tracking dazu: Ein Event mit data-umami-event-revenue und data-umami-event-currency (oder die Werte im umami.track()-Aufruf) ordnet jedem Kauf einen Betrag zu. Im Revenue-Bericht steht dann nicht nur, dass gekauft wurde, sondern wie viel Umsatz aus welcher Quelle kommt.

Was Sie bei Event-Daten beachten müssen

Die Properties sind nützlich, haben aber Grenzen, die man kennen sollte:

DatentypGrenze
Zahlenmaximal 4 Nachkommastellen
Textemaximal 500 Zeichen
Arrayswerden zu Text umgewandelt, max. 500 Zeichen
Objektemaximal 50 Eigenschaften

Namenskonvention statt Wildwuchs: Legen Sie früh feste, sprechende Event-Namen fest (telefon-klick, kontakt-formular, download) und halten Sie sich daran. Nichts macht ein Analyse-Konto unbrauchbarer als zehn Varianten desselben Klicks. Ein eigener, getypter Satz erlaubter Event-Namen im Code verhindert Tippfehler von vornherein.

Funnel und Goals: Wo brechen die Leute ab?

Ein einzelnes Event sagt wenig – die Abfolge sagt alles. Für einen Funnel tracken Sie die Schritte eines Ablaufs unter einem gemeinsamen Event-Namen mit unterschiedlicher Schritt-Property:

umami.track('kontaktpfad', { schritt: 'formular-gesehen' });
umami.track('kontaktpfad', { schritt: 'formular-begonnen' });
umami.track('kontaktpfad', { schritt: 'abgeschickt' });

Im Umami-Dashboard bauen Sie daraus unter Berichte → Funnel eine Trichter-Auswertung: Sie sehen, wie viele Besucher vom Sehen zum Ausfüllen und vom Ausfüllen zum Absenden kommen – und an welcher Stufe die meisten verloren gehen. Dort lohnt sich die Optimierung, statt blind an der ganzen Seite zu schrauben.

Ein erfundenes, aber typisches Beispiel macht das greifbar. Angenommen, der Funnel zeigt für einen Monat:

  • 1.000 Besucher sehen das Formular,
  • 220 fangen an zu tippen,
  • 140 schicken es ab.

Der größte Absprung liegt damit nicht beim Absende-Button, sondern davor – zwischen Sehen und Beginnen. Schuld ist also der erste Eindruck des Formulars, meist zu viele Pflichtfelder oder ein unklarer Nutzen. Hätte man nur die Gesamtzahl der Anfragen gesehen, würde man am falschen Ende optimieren.

Ein zweites Beispiel aus dem Alltag lokaler Betriebe: ein Termin-Funnel von „Kalender geöffnet” über „Zeitfenster gewählt” bis „Termin bestätigt”. Bricht es beim Zeitfenster ein, sind oft schlicht zu wenige freie Slots sichtbar – ein organisatorisches Problem, kein Website-Problem.

Goals ergänzen das um klare Zielwerte: „X Telefonklicks im Monat” oder „Y abgeschickte Formulare”. Umami zeigt den Fortschritt gegen dieses Ziel, statt nur rohe Zahlen.

Profi-Tricks, die kaum jemand nutzt

Daten filtern und anonymisieren mit data-before-send. Diese Funktion läuft vor jedem Versand und kann den Datensatz prüfen, ändern oder ganz verwerfen (return false):

function beforeSend(type, payload) {
  // Bestimmte interne Pfade gar nicht erst senden
  if (payload.url.startsWith('/intern')) return false;
  return payload;
}
<script defer src="https://stats.ihre-domain.de/script.js"
  data-website-id="IHRE-WEBSITE-ID"
  data-before-send="beforeSend"></script>

Damit lassen sich versehentlich erfasste Parameter entfernen oder Bereiche klar ausklammern – die datensparsamste Variante, weil die Daten den Browser gar nicht erst verlassen.

Kampagnen messen mit UTM-Parametern. Hängen Sie an Links aus Newsletter, Anzeige oder QR-Code die üblichen utm_*-Parameter (?utm_source=newsletter&utm_medium=email&utm_campaign=fruehjahr). Umami wertet sie im UTM-Bericht automatisch aus – so wird sichtbar, welcher Kanal echte Kontakte bringt und nicht nur Klicks.

A/B-Auswertung mit data-tag. Mit einem data-tag am Tracker (z. B. startseite-variante-a vs. -b) lassen sich zwei Varianten getrennt auswerten und im Dashboard filtern.

Besucher segmentieren mit umami.identify(). In Login-Bereichen kann man der Sitzung Eigenschaften mitgeben, um später zu filtern – ohne Cookies:

umami.identify({ plan: 'premium', branche: 'handwerk' });

Server-Side-Tracking über die API. Ereignisse, die nicht im Browser passieren – eine bestätigte Bestellung, ein eingegangenes Formular auf dem Server – melden Sie direkt per POST an /api/send. Das ist auch der zuverlässigste Weg, Conversions zu zählen, die Ad-Blocker im Browser sonst verschlucken würden:

await fetch('https://stats.ihre-domain.de/api/send', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json', 'User-Agent': '...' },
  body: JSON.stringify({
    type: 'event',
    payload: {
      website: 'IHRE-WEBSITE-ID',
      name: 'bestellung-bestaetigt',
      url: '/danke',
      data: { betrag: 79.99 },
    },
  }),
});

Umami hat zuletzt spürbar zugelegt – über Funnel und UTM hinaus lohnen sich diese Berichte: Attribution (welcher Kanal eine Conversion tatsächlich angestoßen hat, nicht nur den letzten Klick), Journeys (typische Pfade durch die Seite), Retention (kommen Besucher wieder?) sowie Segmente und Kohorten, mit denen sich Besuchergruppen nach gemeinsamen Merkmalen und über die Zeit vergleichen lassen. Wer die Ladezeit im Blick behält, kombiniert das sinnvoll mit den Core Web Vitals.

Umami im Vergleich: GA4, Matomo, Plausible

Umami ist nicht das einzige Werkzeug – aber für die meisten Unternehmen ein sehr guter Kompromiss aus Aussagekraft und Datenschutz. Die Alternativen im ehrlichen Überblick:

KriteriumUmamiGoogle Analytics 4MatomoPlausible
Cookie-Banner nötigneinin der Regel janein (konfigurierbar)nein
Datenhoheitself-hostbarGoogle verarbeitetself-hostbar / EU-Cloudself-hostbar / EU-Cloud
Funktionsumfangfokussiert (Events, Funnel, Attribution, Segmente)sehr groß, aber komplexam größten (Heatmaps, Aufzeichnungen, A/B)schlank
Einarbeitunggeringhochmittel–hochgering
Ressourcenbedarf (self-hosted)sehr geringhöher (PHP/MySQL)gering
KostenOpen Source, selbst kostenlos hostbarkostenlosOpen Source / kostenpflichtige Cloudkostenpflichtige Cloud / selbst hostbar

Kurz gefasst: GA4 ist mächtig und kostenlos, aber komplex, in der Regel einwilligungspflichtig und gibt die Daten an Google – datenschutzrechtlich (Stichwort US-Datentransfer) für viele heikel. Matomo kann am meisten, bis hin zu Heatmaps und Sitzungsaufzeichnungen (die allerdings als kostenpflichtige Erweiterungen dazukommen), ist dafür aber schwerer und pflegeintensiver. Plausible ähnelt Umami in Philosophie und Schlankheit stark; die Wahl dazwischen ist oft Geschmackssache. Wer eine kostenlos selbst hostbare, datensparsame Lösung mit Funnels und Events will, fährt mit Umami gut.

Fazit

Gutes Tracking sammelt nicht möglichst viele Daten, sondern beantwortet die richtigen Fragen – mit Umami sogar ohne Cookie-Banner und ohne die Daten aus der Hand zu geben. Den Unterschied macht die Arbeit nach der Installation: Events klar benennen, Funnel auf die echten Ziele ausrichten und den eigenen Traffic ausschließen. Dann verrät die Statistik, wo aus Besuchern Kunden werden – und wo sie abspringen.

Wir richten Umami auf eigenen Servern ein, verkabeln die passenden Events und bauen Funnel und Berichte, die zu Ihren Zielen passen. Mehr dazu unter Webdesign, Suchmaschinenoptimierung und in unserem Datenschutz. Sagen Sie uns, was Sie über Ihre Besucher wirklich wissen wollen – den Kontakt finden Sie über unser Kontaktformular.

Passende Leistungen:

Kontakt

Tracking, das wirklich etwas verrät?

Wir richten Umami sauber ein – Events, Funnel und Reports, die zu Ihren Zielen passen, ohne Cookie-Banner und ohne Daten aus der Hand zu geben.

Patrick Hilker, Inhaber Patrick Hilker Ihr Ansprechpartner

Lieber direkt?

Antwort in der Regel innerhalb eines Werktags.

Kostenlos & unverbindlich – kein Verkaufsgespräch.

Ihre Angaben nutzen wir nur, um Ihre Anfrage zu bearbeiten – keine Weitergabe, keine Werbung. Felder mit * sind Pflicht. Mit dem Absenden stimmen Sie unserer Datenschutzerklärung zu.

Anrufen WhatsApp Anfragen