Omówienie zakresów użytkownika i sesji, w tym sposobu, w jaki Google Analytics definiuje i ściśle ogranicza sesje na podstawie braku aktywności, znajdziesz w artykułach Wymiary i dane: sesje w Analytics oraz Zakresy wymiarów związanych ze źródłami wizyt.
W tym przewodniku opisujemy wyzwania i sprawdzone metody dotyczące zarządzania konfiguracjami sesji i pasywnym śledzeniem, które są przeznaczone dla deweloperów.
Łączenie wymiarów na poziomie strony z danymi o sesjach
Jedna z najczęstszych niuansów raportowania występuje, gdy łączysz wymiary o zakresie strony (np. ścieżka do strony i klasa ekranu) z danymi Sesje na poziomie sesji.
Definicje sesji i wyświetleń
Sesje to liczba unikalnych okresów, w których dana ścieżka do strony została wczytana co najmniej raz.
Wyświetlenia (odsłony) to łączna liczba wczytań ścieżki do strony.
Przykład
Weźmy pod uwagę pojedynczą sesję z tą ścieżką nawigacji użytkownika: /home → /products → /home → Wyjście.
Jeśli jest to jedyna sesja, raport skonfigurowany z użyciem wymiaru Ścieżka do strony i klasa ekranu oraz danych Sesje lub Wyświetlenia będzie zawierać te informacje:
| Ścieżka do strony | Sesje | Wyświetlenia |
|---|---|---|
/home |
1 | 2 |
/products |
1 | 1 |
| Łącznie (po usunięciu duplikatów w Google Analytics) | 1 | 3 |
Jeśli zsumujesz wiersze, otrzymasz 2 sesje, ale rzeczywista łączna liczba sesji w usłudze po usunięciu duplikatów wynosi 1.
Reguły dostosowywania
- Sesje ze ścieżką do strony to unikalne sesje, podczas których użytkownicy odwiedzili ścieżkę co najmniej raz.
- Sesje ze stroną docelową to unikalne sesje, które rozpoczynają się na danej ścieżce. Aby sprawdzić ruch na stronie docelowej, zawsze używaj wymiaru Strona docelowa + ciąg zapytania, a nie Sesje ze ścieżką do strony.
- Wyświetlenia zawsze zliczają łączną częstotliwość wczytywania.
Sprawdzone metody dla deweloperów i analityków
- Zachowaj spójność zakresów: jeśli chcesz poznać skuteczność sesji, nie mieszaj wymiarów związanych z ruchem ograniczonych do użytkownika (np. Pierwszy użytkownik – domyślna grupa kanałów) z danymi ograniczonymi do sesji (np. Średni czas trwania sesji).
- Sprawdź
session_startw DebugView: podczas kontroli jakości i weryfikacji użyj standardowych narzędzi do debugowania, takich jak DebugView w Google Analytics, aby sprawdzić, czysession_starturuchamia się prawidłowo po rozpoczęciu sesji.
Sprawdzone metody zarządzania limitami czasu sesji
Domyślny czas trwania sesji w Google Analytics wynosi 30 minut.
Nie zalecamy implementowania niestandardowego kodu, który okresowo wysyła „pingi” do Google Analytics, aby zapobiec przekroczeniu limitu czasu nieaktywności. Jeśli sztucznie zawyżysz dane sesji, zniekształcisz dane o zachowaniu użytkowników. Zamiast tego używaj wbudowanych funkcji Google Analytics lub kieruj reklamy na istotne zdarzenia związane z zaangażowaniem, aby uzyskać bardziej przejrzyste rozwiązanie.
Dlaczego ogólne pingi „keep-alive” są złym rozwiązaniem
- Zniekształcone podstawowe dane: jeśli użytkownik opuści kartę, jest on rzeczywiście nieaktywny. Jeśli wymusisz pozostawienie sesji otwartej, utworzysz „sesje zombie” i fałszywie zawyżysz średni czas trwania sesji. Ukrywa to rzeczywisty moment, w którym użytkownicy tracą zainteresowanie lub opuszczają witrynę.
- Wpływ na sesje z zaangażowaniem: Google Analytics definiuje sesję z zaangażowaniem jako sesję, która trwa dłużej niż 10 sekund, obejmuje co najmniej 2 wyświetlenia strony lub wywołuje kluczowe zdarzenie (dawniej zdarzenie konwersji). Jeśli sztucznie utrzymujesz sesję jako otwartą, sprawiasz, że wydaje się ona sesją z zaangażowaniem, co zawyża współczynnik zaangażowania.
- Przeładowanie danymi i koszty: jeśli stale wywołujesz puste zdarzenia ping w tle, zwiększa to szum związany z liczbą zdarzeń i podnosi koszty hurtowni danych, jeśli eksportujesz dane Google Analytics do BigQuery.
Kiedy śledzić zaangażowanie pasywne (i jak to robić)
Istnieją uzasadnione scenariusze, w których użytkownik aktywnie angażuje się w treści, ale nie wywołuje standardowych zdarzeń interakcji Google Analytics (takich jak kliknięcia czy zmiany strony). W takich przypadkach zamiast ogólnego sygnału ping utrzymującego połączenie rejestruj istotne zdarzenia postępu inicjowane przez użytkownika:
- Długie treści wideo: użytkownik, który ogląda umieszczony na stronie 45-minutowy film, pozostanie pasywny przez ponad 30 minut, co może spowodować wygaśnięcie sesji.
- Szczegółowe omówienia: użytkownik może spędzić 40 minut na zapoznaniu się z przewodnikiem technicznym i powoli przewijać stronę, ale nie wywołać żadnych działań związanych z nawigacją.
- Interaktywne aplikacje internetowe: użytkownicy, którzy monitorują transmisje na żywo, paski giełdowe lub panele danych, konsumują informacje pasywnie, bez klikania.
Jeśli użytkownik zminimalizuje okno przeglądarki lub przełączy karty, pingi w tle muszą zostać zatrzymane.
Przykładowy kod: ping zdarzenia uwzględniający widoczność
Poniższy wzorzec JavaScript pokazuje, jak śledzić pasywne zaangażowanie i uwzględniać widoczność karty. Dostosuj interwał śledzenia i wartość parametru (np. 5 minut lub 300 000 ms) do konkretnego przypadku użycia, np. typowego czasu trwania filmów lub długich artykułów:
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();
}
});
Pomiar zaawansowany a śledzenie niestandardowe w Google Analytics
Google Analytics oferuje pomiar zaawansowany, który automatycznie obsługuje niektóre scenariusze śledzenia pasywnego, choć ma pewne ograniczenia.
| Typ interakcji | Obsługiwane przez pomiar zaawansowany? | Wymagania / działania |
|---|---|---|
| Umieszczone filmy na YouTube | Tak | Automatycznie uruchamia zdarzenia video_start, video_complete i video_progress po osiągnięciu 10%, 25%, 50% i 75% (wymaga włączenia obsługi interfejsu API JavaScriptu). |
| Filmy spoza YouTube (HTML5, Vimeo) | Nie | Wymaga niestandardowej implementacji. Uruchamiaj zdarzenia automatycznie za pomocą gtag.js lub zarządzaj regułami za pomocą Menedżera tagów Google (GTM). |
| Standardowe przewijanie strony | Częściowe | Uruchamia pojedyncze zdarzenie scroll tylko wtedy, gdy użytkownik dotrze do 90% strony. |
| Przyrostowe postępy w czytaniu | Nie | Wyłącz domyślne śledzenie przewijania w Google Analytics i wdrażaj niestandardowe progi przewijania (np. 25%, 50%, 75%) programowo lub w Menedżerze tagów Google. |
Najlepsze rozwiązanie: dostosowanie limitu czasu sesji w Google Analytics
Jeśli Twoja witryna naturalnie koncentruje się na długich treściach, kursach wideo lub ciągłym korzystaniu z aplikacji, nie musisz wprowadzać niestandardowych skryptów. Domyślny 30-minutowy próg możesz dostosować w interfejsie Google Analytics do maksymalnie 7 godzin i 55 minut. Instrukcje znajdziesz w artykule Dostosowywanie limitu czasu sesji.