Zmienne niestandardowe – śledzenie witryn (ga.js)

Zmienne niestandardowe to tagi pary nazwa-wartość, które można wstawiać do kodu śledzenia, aby ulepszać śledzenie przez Google Analytics. Dzięki zmiennym niestandardowym możesz definiować dodatkowe segmenty, które chcesz stosować do użytkowników, inne niż te dostarczone przez Analytics. W tym dokumencie znajdziesz opis zmiennych niestandardowych i ich konfiguracji.

Przegląd

Aby w pełni wykorzystać możliwości zmiennych niestandardowych, musisz zrozumieć podstawowy model interakcji użytkowników używany w Google Analytics. W tym modelu użytkownik wchodzi w interakcję z treścią przez pewien czas, a jego zaangażowanie w witrynę jest podzielone na hierarchię.

Wykres ilustruje ten model dla pojedynczego użytkownika witryny. Każdy blok reprezentuje liczbę sesji i interakcji tego użytkownika.

Każdy poziom w tym modelu jest zdefiniowany w następujący sposób:

  • Użytkownik – klient, który odwiedza witrynę, np. przeglądarka lub telefon komórkowy obsługiwane przez użytkownika.
  • Sesja – okres, w którym użytkownik korzystał z witryny.
  • Strona – działanie w imieniu użytkownika wysyłające żądanie GIF do serwerów Analytics. Zwykle jest to odsłona, ale mogą to być:
    • odsłony,
    • zdarzenia (np. kliknięcie przycisku filmu),

Każdy z tych 3 poziomów interakcji określa konkretny zakres zaangażowania użytkowników. To rozróżnienie jest ważne w przypadku zmiennych niestandardowych, ponieważ każda zmienna niestandardowa jest ograniczona do określonego zakresu. Możesz np. poznać liczbę sesji, w ramach których użytkownicy usunęli produkt z koszyka. W takim przypadku musisz zdefiniować zmienną niestandardową na poziomie sesji, aby cała sesja tego użytkownika była oznaczona jako ta, w której produkty zostały usunięte z koszyków online.

Powrót do góry

Używanie zmiennych niestandardowych

Aktywność użytkowników w witrynie możesz skonfigurować za pomocą różnych zmiennych niestandardowych, dlatego najczęściej tworzy się własne narzędzia JavaScript do zarządzania nimi. Twój skrypt użyje podstawowej metody tworzenia zmiennej niestandardowej w ten sposób:

_setCustomVar(index, name, value, opt_scope)

Ta metoda akceptuje 4 parametry:

  • index – boks na zmienną niestandardową. Wymagane. Jest to liczba, której wartość mieści się w zakresie od 1 do 5 włącznie. Zmienna niestandardowa powinna być umieszczona tylko w jednym przedziale. Nie można jej używać wielokrotnie w różnych boksach.
  • name – nazwa zmiennej niestandardowej. Wymagane. Jest to ciąg znaków, który identyfikuje zmienną niestandardową i pojawia się w raporcie Zmienne niestandardowe najwyższego poziomu w raportach Analytics.
  • wartość – wartość zmiennej niestandardowej. Wymagane. Ten ciąg znaków jest sparowany z nazwą. Z nazwą zmiennej niestandardowej możesz sparować pewną liczbę wartości. Wartość wybranej nazwy zmiennej pojawi się na liście w interfejsie użytkownika. Zwykle podano co najmniej 2 wartości dla imienia. Możesz np. zdefiniować nazwę zmiennej niestandardowej gender i podać male oraz female jako 2 możliwe wartości.
  • opt_scope – zakres zmiennej niestandardowej; Opcjonalne. Jak opisano powyżej, zakres określa poziom zaangażowania użytkowników w witrynie. Jest to liczba, której możliwe wartości to 1 (na poziomie użytkownika), 2 (na poziomie sesji) lub 3 (na poziomie strony). Jeśli nie określisz zakresu zmiennej niestandardowej, domyślnie przyjmuje się interakcja na poziomie strony.

Poniższy fragment kodu pokazuje, jak możesz ustawić zmienną niestandardową do śledzenia wizyt, w przypadku których użytkownicy usunęli produkty z koszyka. W tym przypadku metoda _setCustomVar() jest wywoływana tuż przed metodą _trackEvent(), aby została dostarczona w żądaniu GIF wysłanym przez metodę _trackEvent(). Używa nazwy Items Removed z wartością Yes, aby zdefiniować tę aktywność użytkowników witryny. Warto też ustawić domyślną zmienną niestandardową na potrzeby właściwości Items Removed i No. Otrzymasz dzięki temu liczbę wizyt, w przypadku których produkty zostały usunięte z koszyka, oraz liczbę wizyt, podczas których nie wykonano usunięcia produktów.

Fragment asynchroniczny (zalecany)

 _gaq.push(['_setCustomVar',
      1,                   // This custom var is set to slot #1.  Required parameter.
      'Items Removed',     // The name acts as a kind of category for the user activity.  Required parameter.
      'Yes',               // This value of the custom variable.  Required parameter.
      2                    // Sets the scope to session-level.  Optional parameter.
   ]);
 _gaq.push(['_trackEvent',
      'Shopping', // category of activity
      'Item Removal', // Action
   ]);

Po skonfigurowaniu zmiennych niestandardowych możesz je usuwać za pomocą metody _deleteCustomVar(index).

Powrót do góry

Przykładowe zastosowania

Zmienne niestandardowe można implementować na wiele różnych sposobów w zależności od modelu witryny i potrzeb biznesowych. Przykłady pokazują różne przypadki użycia, z których każdy obrazuje inny poziom zakresu:

Zmienne niestandardowe na poziomie strony

Za pomocą zmiennych niestandardowych na poziomie strony możesz zdefiniować zbiór działań użytkowników na poziomie strony.

Załóżmy np., że zarządzasz witryną gazety internetowej, w której użytkownicy przeglądają wiele różnych artykułów. Chociaż można łatwo ustalić, które artykuły są najpopularniejsze, teraz możesz też korzystać ze zmiennych niestandardowych, aby określać, które fragmenty gazety są popularne. Aby to zrobić, konfiguruj zmienną niestandardową na poziomie strony każdego artykułu (sekcja artykułu jest ustawiona jako zmienna niestandardowa). Możesz np. mieć takie sekcje jak Życie i styl, Opinie i Biznes. Możesz ustawić zmienną niestandardową do śledzenia wszystkich artykułów według sekcji.

Fragment asynchroniczny (zalecany)

_gaq.push(['_setCustomVar',
      1,                   // This custom var is set to slot #1.  Required parameter.
      'Section',           // The top-level name for your online content categories.  Required parameter.
      'Life & Style',  // Sets the value of "Section" to "Life & Style" for this particular aricle.  Required parameter.
      3                    // Sets the scope to page-level.  Optional parameter.
   ]);

Kontynuujmy ten przykład i załóżmy, że chcesz nie tylko otagować tylko sekcję dotyczącą konkretnego artykułu, ale także podsekcji. Na przykład dział Życie i styl Twojej gazety może zawierać kilka podsekcji, np. Żywność i napoje, Moda i Sport. W przypadku konkretnego artykułu możesz śledzić zarówno sekcję, jak i podsekcję. Możesz ustawić dodatkową zmienną niestandardową, aby śledzić wszystkie artykuły według podsekcji.

Fragment asynchroniczny (zalecany)

_gaq.push(['_setCustomVar',
          2,                   // This custom var is set to slot #2.  Required parameter.
          'Sub-Section',       // The 2nd-level name for your online content categories.  Required parameter.
          'Fashion',           // Sets the value of "Sub-section" to "Fashion" for this particular article.  Required parameter.
          3                    // Sets the scope to page-level.  Optional parameter.
         ]);

W tym przykładzie ustawisz dla jednej strony 2 równoczesne zmienne niestandardowe na poziomie strony. W przypadku pojedynczej strony możesz śledzić do 5 zmiennych niestandardowych, z których każda ma oddzielny boks. Oznacza to, że na tej samej stronie możesz przypisać 3 dodatkowe zmienne niestandardowe. Dla wszystkich artykułów w witrynie możesz skonfigurować tablicę zmiennych niestandardowych na poziomie strony, aby śledzić je według różnych sekcji i podsekcji. Więcej informacji o prawidłowym korzystaniu ze zmiennych niestandardowych na poziomie strony znajdziesz w wytycznych dotyczących użytkowania poniżej.

Powrót do góry

Zmienne niestandardowe na poziomie sesji

Używaj zmiennych niestandardowych na poziomie sesji do rozróżnienia różnych wrażeń użytkowników w poszczególnych sesjach.

Jeśli na przykład Twoja witryna umożliwia użytkownikom logowanie się, możesz użyć zmiennej niestandardowej o zakresie na poziomie sesji dla stanu logowania użytkownika. Dzięki temu możesz podzielić odwiedziny użytkowników zalogowanych i pochodzących od anonimowych.

Fragment asynchroniczny (zalecany)

_gaq.push(['_setCustomVar',
      1,             // This custom var is set to slot #1.  Required parameter.
      'User Type',   // The name of the custom variable.  Required parameter.
      'Member',      // Sets the value of "User Type" to "Member" or "Visitor" depending on status.  Required parameter.
       2             // Sets the scope to session-level.  Optional parameter.
   ]);

Załóżmy, że chcesz śledzić zarówno typ użytkownika, jak i to, czy w przypadku danej sesji nastąpiła próba zakupu. Jeśli zakładamy, że każda strona umożliwia użytkownikowi zalogowanie się, chcielibyśmy zarezerwować boks nr 1 na zmienną niestandardową Typ użytkownika i użyć innego boksu na próbę zakupu:

Fragment asynchroniczny (zalecany)

_gaq.push(['_setCustomVar',
      2,                   // This custom var is set to slot #2.  Required parameter.
      'Shopping Attempts', // The name of the custom variable.  Required parameter.
      'Yes',               // The value of the custom variable.  Required parameter.
                           //  (you might set this value by default to No)
      2                    // Sets the scope to session-level.  Optional parameter.
   ]);

Powrót do góry

Zmienne niestandardowe na poziomie użytkownika

Użyj zmiennych niestandardowych na poziomie użytkownika do rozróżnienia kategorii użytkowników w wielu sesjach.

Jeśli na przykład Twoja witryna oferuje płatne treści subskrybentom korzystającym z płatnych subskrypcji, możesz ustawić zmienną niestandardową na poziomie wizyty, aby sprawdzać, którzy użytkownicy płacą za użytkowników, na jakim poziomie płatności i którzy użytkownicy korzystają z bezpłatnej wersji usługi. Ustawisz tę zmienną niestandardową jako funkcję jednorazową, bo wartość będzie utrzymywać się przez cały okres ważności pliku cookie użytkownika.

Fragment asynchroniczny (zalecany)

_gaq.push(['_setCustomVar',
      1,                // This custom var is set to slot #1.  Required parameter.
      'Member Type',    // The name of the custom variable.  Required parameter.
      'Premium',        // The value of the custom variable.  Required parameter.
                        //  (possible values might be Free, Bronze, Gold, and Platinum)
      1                 // Sets the scope to visitor-level.  Optional parameter.
 ]); 

Wytyczne dotyczące użytkowania

W tej sekcji opisujemy różnice między różnymi typami zmiennych niestandardowych i pokazujemy, jak z nich korzystać:

Typy zmiennych niestandardowych

W tabeli poniżej znajdziesz najważniejsze cechy różnych typów zmiennych. Pamiętaj, że gdy te same przedziały są używane przez różne zmienne, obowiązują pewne ograniczenia.

Całkowita łączna długość nazwy i wartości zmiennej niestandardowej nie może przekraczać 128 znaków.

Powrót do góry

  Czas działania Podczas udostępniania boksu innym zmiennym Liczba dozwolonych
Poziom strony

Pojedyncze wywołanie odsłony, zdarzenia lub transakcji.

Ostatnią zmienną na poziomie strony, która ma być wywołana na stronie, jest zmienna zastosowana do tej strony.

W przypadku każdej usługi internetowej (kolekcji stron) można ustawić wiele niepowtarzalnych zmiennych na poziomie strony i ponownie używać boksów. Ograniczone tylko liczbą działań w danej sesji.

Dla pojedynczej strony można skonfigurować do pięciu jednoczesnych zmiennych niestandardowych.

Poziom sesji

Bieżąca sesja użytkownika.

Ostatnia zmienna na poziomie sesji wywołana w sesji jest używana w tej sesji.
Przykład: jeśli parametr login=false dla boksu 1 na początku sesji i login=true dla boksu 1 później, sesja zostanie ustawiona na true dla login.

Zastępuje każdą ustawioną wcześniej zmienną na poziomie strony wywołaną w tej samej sesji.
Przykład: jeśli przedział 1 jest używany po raz pierwszy na potrzeby sesji category=sports, a potem w przypadku sesji login=true, wartość category=sports nie zostanie zarejestrowana w tej sesji.

W przypadku każdej usługi internetowej można utworzyć dowolną liczbę różnych zmiennych niestandardowych na poziomie sesji, które można zdefiniować za pomocą limitu 128 znaków par klucz-wartość.

Dla każdej sesji użytkownika można skonfigurować maksymalnie 5 zmiennych na poziomie sesji.

Poziom użytkownika

Bieżąca sesja i wszystkie przyszłe sesje z okresu ważności pliku cookie użytkownika.

Ostatnia wartość ustawiona dla użytkownika to wartość stosowana do bieżącej i przyszłych sesji.

W przypadku każdej usługi internetowej można utworzyć do 5 różnych zmiennych na poziomie użytkownika.

Powrót do góry

Zachowaj ostrożność, mieszając różne typy zmiennych

Ogólnie nie zalecamy mieszania tego samego przedziału zmiennej niestandardowej z różnymi typami, ponieważ może to prowadzić do dziwnych obliczeń.

Jeśli w swojej usłudze internetowej korzystasz z wielu zmiennych niestandardowych na poziomie strony, sesji i użytkownika, musisz dokładnie przemyśleć sposób ponownego wykorzystania boksów reklamowych. Jeśli w Twojej witrynie pojawi się sytuacja, w której zmienna niestandardowa na poziomie strony lub sesji korzysta z tego samego boksu w tym samym czasie jako zmienna na poziomie strony, zostanie zarejestrowana tylko zmienna na poziomie sesji (lub strony).

Poniższe scenariusze ilustrują kombinację zmiennych na poziomie strony, sesji i użytkownika ustawianych przez pojedynczego użytkownika w tej samej przeglądarce. W każdym przykładzie przedział jest oznaczony liczbą w nawiasie, a znak S: wskazuje zakres zmiennej.

Przypadek 1. Zmienna na poziomie sesji ma pierwszeństwo

Na ostatniej stronie ponownie zastosowano w boksie 1 zmienną niestandardową na poziomie sesji, więc ma ona pierwszeństwo.

Wizyta 1 Strona 1
(1) S:poziom strony
section=opinion
Strona 2
(1) S: poziom sesji
login=true
Strona 3
(1) S: poziom sesji
converted=true

Raport dotyczący wizyt wygląda tak:

  • # wizyt w przypadku parametru section=opinia: 0
  • # wizyty dla loginu=true: 0
  • # wizyt w przypadku konwersji=prawda: 1

Przypadek 2 – początkowa zmienna na poziomie użytkownika ma pierwszeństwo

W tym przykładzie w przypadku wizyty 1 w miejscu 1 jest najpierw używana zmienna niestandardowa na poziomie użytkownika, a w przypadku wizyty 3 – zmienna niestandardowa na poziomie strony. W tej kolejności zmienna na poziomie użytkownika nie zastępuje zmiennej na poziomie strony.

Odwiedź 1 Strona 1
(1) S:poziom użytkownika
gender=male
Wizyta 2 Strona 1
(2) S:poziom sesji
converted=false
Wizyta 3 Strona 1
(1) S:poziom strony
section=opinion

Raport dotyczący wizyt wygląda tak:

  • # wizyt w przypadku płci mężczyzna: 2
  • # wizyty z konwersją=fałsz: 1
  • # wizyta w przypadku parametru section=opinia: 1
  • Nie używaj zduplikowanych nazw kluczy w różnych przedziałach.
  • Wywołaj funkcję _setCustomVar(), jeśli można ją ustawić przed żądaniem wyświetlenia strony lub zdarzenia GIF.
    W niektórych przypadkach może to być niemożliwe i musisz skonfigurować kolejne żądanie _trackPageview() po ustawieniu zmiennej niestandardowej. Zwykle jest to konieczne tylko w sytuacjach, gdy użytkownik aktywuje zmienną niestandardową na poziomie sesji lub wizyty, gdy nie można połączyć tej metody z wywołaniem śledzenia odsłony strony, zdarzenia lub śledzenia e-commerce.
  • Użyj macierzy przedziałów, aby śledzić dużą liczbę zmiennych niestandardowych.
    Jeśli masz złożone wymagania dotyczące śledzenia, w wyniku których występuje konflikt zmiennych na poziomie strony i sesji, utwórz macierz boksów, aby mieć pewność, że zmienne na poziomie sesji nie zostaną w sposób niezastępowany przez zmienne na poziomie strony.
  • Zamiast zmiennych niestandardowych warto używać śledzenia zdarzeń w przypadku określonych aplikacji.
    Załóżmy np., że masz sklep internetowy z muzyką i chcesz śledzić zarówno sesje logowania, próby dokonania zakupu, jak i sesje, w których odtwarzane były próbki muzyki. Zamiast używać do tego zmiennych na poziomie sesji, warto użyć śledzenia zdarzeń do śledzenia liczby prób odtworzenia muzyki. Tutaj możesz użyć 4 parametru wartości wywołania śledzenia zdarzeń, aby przekazywać dane sesji z Twoich plików cookie.
  • Nie używaj zmiennych na poziomie sesji do śledzenia zachowań, które można śledzić za pomocą zmiennych na poziomie strony.
    Załóżmy np., że śledzisz stan logowania i prób zakupów według sesji, a w Twojej witrynie jest dostępna strona „Specjalne” dla wspierających, którą także chcesz śledzić. W związku z tym, że zmienna niestandardowa na poziomie strony będzie pokazywać liczbę wizyt dla tej konkretnej zmiennej, będzie już dostępna liczba wizyt, które obejmowały tę stronę co najmniej raz.

Powrót do góry