Twórz eksperymenty z wiadomościami za pomocą testów A/B

Kontaktując się z użytkownikami lub rozpoczynając nową kampanię marketingową, chcesz mieć pewność, że wszystko zrobisz dobrze. Testy A/B mogą pomóc w znalezieniu optymalnego sformułowania i prezentacji poprzez testowanie wariantów wiadomości na wybranych częściach bazy użytkowników. Niezależnie od tego, czy Twoim celem jest lepsze utrzymanie czy konwersja oferty, testy A/B mogą przeprowadzić analizę statystyczną w celu ustalenia, czy wariant wiadomości jest skuteczniejszy od wartości bazowej dla wybranego celu.

Aby przeprowadzić test A/B wariantów funkcji z wartością bazową, wykonaj następujące czynności:

  1. Stwórz swój eksperyment.
  2. Zweryfikuj swój eksperyment na urządzeniu testowym.
  3. Zarządzaj swoim eksperymentem.

Utwórz eksperyment

Eksperyment wykorzystujący narzędzie do tworzenia powiadomień umożliwia ocenę wielu wariantów w ramach jednego powiadomienia.

  1. Zaloguj się do konsoli Firebase i sprawdź, czy w Twoim projekcie jest włączona usługa Google Analytics, aby eksperyment miał dostęp do danych Analytics.

    Jeżeli podczas tworzenia swojego projektu nie włączyłeś Google Analytics, możesz je włączyć w zakładce Integracje , do której dostęp uzyskasz poprzez > Ustawienia projektu w konsoli Firebase .

  2. W sekcji Zaangażowanie na pasku nawigacyjnym konsoli Firebase kliknij Testowanie A/B .

  3. Kliknij opcję Utwórz eksperyment , a następnie po wyświetleniu monitu o podanie usługi, z którą chcesz poeksperymentować, wybierz opcję Powiadomienia .

  4. Wprowadź nazwę i opcjonalny opis eksperymentu, a następnie kliknij przycisk Dalej .

  5. Wypełnij pola Kierowanie , wybierając najpierw aplikację, która korzysta z Twojego eksperymentu. Możesz także skierować reklamy do podzbioru użytkowników, aby wzięli udział w eksperymencie, wybierając opcje obejmujące:

    • Wersja: jedna lub więcej wersji Twojej aplikacji
    • Odbiorcy użytkowników: odbiorcy Analytics używani do kierowania reklam na użytkowników, którzy mogą zostać uwzględnieni w eksperymencie
    • Właściwość użytkownika: co najmniej jedna właściwość użytkownika Analytics służąca do wybierania użytkowników, którzy mogą zostać objęci eksperymentem
    • Kraj/region: co najmniej jeden kraj lub region, w którym wybierani są użytkownicy, którzy mogą zostać objęci eksperymentem
    • Język urządzenia: co najmniej jeden język i ustawienia regionalne używane do wybierania użytkowników, którzy mogą zostać objęci eksperymentem
    • Pierwsze otwarcie: kieruj reklamy do użytkowników na podstawie tego, kiedy po raz pierwszy otworzyli Twoją aplikację
    • Ostatnie zaangażowanie w aplikację: kieruj reklamy do użytkowników na podstawie tego, kiedy ostatni raz weszli w interakcję z Twoją aplikacją
  6. Ustaw procent docelowych użytkowników: wybierz procent bazy użytkowników aplikacji spełniający kryteria określone w sekcji Docelowi użytkownicy , który chcesz równomiernie podzielić pomiędzy wartość bazową i jeden lub więcej wariantów w eksperymencie. Może to być dowolny procent z zakresu od 0,01% do 100%. Wartości procentowe są losowo przypisywane użytkownikom w przypadku każdego eksperymentu, włączając w to zduplikowane eksperymenty.

  7. W sekcji Warianty wpisz wiadomość, która ma zostać wysłana do grupy bazowej, w polu Wprowadź tekst wiadomości . Aby nie wysyłać wiadomości do grupy bazowej, pozostaw to pole puste.

  8. (opcjonalnie) Aby dodać więcej niż jeden wariant do eksperymentu, kliknij Dodaj wariant . Domyślnie eksperymenty mają jedną wartość bazową i jeden wariant.

  9. (opcjonalnie) Wprowadź nazwę dla każdego wariantu w eksperymencie, aby zastąpić nazwy Wariant A , Wariant B itd.

  10. Zdefiniuj metrykę celu eksperymentu, która będzie używana podczas oceny wariantów eksperymentu, wraz z wszelkimi dodatkowymi danymi z listy rozwijanej. Te dane obejmują wbudowane cele (zaangażowanie, zakupy, przychody, utrzymanie itp.), zdarzenia konwersji Analytics i inne zdarzenia Analytics.

  11. Wybierz opcje dla swojej wiadomości:

    • Data dostarczenia: wybierz opcję Wyślij teraz, aby rozpocząć eksperyment natychmiast po zapisaniu, lub opcję Zaplanowano , aby określić godzinę rozpoczęcia eksperymentu w przyszłości.
    • Opcje zaawansowane: aby wybrać opcje zaawansowane dla wszystkich powiadomień objętych eksperymentem, rozwiń opcję Opcje zaawansowane , a następnie zmień dowolne z wymienionych opcji wiadomości.
  12. Kliknij opcję Recenzja , aby zapisać eksperyment.

Możesz przeprowadzić maksymalnie 300 eksperymentów na projekt, który może składać się z maksymalnie 24 bieżących eksperymentów, a reszta jest w wersji roboczej lub ukończona.

Zweryfikuj swój eksperyment na urządzeniu testowym

Dla każdej instalacji Firebase możesz pobrać powiązany z nią token rejestracji FCM. Możesz użyć tego tokena, aby przetestować określone warianty eksperymentu na urządzeniu testowym z zainstalowaną aplikacją. Aby zweryfikować eksperyment na urządzeniu testowym, wykonaj następujące czynności:

  1. Uzyskaj token rejestracji FCM w następujący sposób:

    Szybki

    Messaging.messaging().token { token, error in
      if let error = error {
        print("Error fetching FCM registration token: \(error)")
      } else if let token = token {
        print("FCM registration token: \(token)")
        self.fcmRegTokenMessage.text  = "Remote FCM registration token: \(token)"
      }
    }
    

    Cel C

    [[FIRMessaging messaging] tokenWithCompletion:^(NSString *token, NSError *error) {
      if (error != nil) {
        NSLog(@"Error getting FCM registration token: %@", error);
      } else {
        NSLog(@"FCM registration token: %@", token);
        self.fcmRegTokenMessage.text = token;
      }
    }];
    

    Java

    FirebaseMessaging.getInstance().getToken()
        .addOnCompleteListener(new OnCompleteListener<String>() {
            @Override
            public void onComplete(@NonNull Task<String> task) {
              if (!task.isSuccessful()) {
                Log.w(TAG, "Fetching FCM registration token failed", task.getException());
                return;
              }
    
              // Get new FCM registration token
              String token = task.getResult();
    
              // Log and toast
              String msg = getString(R.string.msg_token_fmt, token);
              Log.d(TAG, msg);
              Toast.makeText(MainActivity.this, msg, Toast.LENGTH_SHORT).show();
            }
        });

    Kotlin+KTX

    FirebaseMessaging.getInstance().token.addOnCompleteListener(OnCompleteListener { task ->
        if (!task.isSuccessful) {
            Log.w(TAG, "Fetching FCM registration token failed", task.exception)
            return@OnCompleteListener
        }
    
        // Get new FCM registration token
        val token = task.result
    
        // Log and toast
        val msg = getString(R.string.msg_token_fmt, token)
        Log.d(TAG, msg)
        Toast.makeText(baseContext, msg, Toast.LENGTH_SHORT).show()
    })

    C++

    firebase::InitResult init_result;
    auto* installations_object = firebase::installations::Installations::GetInstance(
        firebase::App::GetInstance(), &init_result);
    installations_object->GetToken().OnCompletion(
        [](const firebase::Future& future) {
          if (future.status() == kFutureStatusComplete &&
              future.error() == firebase::installations::kErrorNone) {
            printf("Installations Auth Token %s\n", future.result()->c_str());
          }
        });
        

    Unity

    Firebase.Messaging.FirebaseMessaging.DefaultInstance.GetTokenAsync().ContinueWith(
      task => {
        if (!(task.IsCanceled || task.IsFaulted) && task.IsCompleted) {
          UnityEngine.Debug.Log(System.String.Format("FCM registration token {0}", task.Result));
        }
      });
    
  2. Na pasku nawigacyjnym konsoli Firebase kliknij Testowanie A/B .
  3. Kliknij Wersja robocza , najedź kursorem na eksperyment, kliknij menu kontekstowe ( ), a następnie kliknij Zarządzaj urządzeniami testowymi
  4. Wprowadź token FCM dla urządzenia testowego i wybierz wariant eksperymentu, który chcesz wysłać do tego urządzenia testowego.
  5. Uruchom aplikację i potwierdź, że wybrany wariant zostanie odebrany na urządzeniu testowym.

Zarządzaj swoim eksperymentem

Niezależnie od tego, czy tworzysz eksperyment za pomocą funkcji Remote Config, narzędzia do tworzenia powiadomień czy funkcji przesyłania wiadomości w aplikacji Firebase, możesz następnie sprawdzić i rozpocząć eksperyment, monitorować go w trakcie jego trwania oraz zwiększyć liczbę użytkowników objętych trwającym eksperymentem.

Po zakończeniu eksperymentu możesz zanotować ustawienia używane przez zwycięski wariant, a następnie udostępnić je wszystkim użytkownikom. Możesz też przeprowadzić inny eksperyment.

Rozpocznij eksperyment

  1. W sekcji Zaangażowanie w menu nawigacyjnym konsoli Firebase kliknij Testowanie A/B .
  2. Kliknij opcję Wersja robocza , a następnie kliknij tytuł eksperymentu.
  3. Aby sprawdzić, czy Twoja aplikacja ma użytkowników, którzy zostaliby objęci eksperymentem, rozwiń szczegóły wersji roboczej i sprawdź, czy w sekcji Kierowanie i dystrybucja znajduje się liczba większa niż 0% (na przykład 1% użytkowników spełniających kryteria ).
  4. Aby zmienić eksperyment, kliknij Edytuj .
  5. Aby rozpocząć eksperyment, kliknij opcję Rozpocznij eksperyment . W jednym projekcie można przeprowadzić maksymalnie 24 eksperymenty.

Monitoruj eksperyment

Po pewnym czasie trwania eksperymentu możesz sprawdzić jego postęp i zobaczyć, jak wyglądają wyniki dla użytkowników, którzy do tej pory wzięli udział w eksperymencie.

  1. W sekcji Zaangażowanie w menu nawigacyjnym konsoli Firebase kliknij Testowanie A/B .
  2. Kliknij opcję Uruchomione , a następnie kliknij lub wyszukaj tytuł eksperymentu. Na tej stronie możesz przeglądać różne obserwowane i modelowane statystyki dotyczące trwającego eksperymentu, w tym następujące:

    • % różnicy w stosunku do wartości bazowej : Miara poprawy metryki dla danego wariantu w porównaniu z wartością bazową. Obliczane poprzez porównanie zakresu wartości wariantu z zakresem wartości linii bazowej.
    • Prawdopodobieństwo przekroczenia wartości bazowej : szacowane prawdopodobieństwo, że dany wariant przekroczy wartość bazową w przypadku wybranej metryki.
    • observed_metric na użytkownika : na podstawie wyników eksperymentu jest to przewidywany zakres, w jakim wartość metryki będzie się mieścić w miarę upływu czasu.
    • Całkowita observed_metric : zaobserwowana skumulowana wartość linii bazowej lub wariantu. Wartość służy do pomiaru skuteczności każdego wariantu eksperymentu oraz do obliczania poprawy , zakresu wartości , prawdopodobieństwa przekroczenia wartości bazowej i prawdopodobieństwa bycia najlepszym wariantem . W zależności od mierzonych danych kolumna ta może mieć etykietę „Czas trwania na użytkownika”, „Przychody na użytkownika”, „Współczynnik utrzymania” lub „Współczynnik konwersji”.
  3. Po pewnym czasie trwania eksperymentu (co najmniej 7 dni w przypadku FCM i przesyłania wiadomości w aplikacji lub 14 dni w przypadku zdalnej konfiguracji) dane na tej stronie wskazują, który wariant (jeśli w ogóle) jest „liderem”. Niektórym pomiarom towarzyszy wykres słupkowy przedstawiający dane w formie wizualnej.

Przeprowadź eksperyment dla wszystkich użytkowników

Gdy eksperyment będzie trwał na tyle długo, że uzyskasz „lidera” lub zwycięski wariant wskaźnika celu, możesz udostępnić eksperyment 100% użytkowników. Dzięki temu możesz wybrać wariant do opublikowania dla wszystkich użytkowników w przyszłości. Nawet jeśli Twój eksperyment nie wyłonił wyraźnego zwycięzcy, nadal możesz udostępnić wariant wszystkim użytkownikom.

  1. W sekcji Zaangażowanie w menu nawigacyjnym konsoli Firebase kliknij Testowanie A/B .
  2. Kliknij opcję Zakończono lub Trwa , kliknij eksperyment, który chcesz udostępnić wszystkim użytkownikom, kliknij menu kontekstowe ( ) Wdróż wariant .
  3. Udostępnij eksperyment wszystkim użytkownikom, wykonując jedną z następujących czynności:

    • W przypadku eksperymentu wykorzystującego narzędzie do tworzenia powiadomień użyj okna dialogowego Udostępnij wiadomość , aby wysłać wiadomość do pozostałych docelowych użytkowników, którzy nie brali udziału w eksperymencie.
    • W przypadku eksperymentu Zdalnej konfiguracji wybierz wariant, aby określić, które wartości parametrów Zdalnej konfiguracji mają zostać zaktualizowane. Kryteria kierowania zdefiniowane podczas tworzenia eksperymentu są dodawane jako nowy warunek w szablonie, aby mieć pewność, że wdrożenie wpłynie tylko na użytkowników, na których jest ukierunkowany eksperyment. Po kliknięciu opcji Przejrzyj w aplikacji Remote Config w celu przejrzenia zmian kliknij opcję Opublikuj zmiany , aby zakończyć wdrażanie.
    • W przypadku eksperymentu z komunikatami w aplikacji użyj okna dialogowego, aby określić, który wariant należy wdrożyć jako samodzielną kampanię z komunikatem w aplikacji. Po wybraniu nastąpi przekierowanie do ekranu tworzenia FIAM, aby wprowadzić zmiany (jeśli są wymagane) przed publikacją.

Rozwiń eksperyment

Jeśli okaże się, że eksperyment nie przyciąga wystarczającej liczby użytkowników, aby testy A/B pozwoliły na wybranie lidera, możesz zwiększyć dystrybucję eksperymentu, aby dotrzeć do większego odsetka użytkowników aplikacji.

  1. W sekcji Zaangażowanie w menu nawigacyjnym konsoli Firebase kliknij Testowanie A/B .
  2. Wybierz działający eksperyment, który chcesz edytować.
  3. W przeglądzie eksperymentu kliknij menu kontekstowe ( ), a następnie kliknij opcję Edytuj trwający eksperyment .
  4. W oknie dialogowym Kierowanie wyświetlana jest opcja zwiększenia odsetka użytkowników biorących udział w trwającym eksperymencie. Wybierz liczbę większą niż bieżący procent i kliknij Opublikuj . Eksperyment zostanie przeniesiony do określonego odsetka użytkowników.

Duplikuj lub przerwij eksperyment

  1. W sekcji Zaangażowanie w menu nawigacyjnym konsoli Firebase kliknij Testowanie A/B .
  2. Kliknij opcję Zakończono lub Trwa , przytrzymaj wskaźnik nad eksperymentem, kliknij menu kontekstowe ( ), a następnie kliknij opcję Powiel eksperyment lub Zatrzymaj eksperyment .

Targetowanie użytkowników

Możesz kierować reklamy na użytkowników, których chcesz uwzględnić w eksperymencie, korzystając z następujących kryteriów kierowania na użytkowników.

Kryterium targetowania Operator(zy) Wartości Notatka
Wersja zawiera,
nie zawiera,
pasuje dokładnie,
zawiera wyrażenie regularne
Wpisz wartość dla jednej lub większej liczby wersji aplikacji, które chcesz uwzględnić w eksperymencie.

Jeśli używasz dowolnego operatora zawiera , nie zawiera lub pasuje dokładnie , możesz podać listę wartości oddzielonych przecinkami.

Korzystając z operatora wyrażenia regularnego zawiera , można tworzyć wyrażenia regularne w formacie RE2 . Twoje wyrażenie regularne może pasować do całości lub części ciągu znaków wersji docelowej. Możesz także użyć kotwic ^ i $ , aby dopasować początek, koniec lub całość ciągu docelowego.

Odbiorcy użytkowników obejmuje wszystkie,
obejmuje co najmniej jeden z,
nie obejmuje wszystkich,
nie obejmuje co najmniej jednego z
Wybierz co najmniej jedną grupę odbiorców Analytics, aby kierować reklamy na użytkowników, którzy mogą zostać uwzględnieni w eksperymencie. Gromadzenie danych w przypadku niektórych eksperymentów skierowanych do odbiorców Google Analytics może zająć kilka dni, ponieważ podlegają opóźnieniom w przetwarzaniu danych Analytics. Opóźnienie to najczęściej występuje w przypadku nowych użytkowników, którzy zazwyczaj są dodawani do kwalifikujących się grup odbiorców w ciągu 24–48 godzin od utworzenia, lub w przypadku niedawno utworzonych grup odbiorców .
Własność użytkownika Dla tekstu:
zawiera,
nie zawiera,
dokładnie pasuje,
zawiera wyrażenie regularne

Dla liczb:
<, ≤, =, ≥, >
Właściwość użytkownika Analytics służy do wybierania użytkowników, którzy mogą zostać objęci eksperymentem, i oferuje szereg opcji wyboru wartości właściwości użytkownika.

Na kliencie można ustawić tylko wartości ciągów dla właściwości użytkownika. W przypadku warunków korzystających z operatorów numerycznych usługa zdalnej konfiguracji konwertuje wartość odpowiedniej właściwości użytkownika na liczbę całkowitą/zmiennoprzecinkową.
Korzystając z operatora wyrażenia regularnego zawiera , można tworzyć wyrażenia regularne w formacie RE2 . Twoje wyrażenie regularne może pasować do całości lub części ciągu znaków wersji docelowej. Możesz także użyć kotwic ^ i $ , aby dopasować początek, koniec lub całość ciągu docelowego.
Kraj/region Nie dotyczy Co najmniej jeden kraj lub region użyty do wybrania użytkowników, którzy mogą zostać objęci eksperymentem.
Języki Nie dotyczy Co najmniej jeden język i ustawienia regionalne używane do wybierania użytkowników, którzy mogą zostać objęci eksperymentem.
Najpierw otwarte Więcej niż
Mniej niż
Między
Kieruj reklamy na użytkowników na podstawie pierwszego otwarcia aplikacji, podanego w dniach.
Ostatnie zaangażowanie w aplikację Więcej niż
Mniej niż
Między
Kieruj reklamy na użytkowników na podstawie ich ostatniego kontaktu z Twoją aplikacją, podanego w dniach.

Metryki testów A/B

Tworząc eksperyment, wybierasz metrykę podstawową, czyli cel , która służy do określenia zwycięskiego wariantu. Warto także śledzić inne dane, które pomogą Ci lepiej zrozumieć skuteczność każdego wariantu eksperymentu i śledzić ważne trendy, które mogą się różnić w przypadku każdego wariantu, takie jak utrzymanie użytkowników, stabilność aplikacji i przychody z zakupów w aplikacji. W eksperymencie możesz śledzić maksymalnie pięć wskaźników innych niż cele.

Załóżmy na przykład, że dodałeś do swojej aplikacji nowe zakupy w aplikacji i chcesz porównać skuteczność dwóch różnych wiadomości „szturchających”. W takim przypadku możesz zdecydować się na ustawienie przychodów z zakupów jako wskaźnika celu, ponieważ chcesz, aby zwycięski wariant reprezentował powiadomienie, które spowodowało najwyższy przychód z zakupów w aplikacji. A ponieważ chcesz także śledzić, który wariant zapewnił więcej przyszłych konwersji i utrzymał użytkowników, możesz dodać następujące elementy w sekcji Inne dane do śledzenia :

  • Szacunkowe całkowite przychody , aby sprawdzić, jak różnią się łączne przychody z zakupów w aplikacji i reklam w obu wariantach
  • Retencja (1 dzień) , Retencja (2-3 dni) , Retencja (4-7 dni) do śledzenia dziennego/tygodniowego utrzymania użytkownika

Poniższe tabele zawierają szczegółowe informacje na temat sposobu obliczania wskaźników celów i innych wskaźników.

Metryki celu

Metryczny Opis
Użytkownicy bez awarii Odsetek użytkowników, którzy nie napotkali błędów w Twojej aplikacji, wykrytych przez pakiet SDK Firebase Crashlytics podczas eksperymentu.
Szacowane przychody z reklam Szacunkowe zarobki z reklam.
Szacunkowe całkowite przychody Łączna wartość zakupu i szacunkowe przychody z reklam.
Przychody z zakupu Łączna wartość wszystkich zdarzeń purchase i in_app_purchase .
Retencja (1 dzień) Liczba użytkowników, którzy codziennie wracają do Twojej aplikacji.
Retencja (2-3 dni) Liczba użytkowników, którzy powrócą do Twojej aplikacji w ciągu 2-3 dni.
Retencja (4-7 dni) Liczba użytkowników, którzy powrócą do Twojej aplikacji w ciągu 4-7 dni.
Retencja (8-14 dni) Liczba użytkowników, którzy powrócą do Twojej aplikacji w ciągu 8-14 dni.
Przechowywanie (ponad 15 dni) Liczba użytkowników, którzy wracają do Twojej aplikacji 15 lub więcej dni od ostatniego użycia.
pierwsze_otwarte Zdarzenie Analytics uruchamiane, gdy użytkownik po raz pierwszy otworzy aplikację po jej zainstalowaniu lub ponownym zainstalowaniu. Używany jako część ścieżki konwersji.

Inne metryki

Metryczny Opis
powiadomienie_odrzucenie Zdarzenie Analytics wyzwalane w przypadku odrzucenia powiadomienia wysłanego przez narzędzie do tworzenia powiadomień (tylko na Androidzie).
powiadomienie_odbiór Zdarzenie Analytics uruchamiane po odebraniu powiadomienia wysłanego przez narzędzie do tworzenia powiadomień, gdy aplikacja działa w tle (tylko na Androidzie).
aktualizacja_os Zdarzenie Analytics śledzące aktualizację systemu operacyjnego urządzenia do nowej wersji. Aby dowiedzieć się więcej, zobacz Zdarzenia zbierane automatycznie .
widok_ekranu Zdarzenie Analytics śledzące ekrany wyświetlane w Twojej aplikacji. Aby dowiedzieć się więcej, zobacz Śledzenie wyświetleń ekranu .
początek_sesji Zdarzenie Analytics, które zlicza sesje użytkowników w Twojej aplikacji. Aby dowiedzieć się więcej, zobacz Zdarzenia zbierane automatycznie .

Eksport danych BigQuery

Oprócz przeglądania danych eksperymentów testów A/B w konsoli Firebase możesz sprawdzać i analizować dane eksperymentów w BigQuery. Chociaż testy A/B nie mają osobnej tabeli BigQuery, członkostwa w eksperymentach i wariantach są przechowywane w każdym zdarzeniu Google Analytics w tabelach zdarzeń Analytics.

Właściwości użytkownika zawierające informacje o eksperymencie mają postać userProperty.key like "firebase_exp_%" lub userProperty.key = "firebase_exp_01" , gdzie 01 to identyfikator eksperymentu, a userProperty.value.string_value zawiera indeks (liczony od zera) wariant eksperymentu.

Możesz użyć tych właściwości użytkownika eksperymentu, aby wyodrębnić dane eksperymentu. Daje to możliwość dzielenia wyników eksperymentu na wiele różnych sposobów i niezależnej weryfikacji wyników testów A/B.

Aby rozpocząć, wykonaj następujące czynności zgodnie z opisem w tym przewodniku:

  1. Włącz eksport BigQuery dla Google Analytics w konsoli Firebase
  2. Uzyskaj dostęp do danych testów A/B za pomocą BigQuery
  3. Przeglądaj przykładowe zapytania

Włącz eksport BigQuery dla Google Analytics w konsoli Firebase

Jeśli korzystasz z planu Spark, możesz korzystać z piaskownicy BigQuery , aby uzyskać dostęp do BigQuery bezpłatnie, z zastrzeżeniem ograniczeń Sandbox . Więcej informacji znajdziesz w artykule Cennik i piaskownica BigQuery .

Najpierw upewnij się, że eksportujesz dane Analytics do BigQuery:

  1. Otwórz zakładkę Integracje , do której dostęp uzyskasz poprzez > Ustawienia projektu w konsoli Firebase .
  2. Jeśli używasz już BigQuery z innymi usługami Firebase, kliknij Zarządzaj . W przeciwnym razie kliknij opcję Link .
  3. Przeczytaj artykuł Informacje o łączeniu Firebase z BigQuery , a następnie kliknij Dalej .
  4. W sekcji Konfiguruj integrację włącz przełącznik Google Analytics .
  5. Wybierz region i wybierz ustawienia eksportu.

  6. Kliknij opcję Link do BigQuery .

W zależności od wybranej metody eksportowania danych udostępnienie tabel może zająć nawet jeden dzień. Więcej informacji o eksportowaniu danych projektu do BigQuery znajdziesz w artykule Eksportowanie danych projektu do BigQuery .

Uzyskaj dostęp do danych testów A/B w BigQuery

Przed zapytaniem o dane do konkretnego eksperymentu warto uzyskać niektóre lub wszystkie z poniższych informacji, które można wykorzystać w zapytaniu:

  • Identyfikator eksperymentu: można go uzyskać z adresu URL strony przeglądu eksperymentu . Na przykład, jeśli Twój adres URL wygląda następująco https://console.firebase.google.com/project/my_firebase_project/config/experiment/results/25 , identyfikator eksperymentu to 25 .
  • Identyfikator usługi Google Analytics : To jest Twój 9-cyfrowy identyfikator usługi Google Analytics. Można to znaleźć w Google Analytics; pojawia się również w BigQuery, gdy rozwiniesz nazwę projektu, aby wyświetlić nazwę tabeli zdarzeń Google Analytics ( project_name.analytics_000000000.events ).
  • Data eksperymentu: aby utworzyć szybsze i wydajniejsze zapytanie, dobrą praktyką jest ograniczenie zapytań do partycji tabeli zdarzeń dziennych Google Analytics, które zawierają dane eksperymentu – tabel oznaczonych sufiksem YYYYMMDD . Jeśli więc eksperyment trwał od 2 lutego 2024 r. do 2 maja 2024 r., należy określić wartość _TABLE_SUFFIX between '20240202' AND '20240502' . Aby zapoznać się z przykładem, zobacz Wybieranie wartości konkretnego eksperymentu .
  • Nazwy zdarzeń: zazwyczaj odpowiadają one metrykom celu skonfigurowanym w eksperymencie. Na przykład zdarzenia in_app_purchase , ad_impression lub user_retention .

Po zebraniu informacji potrzebnych do wygenerowania zapytania:

  1. Otwórz BigQuery w konsoli Google Cloud.
  2. Wybierz swój projekt, a następnie wybierz opcję Utwórz zapytanie SQL .
  3. Dodaj swoje zapytanie. Przykładowe zapytania do uruchomienia znajdziesz w temacie Eksplorowanie przykładowych zapytań .
  4. Kliknij Uruchom .

Zapytaj o dane eksperymentu, korzystając z automatycznie wygenerowanego zapytania konsoli Firebase

Jeśli korzystasz z planu Blaze, na stronie Przegląd eksperymentu znajduje się przykładowe zapytanie, które zwraca nazwę eksperymentu, warianty, nazwy zdarzeń i liczbę zdarzeń dla przeglądanego eksperymentu.

Aby uzyskać i uruchomić automatycznie wygenerowane zapytanie:

  1. W konsoli Firebase otwórz Testowanie A/B i wybierz eksperyment Testowania A/B, do którego chcesz wysłać zapytanie, aby otworzyć Przegląd eksperymentu .
  2. W menu Opcje w obszarze Integracja z BigQuery wybierz Zapytanie o dane eksperymentu . Spowoduje to otwarcie Twojego projektu w BigQuery w konsoli konsoli Google Cloud i udostępnienie podstawowego zapytania, którego możesz użyć do wysyłania zapytań o dane eksperymentu.

Poniższy przykład przedstawia wygenerowane zapytanie dla eksperymentu z trzema wariantami (łącznie z wartością bazową) o nazwie „Eksperyment powitalny zimą”. Zwraca nazwę aktywnego eksperymentu, nazwę wariantu, unikalne zdarzenie i liczbę zdarzeń dla każdego zdarzenia. Należy pamiętać, że konstruktor zapytań nie określa nazwy projektu w nazwie tabeli, ponieważ otwiera się bezpośrednio w projekcie.

  /*
    This query is auto-generated by Firebase A/B Testing for your
    experiment "Winter welcome experiment".
    It demonstrates how you can get event counts for all Analytics
    events logged by each variant of this experiment's population.
  */
  SELECT
    'Winter welcome experiment' AS experimentName,
    CASE userProperty.value.string_value
      WHEN '0' THEN 'Baseline'
      WHEN '1' THEN 'Welcome message (1)'
      WHEN '2' THEN 'Welcome message (2)'
      END AS experimentVariant,
    event_name AS eventName,
    COUNT(*) AS count
  FROM
    `analytics_000000000.events_*`,
    UNNEST(user_properties) AS userProperty
  WHERE
    (_TABLE_SUFFIX BETWEEN '20240202' AND '20240502')
    AND userProperty.key = 'firebase_exp_25'
  GROUP BY
    experimentVariant, eventName

Aby zapoznać się z dodatkowymi przykładami zapytań, przejdź do Eksploruj przykładowe zapytania .

Przeglądaj przykładowe zapytania

W poniższych sekcjach przedstawiono przykłady zapytań, których można użyć do wyodrębnienia danych eksperymentu testu A/B z tabel zdarzeń Google Analytics.

Wyodrębnij wartości odchylenia standardowego zakupu i eksperymentu ze wszystkich eksperymentów

Dane z wyników eksperymentu możesz wykorzystać do niezależnej weryfikacji wyników testów A/B Firebase. Poniższa instrukcja BigQuery SQL wyodrębnia warianty eksperymentu, liczbę unikalnych użytkowników w każdym wariancie i sumuje łączne przychody ze zdarzeń in_app_purchase i ecommerce_purchase oraz odchylenia standardowe dla wszystkich eksperymentów w zakresie czasu określonym jako daty rozpoczęcia i zakończenia _TABLE_SUFFIX . Możesz użyć danych uzyskanych w wyniku tego zapytania za pomocą generatora istotności statystycznej do jednostronnych testów t, aby sprawdzić, czy wyniki dostarczone przez Firebase odpowiadają Twojej własnej analizie.

Aby uzyskać więcej informacji na temat sposobu, w jaki testowanie A/B oblicza wnioskowanie, zobacz temat Interpretowanie wyników testów .

  /*
    This query returns all experiment variants, number of unique users,
    the average USD spent per user, and the standard deviation for all
    experiments within the date range specified for _TABLE_SUFFIX.
  */
  SELECT
    experimentNumber,
    experimentVariant,
    COUNT(*) AS unique_users,
    AVG(usd_value) AS usd_value_per_user,
    STDDEV(usd_value) AS std_dev
  FROM
    (
      SELECT
        userProperty.key AS experimentNumber,
        userProperty.value.string_value AS experimentVariant,
        user_pseudo_id,
        SUM(
          CASE
            WHEN event_name IN ('in_app_purchase', 'ecommerce_purchase')
              THEN event_value_in_usd
            ELSE 0
            END) AS usd_value
      FROM `PROJECT_NAME.analytics_ANALYTICS_ID.events_*`
      CROSS JOIN UNNEST(user_properties) AS userProperty
      WHERE
        userProperty.key LIKE 'firebase_exp_%'
        AND event_name IN ('in_app_purchase', 'ecommerce_purchase')
        AND (_TABLE_SUFFIX BETWEEN 'YYYYMMDD' AND 'YYYMMDD')
      GROUP BY 1, 2, 3
    )
  GROUP BY 1, 2
  ORDER BY 1, 2;

Wybierz wartości konkretnego eksperymentu

Poniższe przykładowe zapytanie ilustruje sposób uzyskania danych do konkretnego eksperymentu w BigQuery. To przykładowe zapytanie zwraca nazwę eksperymentu, nazwy wariantów (w tym linię bazową), nazwy zdarzeń i liczbę zdarzeń.

  SELECT
    'EXPERIMENT_NAME' AS experimentName,
    CASE userProperty.value.string_value
      WHEN '0' THEN 'Baseline'
      WHEN '1' THEN 'VARIANT_1_NAME'
      WHEN '2' THEN 'VARIANT_2_NAME'
      END AS experimentVariant,
    event_name AS eventName,
    COUNT(*) AS count
  FROM
    `analytics_ANALYTICS_PROPERTY.events_*`,
    UNNEST(user_properties) AS userProperty
  WHERE
    (_TABLE_SUFFIX BETWEEN 'YYYMMDD' AND 'YYYMMDD')
    AND userProperty.key = 'firebase_exp_EXPERIMENT_NUMBER'
  GROUP BY
    experimentVariant, eventName