Dieses Dokument richtet sich an Entwickler, die Seitenaufrufe in ihrer Single-Page-Anwendung mit Google Analytics erfassen möchten.
Single-Page-Anwendungen (SPA) sind Websites, die ein HTML-Dokument einmal laden und alle zusätzlichen Inhalte über JavaScript-APIs abrufen.
Beispiel: Sie haben ein Formular, mit dem Sie Leads generieren möchten. Das Formular hat drei Bildschirme: > * Auf dem ersten Bildschirm werden die Kundendaten erfasst. * Zweiter Bildschirm, auf dem Kunden Interesse an bestimmten Diensten bekunden. * Dritte Seite zum Registrieren für Webinare, die den Interessen des Kunden entsprechen.
Der Schlüssel zur korrekten Erfassung von Seitenaufrufen in SPAs besteht darin, Seitenaufrufe für jeden Bildschirm zu zählen, mit dem ein Nutzer interagiert, und den Referrer der Seite richtig zu erfassen, damit Sie die User Journey korrekt nachvollziehen können.
Hinweis
Auf dieser Seite wird davon ausgegangen, dass Sie bereits Folgendes haben:
Sie haben ein Google Analytics-Konto und eine Google Analytics-Property für Ihre Website. Informationen zum Einrichten von Google Analytics
Ein Google-Tag, das auf Ihrer Website implementiert ist und beim ersten Laden der Seite ausgelöst wird. Informationen zum Einrichten des Google-Tags
Analyse für Single-Page-Anwendungen implementieren
Verwenden Sie eine der folgenden Methoden, um einen neuen virtuellen Seitenaufruf auszulösen und so eine genaue SPA-Analyse zu ermöglichen:
Browserverlauf wird geändert (empfohlen): Wenn Ihre SPA die History API, insbesondere die Methoden
pushState()undreplaceState(), zum Aktualisieren von Bildschirmen verwendet, sollten Sie diese Option auswählen.Benutzerdefinierte Ereignisse: Wenn auf Ihrer Website das
DocumentFragment-Objekt zum Rendern verschiedener Bildschirme verwendet wird, sollten Sie diese Option nutzen.
Implementierung von Änderungen am Browserverlauf
Wenn Ihre Single-Page-Anwendung die History API verwendet, können Sie optimierte Analysen in Google Analytics aktivieren, um Seitenaufrufe automatisch anhand von Browserverlaufsereignissen zu erfassen.
Optimierte Analysen in Google Analytics aktivieren
So messen Sie page_views automatisch anhand des Browserverlaufs:
Klicken Sie auf der Seite Verwaltung unter Datenerhebung und ‑änderung auf Datenstreams > Web.
Stellen Sie den Schieberegler unter Optimierte Analysen auf Ein, um alle Optionen zu aktivieren.
Klicken Sie, um einzelne Optionen zu bearbeiten. Klicken Sie unter Seitenaufrufe auf Erweiterte Einstellungen anzeigen. Achten Sie darauf, dass sowohl Seitenaufrufe als auch Seitenänderungen basierend auf Ereignissen im Browserverlauf aktiviert sind.
Speichern Sie die Änderungen.
Messkonfiguration überprüfen
So prüfen Sie, ob Ihre Single-Page-Anwendung Seitenaufrufe richtig erfasst:
Aktivieren Sie den Debug-Modus für jedes Tag in Ihrer SPA-Messkonfiguration. Informationen zum Beobachten von Ereignissen in DebugView
Klicken Sie sich durch Ihre Single-Page-Anwendung. Wenn Sie auf einen neuen virtuellen Bildschirm klicken, sollte in DebugView ein neues
page_view-Ereignis angezeigt werden. Vergleichen Sie diepage_view-Ereignisparameter mit dem vorherigenpage_view-Ereignis, um zu prüfen, ob die Referrer-URL der Seite und der Seitenpfad richtig aktualisiert wurden.
Zusätzliche Überlegungen für SPAs
Neben dem Senden von page_view-Ereignissen sollten Sie die folgenden zusätzlichen Aspekte für eine robuste SPA-Integration mit Google Analytics und eine bessere Nutzerfreundlichkeit berücksichtigen:
Scrollposition verwalten
Wenn Nutzer in einer SPA zwischen Ansichten wechseln, behält der Browser in der Regel die aktuelle Scrollposition bei. Das kann dazu führen, dass Nutzer den oberen Bereich der neuen virtuellen Seite nicht sehen, und sich auf das Tracking der Scrolltiefe auswirken.
Empfehlung:Setzen Sie die Scrollposition nach jedem Übergang zu einer virtuellen Seite programmatisch auf den Anfang der Seite oder des Hauptinhaltscontainers zurück.
// Example: Reset window scroll position on a route change in your SPA
window.scrollTo(0, 0);
// Or, if your content is within a specific element:
// document.getElementById('main-content').scrollTo(0, 0);
Mit dieser Änderung beginnen Nutzer oben auf den neuen Inhalten. So kann das Google Analytics-Scroll-Tracking das Engagement auf der neuen virtuellen Seite genau erfassen.
Barrierefreiheit von Inhalten für Browserfunktionen sicherstellen
Wenn Nutzer Probleme mit Browserfunktionen wie der Suche auf der Seite (Strg+F) melden, die nach dem Seitenaufbau einer virtuellen Seite nicht funktionieren, kann das darauf hinweisen, wie Ihre SPA das DOM aktualisiert.
Empfehlung:Achten Sie darauf, dass Ihr SPA-Framework und Ihre Routinglogik die relevanten Teile des DOM vollständig und synchron mit dem Inhalt der neuen Seite aktualisieren. Verzögertes Rendern oder Inhalte, die im Haupt-DOM-Baum ausgeblendet sind, können möglicherweise nicht sofort von der Suchfunktion des Browsers indexiert werden. Testen Sie die Suche auf der Seite nach virtuellen Navigationsvorgängen, um die Zugänglichkeit von Inhalten zu bestätigen.
Auswirkungen auf automatische Ereignisse
Wenn Sie die Erfassung virtueller Seitenaufrufe in Ihrer SPA richtig implementieren, werden andere automatische Ereignisse in Google Analytics entsprechend verarbeitet. Wenn keine virtuellen Seitenaufrufe für Bildschirmänderungen erfasst werden, wird die SPA in Google Analytics als einzelne Seite behandelt, was zu verzerrten Messwerten führt.
Mit dem Ereignis user_engagement wird beispielsweise die Zeit gemessen, die ein Nutzer aktiv auf einer Seite verbringt. Ohne virtuelle Seitenaufrufe wird die gesamte Interaktionszeit dem ersten Seitenaufruf zugeordnet. Es ist dann nicht möglich, die auf einzelnen Bildschirmen verbrachte Zeit zu analysieren.
Wenn die Messung virtueller Seitenaufrufe korrekt implementiert ist:
- Das Ereignis
user_engagementwird gesendet, wenn der Nutzer von einer virtuellen Seite zur nächsten wechselt. - Die Engagement-Zeit für die vorherige virtuelle Seite wird berechnet und zusammen mit dem
user_engagement-Ereignis gesendet. Das erfolgt in der Regel kurz bevor daspage_view-Ereignis für die neue virtuelle Seite verarbeitet wird. - Andere Ereignisse wie Klicks oder Scrollen sind mit der
page_locationder virtuellen Seite verknüpft, die der Nutzer gerade aufruft.
So können Sie Nutzer-Engagement und andere Messwerte für einzelne Bildschirme oder Abschnitte in Ihrer SPA analysieren und die Nutzerinteraktion besser nachvollziehen.