Sprawdzone metody mierzenia wskaźników internetowych w terenie

Jak mierzyć wskaźniki internetowe za pomocą używanego obecnie narzędzia do analityki.

Możliwość mierzenia i raportowania rzeczywistej skuteczności ma kluczowe znaczenie dla diagnozowania i zwiększania wydajności w miarę upływu czasu. Bez pole danych, nie można przewidzieć, czy zmiany wprowadzane w witrynie osiągania pożądanych rezultatów.

Wiele popularnych monitorowań użytkowników (RUM) – dostawcy usług analitycznych obsługują już podstawowe wskaźniki internetowe narzędzi (a także innych wskaźników internetowych). Jeśli używasz obecnie jednego z narzędzi analitycznych RUM. Świetnie sobie radzisz, ocenić, w jakim stopniu strony w witrynie spełniają zalecane podstawowe wskaźniki internetowe); progi i zapobiegać regresjom. w przyszłości.

Zalecamy jednak korzystanie z narzędzia analitycznego, które obsługuje podstawowe wskaźniki internetowe jeśli narzędzie analityczne, z którego obecnie korzystasz, ich nie obsługuje, niekoniecznie trzeba zmieniać. Niemal wszystkie narzędzia analityczne umożliwiają określać i mierzyć niestandardowe lub zdarzenia, co oznacza, że firma może skorzystać z usług obecnego dostawcy usług analitycznych do pomiaru podstawowych wskaźników internetowych i dodawać je do istniejących raportów i paneli analitycznych.

W tym przewodniku opisujemy sprawdzone metody pomiaru podstawowych wskaźników internetowych (lub dowolnych danych niestandardowych) za pomocą wewnętrznych lub zewnętrznych narzędzi analitycznych. Może również służyć jako przewodnik dla dostawców usług analitycznych, którzy chcą dodać obsługę podstawowych wskaźników internetowych do swojej usługi.

Używanie niestandardowych danych lub zdarzeń

Jak już wspomnieliśmy, większość narzędzi analitycznych umożliwia pomiar danych niestandardowych. Jeśli to narzędzie analityczne, powinno być w stanie mierzyć każdy podstawowy element sieci Wskaźniki Wskaźnik zanieczyszczenia powietrza w przypadku korzystania z tego mechanizmu.

Pomiary niestandardowych danych lub zdarzeń w narzędziu analitycznym proces trzyetapowy:

  1. Zdefiniuj lub zarejestruj dane niestandardowe u administratora narzędzia (w razie potrzeby). (Uwaga: nie wszystkie dostawcy usług analitycznych wymagają, aby niestandardowe dane zostały zdefiniowane z wyprzedzeniem).
  2. Oblicz wartość wskaźnika w kodzie JavaScript frontendu.
  3. Wyślij wartość wskaźnika do backendu analityki, upewniając się, że nazwa lub identyfikator odpowiada temu, co zostało zdefiniowane w kroku 1 (ponownie w razie potrzeby).

Kroki 1 i 3 znajdziesz w dokumentacji narzędzia analitycznego w sprawie: za instrukcje. W kroku 2 możesz użyć web- Vitals do obliczanie wartości każdego z podstawowych wskaźników internetowych.

Poniższy przykładowy kod pokazuje, jak łatwo można śledzić te dane w kod i wysyłanie ich do usługi analitycznej.

import {onCLS, onINP, onLCP} from 'web-vitals';

function sendToAnalytics({name, value, id}) {
  const body = JSON.stringify({name, value, id});
  // Use `navigator.sendBeacon()` if available, falling back to `fetch()`.
  (navigator.sendBeacon && navigator.sendBeacon('/analytics', body)) ||
      fetch('/analytics', {body, method: 'POST', keepalive: true});
}

onCLS(sendToAnalytics);
onINP(sendToAnalytics);
onLCP(sendToAnalytics);

Unikaj średnich wartości

Perspektywa jest zsumowanie zakresu wartości danych o skuteczności przez obliczanie średniej. Na pierwszy rzut oka średnie wydają się wygodne, porządne podsumowanie dużej ilości danych, ale należy oprzeć się pokusie polegania w celu interpretacji wydajności strony.

Średnie są problematyczne ponieważ nie reprezentują one żadnej sesji użytkownika. Wskaźniki odstające w dowolnym zakresie rozkładu może zniekształcać średnią w sposób wprowadzający w błąd.

Na przykład niewielka grupa użytkowników może korzystać z bardzo powolnych sieci lub urządzeń które wykraczają poza maksymalny zakres wartości, ale nie uwzględniają wystarczającej liczby użytkowników. , aby wpływać na średnią w sposób sugerujący, że wystąpił problem.

W miarę możliwości używaj wartości procentowych, a nie średnich. Percentyle w zakresie rozkładu danego wskaźnika wydajności lepiej opisują pełny zakres z myślą o użytkownikach witryny. Pozwala to skupić się na podzbiorach rzeczywistych doświadczeń, które zapewnią Ci więcej informacji niż pojedyncza wartość. tak może.

Sprawdzanie możliwości zgłaszania dystrybucji

Po obliczeniu wartości wszystkich podstawowych wskaźników internetowych i przesłaniu ich do swojej usługi analitycznej za pomocą niestandardowych danych lub zdarzeń. aby utworzyć raport lub panel ze zgromadzonymi wartościami.

Aby mieć pewność, że spełniasz zalecane podstawowe wskaźniki internetowe progów, potrzebujesz raportu aby wyświetlić wartość każdego rodzaju danych w 75. percentylu.

Jeśli Twoje narzędzie analityczne nie ma wbudowanej funkcji raportowania kwantylowego, nadal możesz uzyskać te dane ręcznie, generując raport zawierający wszystkich wartości danych posortowanych w kolejności rosnącej. Po wygenerowaniu tego raportu wyniku, który stanowi 75% całej pełnej, posortowanej listy wszystkich wartości w argumencie że raport będzie 75. percentylem dla tego rodzaju danych – niezależnie od tego, jak segmentujesz dane (według typu urządzenia, typu połączenia, kraj itp.).

Jeśli narzędzie analityczne nie zapewnia szczegółowości raportowania na poziomie danych przez możesz osiągnąć taki sam efekt, jeśli Twoje narzędzie analityczne obsługuje niestandardowe Wymiary. Ustawiając unikalną wartość wymiaru niestandardowego dla każdego śledzonego wystąpienia danych powinno być możliwe wygenerowanie raportu podzielonego według pojedynczych danych o ile uwzględnisz wymiar niestandardowy w konfiguracji raportu. Ponieważ każde wystąpienie będzie miało unikalną wartość wymiaru, grupowanie nie będzie mieć miejsca.

Raport dotyczący wskaźników internetowych jest przykładem techniki wykorzystującej Google Analytics. Kod dla parametru raport jest open source, aby programiści mogli używać jej jako przykładu technik opisanych w tym przewodniku. .

zrzuty ekranu z wskaźnikami internetowymi.
Zgłoś

Wysyłaj dane we właściwym czasie

Niektóre dane o skuteczności można obliczyć po zakończeniu wczytywania strony, a inne (np. CLS) uwzględniają cały okres życia strony i są tylko już po rozpoczęciu wyładowania strony.

Może to jednak stanowić problem, ponieważ zarówno beforeunload, jak i unload nie są niezawodne (zwłaszcza w przypadku urządzeń mobilnych), a ich używanie nie zalecane (ponieważ mogą one uniemożliwić stronie wyświetlenie się w raporcie Wstecz Pamięć podręczna).

W przypadku danych, które śledzą cały okres życia strony, najlepiej przesyłać aktualna wartość danych przypada podczas zdarzenia visibilitychange, gdy stan widoczności strony zmieni się na hidden. To dlatego, że gdy strona stan widoczności zmienia się na hidden – nie ma gwarancji, że dowolny skrypt będzie ona mogła ponownie działać. Dotyczy to zwłaszcza wydawców korzystających z urządzeń mobilnych systemów, w których sama aplikacja przeglądarki może zostać zamknięta bez żadnych wywołań zwrotnych. o zwolnieniu z pracy.

Pamiętaj, że mobilne systemy operacyjne zwykle uruchamiają klucz visibilitychange podczas przełączania kart, przełączania aplikacji lub zamykania aplikacji. Wywołują też zdarzenie visibilitychange podczas zamykania karty lub przechodzenia do nową stronę. Dzięki temu zdarzenie visibilitychange jest znacznie bardziej niezawodne niż zdarzenie Zdarzenia: unload lub beforeunload.

Monitorowanie skuteczności na przestrzeni czasu

Po zaktualizowaniu implementacji analityki w taki sposób, aby śledzić i raportować Kolejnym krokiem jest śledzenie zmian na stronie co wpływa na skuteczność reklam.

Wersja zmian

Naiwne (i ostatecznie zawodne) podejście do śledzenia zmian to wdrażanie zmian w środowisku produkcyjnym, a następnie zakładać, że wszystkie wskaźniki otrzymane po data wdrożenia odpowiada nowej witrynie i wszystkim wskaźnikom otrzymanym przed jest taka sama jak w starej witrynie. Jednak niezależnie od wielu czynników (w tym buforowanie w warstwie HTTP, mechanizmie Service Worker lub CDN) może temu zapobiec z pracy.

Znacznie lepiej jest utworzyć unikalną wersję dla każdej wdrożonej zmiany a następnie śledzić tę wersję w narzędziu analitycznym. Większość narzędzi analitycznych ustawienia wersji. Jeśli Twój nie ma takiego wymiaru, możesz utworzyć wymiar niestandardowy i ustawić do wdrożonej wersji.

Eksperymentuj

Możesz również pójść o krok dalej, śledząc wiele wersji (albo eksperymentów).

Użyj tej funkcji, jeśli Twoje narzędzie analityczne umożliwia definiowanie grup eksperymentalnych. Możesz też użyć wymiarów niestandardowych, by zapewnić, że wszystkie wartości Twoich danych można powiązać w raportach z konkretną grupą eksperymentalną.

Po przeprowadzeniu eksperymentów w statystykach możesz wdrożyć eksperymentalna zmiana na podzbiorze użytkowników i porównanie skuteczności które wpływają na skuteczność użytkowników w grupie kontrolnej. Po masz pewność, że zmiana rzeczywiście poprawia skuteczność, możesz ją wdrożyć wszystkich użytkowników.

Upewnij się, że pomiary nie wpływają na skuteczność

Jeśli chcesz zmierzyć skuteczność na rzeczywistych użytkownikach, koniecznie kod pomiaru wydajności nie wpływa negatywnie skuteczność strony. Jeśli tak, wszelkie wnioski, które spróbujesz wyciągnąć, dotyczące wpływu reklam na działalność firmy będą niemiarodajne, ponieważ nigdy nie wiadomo, czy obecność kodu analitycznego ma największy wpływ mają negatywny wpływ.

Podczas wdrażania kodu analitycznego RUM w przeglądarce należy zawsze stosować się do poniższych zasad witryna produkcyjna:

Odrocz statystyki

Kod Analytics powinien być zawsze ładowany w sposób asynchroniczny, nieblokujący zwykle powinien być ładowany na końcu. Jeśli wczytujesz kod Analytics w sekcji może to negatywnie wpływać na LCP.

Wszystkie interfejsy API służące do pomiaru podstawowych wskaźników internetowych zostały zaprojektowany z myślą o obsłudze asynchronicznego i odroczonego wczytywania skryptów (za pomocą buffered), więc nie musisz się spieszyć, żeby skrypty wczytywały się wcześniej.

Jeśli mierzysz dane, których nie można później obliczyć w oś czasu wczytywania strony, w tekście umieść tylko kod, który wymaga wcześniejszego uruchomienia do <head> dokumentu (nie jest to blokowanie renderowania ), a resztę odłóż. Nie wczytuj wszystkich tylko dlatego, że wymaga tego pojedynczy rodzaj danych.

Nie twórz długich zadań

Kod Analytics jest często uruchamiany w odpowiedzi na dane wejściowe użytkownika, ale jeśli Twój kod przeprowadza wiele pomiarów DOM lub korzysta z innych interfejsów API, które wymagają dużej mocy procesora; sam kod Analytics może powodować słabą responsywność danych wejściowych. Ponadto, jeśli plik JavaScript, który zawiera kod Analytics, jest duży i zostanie uruchomiony. może zablokować wątek główny i mieć negatywny wpływ na interakcję z następnym wyrenderowaniem (INP) strony.

Użyj nieblokujących interfejsów API

Interfejsy API takie jak sendBeacon() oraz requestIdleCallback() zostały zaprojektowane do uruchamiania niekrytycznych zadań w sposób blokować ważne dla użytkownika zadania.

Te interfejsy API są świetnym narzędziem do wykorzystania w bibliotece analitycznej RUM.

Ogólnie wszystkie sygnały analityczne powinny być wysyłane za pomocą interfejsu API sendBeacon(). (jeśli jest dostępny), a cały kod pomiarowy analityki pasywnej należy uruchamiać podczas okresach bezczynności.

Śledź więcej, niż potrzebujesz

Przeglądarka ujawnia dużą ilość danych dotyczących wydajności, ale dlatego, że są one nie musi oznaczać, że należy go nagrać i wysłać Google Analytics.

Na przykład Resource Timing API udostępnia szczegółowe dane o czasie dla każdego zasobu wczytywanego na stronie. Prawdopodobnie jednak wszystkie te dane nie będą przydatne i zwiększa wydajność wczytywania zasobów.

Krótko mówiąc, nie tylko dane są dostępne, ale także wykorzystane przed wykorzystaniem zasobów do jego śledzenia.