Sitzungen und Nutzer-Engagement analysieren

Konzeptionelle Übersichten zu Nutzer- und Sitzungsbereichen, einschließlich der Definition und strikten Begrenzung von Sitzungen durch Inaktivität in Google Analytics, finden Sie unter Dimensionen und Messwerte: Analytics-Sitzungen und im Leitfaden zu Gültigkeitsbereichen von Dimensionen für Besucherquellen.

In diesem Leitfaden werden entwicklerspezifische Herausforderungen und Best Practices für die Verwaltung von Sitzungskonfigurationen und passivem Tracking behandelt.

Dimensionen auf Seitenebene mit Messwerten auf Sitzungsebene kombinieren

Eine der häufigsten Nuancen bei Berichten tritt auf, wenn Sie Dimensionen auf Seitenebene (z. B. „Seitenpfad und Bildschirmklasse“) mit dem Messwert „Sitzungen“ auf Sitzungsebene kombinieren.

Definitionen von Sitzungen und Aufrufen

  • Mit Sitzungen wird die Anzahl der einzelnen Zeiträume gezählt, in denen ein bestimmter Seitenpfad mindestens einmal geladen wurde.

  • Aufrufe (Seitenaufrufe) gibt an, wie oft der Seitenpfad insgesamt geladen wurde.

Beispiel

Betrachten wir eine einzelne Sitzung mit dem folgenden Navigationspfad: /home → /products → /home → Ausstieg.

Wenn dies die einzige Sitzung ist, wird in einem Bericht, der mit Seitenpfad und Bildschirmklasse und den Messwerten Sitzungen oder Aufrufe konfiguriert ist, Folgendes angezeigt:

Seitenpfad Sitzungen Aufrufe
/home 1 2
/products 1 1
Gesamt (Google Analytics-dedupliziert) 1 3

Wenn Sie die Zeilen addieren, erhalten Sie 2 Sitzungen. Die tatsächliche Gesamtzahl der Sitzungen für die Property wird jedoch dedupliziert und beträgt 1.

Anpassungsregeln

  • Sitzungen mit Seitenpfad bezieht sich auf einzelne Sitzungen, bei denen der Pfad mindestens einmal aufgerufen wird.
  • Sitzungen mit Landingpage bezieht sich auf eindeutige Sitzungen, die auf dem Pfad beginnen. Wenn Sie den Landingpage-Traffic sehen möchten, verwenden Sie immer Landingpage + Abfragestring anstelle von Sitzungen mit Seitenpfad.
  • Bei Aufrufe wird immer die Gesamtzahl der Ladevorgänge gezählt.

Best Practices für Entwickler und Analysten

  • Gültigkeitsbereiche einheitlich halten: Wenn Sie die Sitzungsleistung analysieren möchten, sollten Sie nutzerbezogene Traffic-Dimensionen (z. B. Erste Nutzerinteraktion – Standard-Channelgruppe) nicht mit sitzungsbezogenen Messwerten (z. B. Durchschnittliche Sitzungsdauer) kombinieren.
  • session_start in DebugView validieren: Verwenden Sie während der QA- und Überprüfungsphase Standard-Debugging-Tools wie Google Analytics DebugView, um zu bestätigen, dass session_start beim Start der Sitzung korrekt ausgelöst wird.

Best Practices für die Verwaltung von Zeitlimits für Sitzungen

Die Standarddauer einer Google Analytics-Sitzung beträgt 30 Minuten.

Wir raten davon ab, benutzerdefinierten Code zu implementieren, um Google Analytics regelmäßig zu „pingen“, um Zeitüberschreitungen aufgrund von Inaktivität zu verhindern. Wenn Sie Sitzungsmesswerte künstlich erhöhen, werden die Verhaltensdaten der Nutzer verzerrt. Verwenden Sie stattdessen integrierte Google Analytics-Funktionen oder richten Sie die Ausrichtung auf relevante Interaktionsereignisse, um eine sauberere Lösung zu bieten.

Warum allgemeine „Keep-Alive“-Pings eine schlechte Praxis sind

  • Verzerrte Kernmesswerte: Wenn ein Nutzer den Tab verlässt, ist er tatsächlich inaktiv. Wenn Sie die Sitzung offen halten, werden „Zombie-Sitzungen“ erstellt und die durchschnittliche Sitzungsdauer wird fälschlicherweise erhöht. Dadurch wird der tatsächliche Punkt verschleiert, an dem Nutzer das Interesse verlieren oder Ihre Website verlassen.
  • Auswirkungen auf Sitzungen mit Interaktion: In Google Analytics wird eine Sitzung mit Interaktion als eine Sitzung definiert, die länger als 10 Sekunden dauert, mindestens zwei Seitenaufrufe umfasst oder ein Schlüsselereignis (früher Conversion-Ereignis) auslöst. Wenn Sie eine Sitzung künstlich offen halten, wird sie als Sitzung mit Interaktion gewertet, was die Interaktionsrate künstlich erhöht.
  • Datenaufblähung und Kosten: Wenn Sie ständig leere Hintergrund-Ping-Ereignisse auslösen, erhöht sich die Anzahl der Ereignisse und die Kosten für das Data Warehouse steigen, wenn Sie Google Analytics-Daten nach BigQuery exportieren.

Wann und wie Sie passives Engagement erfassen sollten

Es gibt legitime Szenarien, in denen ein Nutzer aktiv mit Inhalten interagiert, aber keine standardmäßigen Google Analytics-Interaktionsereignisse (wie Klicks oder Seitenwechsel) auslöst. In diesen Fällen solltest du statt eines allgemeinen Keep-Alive-Pings aussagekräftige, vom Nutzer initiierte Fortschrittsereignisse erfassen:

  • Videoinhalte im Langformat: Ein Nutzer, der sich ein eingebettetes 45-minütiges Video ansieht, bleibt über 30 Minuten lang inaktiv und riskiert, dass die Sitzung abläuft.
  • Die App im Detail – Artikel: Ein Nutzer verbringt möglicherweise 40 Minuten damit, einen technischen Leitfaden zu lesen, und scrollt langsam, löst aber keine Navigationsaktionen aus.
  • Interaktive Webanwendungen: Nutzer, die Livefeeds, Börsenticker oder Daten-Dashboards im Blick behalten, konsumieren Informationen passiv, ohne zu klicken.

Wenn der Nutzer das Browserfenster minimiert oder den Tab wechselt, müssen die Hintergrund-Pings beendet werden.

Codebeispiel: Sichtbarkeitsbezogener Ereignis-Ping

Das folgende JavaScript-Muster zeigt, wie Sie die passive Interaktion erfassen und die Sichtbarkeit von Tabs berücksichtigen können. Passen Sie das Tracking-Intervall und den Parameterwert (z. B. 5 Minuten oder 300.000 ms) an Ihren spezifischen Anwendungsfall an, z. B. die typische Dauer Ihrer Videos oder langen Artikel:

const TRACKING_INTERVAL_MILLIS = 5 * 60 * 1000;

let engagementInterval;

function startEngagementTracking() {
  // Prevent duplicate intervals if tab becomes visible
  if (engagementInterval) return;

  engagementInterval = setInterval(() => {
    gtag('event', 'passive_engagement', {
      'engagement_time_msec': TRACKING_INTERVAL_MILLIS
    });
  }, TRACKING_INTERVAL_MILLIS);
}

function stopEngagementTracking() {
  if (engagementInterval) {
    clearInterval(engagementInterval);
    engagementInterval = null;
  }
}

// Start tracking initially if the page is visible
if (!document.hidden) {
  startEngagementTracking();
}

// Stop tracking when tab is hidden, resume when visible
document.addEventListener('visibilitychange', () => {
  if (document.hidden) {
    stopEngagementTracking();
  } else {
    startEngagementTracking();
  }
});

Optimierte Analysen in Google Analytics im Vergleich zu benutzerdefiniertem Tracking

Google Analytics bietet optimierte Analysen, mit denen einige passive Tracking-Szenarien automatisch verarbeitet werden, allerdings mit bestimmten Einschränkungen.

Interaktionstyp Durch optimierte Analysen abgedeckt? Anforderungen/Aufgaben
Eingebettete YouTube-Videos Ja Löst die Meilensteine video_start, video_complete und video_progress automatisch bei 10 %, 25 %, 50 % und 75 % aus (erfordert aktivierte JS API-Unterstützung).
Nicht-YouTube-Videos (HTML5, Vimeo) Nein Benutzerdefinierte Implementierung erforderlich. Sie können Ereignisse programmatisch mit gtag.js auslösen oder Trigger mit Google Tag Manager (GTM) verwalten.
Standardmäßiges Scrollen auf Seiten Teilweise Löst ein einzelnes scroll-Ereignis aus, wenn der Nutzer 90 % einer Seite erreicht.
Inkrementeller Lesefortschritt Nein Deaktivieren Sie das standardmäßige Scroll-Tracking von Google Analytics und implementieren Sie benutzerdefinierte Scroll-Schwellenwerte (z. B. 25 %, 50 %, 75 %) programmatisch oder in GTM.

Die sauberste Alternative: Zeitlimit für Sitzungen in Google Analytics anpassen

Wenn sich deine Website von Natur aus auf lange Inhalte, Videokurse oder die kontinuierliche Nutzung von Apps konzentriert, musst du keine benutzerdefinierten Skript-Hacks einfügen. Sie können den standardmäßigen Grenzwert von 30 Minuten in der Google Analytics-Benutzeroberfläche auf maximal 7 Stunden und 55 Minuten anpassen. Eine Anleitung finden Sie unter Zeitüberschreitung für Sitzungen anpassen.