Documentation Fundamentals

Das search Event in Google Analytics 4 (GA4)

Das search Event in Google Analytics 4 (GA4) wird genutzt um zu tracken, wenn ein Nutzer die interne Suche deiner Website oder App verwendet.

Interne Suchanfragen sind oft ein „Fenster in den Kopf“ des Nutzers: Sie zeigen sehr direkt, was jemand gerade sucht – häufig sogar genauer als Seitenaufrufe. Deshalb ist search extrem hilfreich für Content- und Produktentscheidungen („Welche Themen fehlen?“, „Welche Produkte werden nicht gefunden?“).

Screenshot einer Shop-Suchergebnisseite mit Suchbegriff und sichtbaren Treffern
Interne Suche in einem Shop: Der Suchbegriff ist sichtbar und die Trefferliste lädt als Suchergebnisseite.

Implementierung

Das wichtigste am search Event ist der Parameter search_term. Das ist der Suchbegriff, den der Nutzer eingegeben hat.

Automatisches Tracking (Enhanced Measurement)

Viele verwechseln hier zwei Dinge:

  • GA4 kann interne Suche ĂĽber Enhanced Measurement automatisch tracken – dann heiĂźt das Event in der Praxis oft view_search_results (und GA4 liest search_term aus URL-Parametern wie q, s, search, query, keyword).
  • Wenn eure Suche nicht sauber ĂĽber URL-Parameter abbildbar ist (z. B. Suche per POST, reine AJAX-/SPA-Suche, Autocomplete ohne echte Suchergebnisseite), ist ein manuell gesendetes Event wie search meistens die zuverlässigere Variante.

Wichtig ist vor allem: Wenn du Enhanced Measurement aktiv hast und zusätzlich manuell search sendest, achte darauf, dass du keine doppelten Such-Events erzeugst.

dataLayer

javascript
window.dataLayer = window.dataLayer || [];
window.dataLayer.push({
    event: "search",
    search_term: "server side gtm"
});

Wo genau auslösen?

Das hängt davon ab, wie eure Suche funktioniert:

  • Suchergebnisseite: Auslösen beim Laden der Ergebnisse (z. B. wenn ?q=... in der URL steht).
  • Live-Suche / Autocomplete: Auslösen, wenn tatsächlich Ergebnisse angezeigt werden (nicht bei jedem Tastendruck).

Wichtig ist, dass du nicht „Rauschen“ misst. Ein Event pro Tastendruck macht die Daten unbrauchbar.

„Keine Ergebnisse“ tracken

Wenn du auswerten möchtest, welche Suchanfragen ins Leere laufen, kannst du das ergänzend als Parameter mitschicken, z. B.:

  • results_count: Anzahl Treffer
  • search_has_results: true/false

So kannst du im Content-Team oder im Shop direkt priorisieren, welche Suchanfragen dringend besser bedient werden mĂĽssen.

Screenshot einer Suchergebnisseite ohne Treffer (No results) mit sichtbarem Suchbegriff
Suchanfragen ohne Treffer sind oft besonders wertvoll: Sie zeigen sehr direkt, welche Produkte oder Inhalte Nutzer erwarten, aber nicht finden.

Häufige Probleme

  • PII in Suchbegriffen: Nutzer tippen manchmal E-Mail-Adressen, Telefonnummern oder Namen in Suchfelder. Ăśberlege, ob du search_term serverseitig bereinigst (z. B. Erkennung/Maskierung), bevor es nach GA4 geht.
  • Doppelte Events: Wenn eine Suchseite bei Filter-Ă„nderungen oder sogar jedem neu eingegebenen Buchstaben neu rendert, achte darauf, dass search nicht fĂĽr denselben Begriff unnötig oft ausgelöst wird.
  • Reporting ohne Custom Dimension: Wenn du search_term (oder eigene Parameter wie results_count) bequem in Reports nutzen willst, musst du diese Parameter in GA4 als (Event-)Custom Dimension anlegen. Sonst tauchen sie oft nur in Explorations/DebugView auf und sind schwer wiederzufinden.