Aby uzyskać ogólne informacje o zakresach użytkownika i sesji, w tym o tym, jak Google Analytics definiuje sesje i ściśle ogranicza je przez brak aktywności, zapoznaj się z artykułem Wymiary i dane: informacje o sesjach w Analytics oraz z przewodnikiem po zakresach wymiarów związanych ze źródłami wizyt.
Ten przewodnik zawiera informacje o wyzwaniach, z którymi mogą się spotkać deweloperzy, oraz sprawdzone metody zarządzania konfiguracjami sesji i śledzeniem pasywnym.
Łączenie wymiarów na poziomie strony z danymi o sesjach
Jeden z najczęstszych niuansów raportowania występuje, gdy połą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 zliczają unikalne okresy, w których dana ścieżka do strony została wczytana co najmniej raz.
Wyświetlenia (odsłony) to łączna liczba wczytań ścieżki strony.
Przykład
Rozważmy pojedynczą sesję z tą ścieżką nawigacji użytkownika: /home →/products → /home → Wyjście
Jeśli jest to jedyna sesja, raport skonfigurowany z wymiarem Ścieżka do strony i klasa ekranu oraz danymi Sesje lub Wyświetlenia będzie zawierać te informacje:
| Ścieżka do strony | Sesje | Wyświetlenia |
|---|---|---|
/home |
1 | 2 |
/products |
1 | 1 |
| Łącznie (zduplikowane dane 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, w ramach których użytkownik odwiedził ścieżkę co najmniej raz.
- Sesje ze stroną docelową to unikalne sesje rozpoczynające się na ścieżce. Aby wyświetlić ruch na stronie docelowej, zawsze używaj wymiaru Strona docelowa + ciąg zapytania zamiast Sesje ze ścieżką do strony.
- Wyświetlenia zawsze uwzględniają łączną częstotliwość wczytywania.
Sprawdzone metody dla programistów i analityków
- Zachowaj spójność zakresów: jeśli chcesz poznać skuteczność sesji, nie łącz 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 raporcie DebugView: w trakcie kontroli jakości i weryfikacji używaj standardowych narzędzi do debugowania, takich jak DebugView w Google Analytics, aby sprawdzić, czysession_startjest prawidłowo wywoływane po rozpoczęciu sesji.
Sprawdzone metody zarządzania limitami czasu sesji
Domyślny czas trwania sesji w Google Analytics to 30 minut.
Nie zalecamy implementowania kodu niestandardowego, który okresowo „pingowałby” Google Analytics, aby zapobiec przekroczeniu limitu czasu z powodu braku aktywnoś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łą praktyką
- Zniekształcone podstawowe dane: jeśli użytkownik odejdzie od karty, jest naprawdę nieaktywny. Jeśli wymusisz pozostawienie sesji otwartej, utworzysz „sesje zombie” i fałszywie zawyżysz średni czas trwania sesji. Maskuje to prawdziwy moment, w którym użytkownicy tracą zainteresowanie lub opuszczają Twoją 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 (wcześniej zdarzenie konwersji). Jeśli sztucznie utrzymujesz otwartą sesję, będzie ona wyglądać na zaangażowaną, co zawyża współczynnik zaangażowania.
- Nadmiar danych i koszty: jeśli stale wysyłasz puste pingi w tle, zwiększasz szum w liczbie zdarzeń i podnosisz koszty hurtowni danych, jeśli eksportujesz dane Google Analytics do BigQuery.
Kiedy śledzić pasywne zaangażowanie (i jak to robić)
Istnieją uzasadnione sytuacje, w których użytkownik aktywnie korzysta z treści, ale nie wywołuje standardowych zdarzeń interakcji Google Analytics (np. kliknięć lub zmian stron). W takich przypadkach zamiast ogólnego pinga podtrzymującego połączenie rejestruj istotne zdarzenia postępu inicjowane przez użytkownika:
- Długie treści wideo: użytkownik, który ogląda osadzony 45-minutowy film, pozostanie nieaktywny przez ponad 30 minut, co może spowodować wygaśnięcie sesji.
- Artykuły z szczegółowym omówieniem: użytkownik może spędzić 40 minut na zapoznaniu się z przewodnikiem technicznym i powoli przewijać stronę, ale nie wykonać żadnych działań związanych z nawigacją.
- Interaktywne aplikacje internetowe: użytkownicy, którzy monitorują transmisje na żywo, kursy akcji lub panele danych, konsumują informacje pasywnie, bez klikania.
Jeśli użytkownik zminimalizuje okno przeglądarki lub przełączy karty, pingi w tle muszą się zatrzymać.
Przykład kodu: 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 w Google Analytics a śledzenie niestandardowe
Google Analytics oferuje pomiar zaawansowany, który automatycznie obsługuje niektóre scenariusze śledzenia pasywnego, ale ma pewne ograniczenia.
| Typ interakcji | Czy pomiar zaawansowany obsługuje to zdarzenie? | Wymagania / działania |
|---|---|---|
| Umieszczanie filmów z YouTube | Tak | Automatycznie wywołuje punkty video_start, video_complete i video_progress na poziomie 10%, 25%, 50% i 75% (wymaga włączonej obsługi interfejsu JS API). |
| Filmy spoza YouTube (HTML5, Vimeo) | Nie | Wymaga niestandardowej implementacji. Uruchamiaj zdarzenia programowo za pomocą gtag.js lub zarządzaj regułami za pomocą Menedżera tagów Google (GTM). |
| Standardowe przewijanie strony | Częściowy | Wywołuje pojedyncze zdarzenie scroll tylko wtedy, gdy użytkownik przewinie stronę do 90%. |
| Przyrostowe postępy w czytaniu | Nie | Wyłącz domyślne śledzenie przewijania w Google Analytics i wdroż niestandardowe progi przewijania (np. 25%, 50%, 75%) programowo lub w Menedżerze tagów Google. |
Najprostsze rozwiązanie: dostosuj limit czasu sesji w Google Analytics
Jeśli Twoja witryna jest naturalnie skoncentrowana na długich treściach, kursach wideo lub ciągłym korzystaniu z aplikacji, nie musisz wstawiać niestandardowych skryptów. W interfejsie Google Analytics możesz dostosować domyślny 30-minutowy próg do maksymalnie 7 godzin i 55 minut. Instrukcje znajdziesz w artykule Dostosowywanie czasu trwania sesji.