Firebase Remote Config-Tests mit A/B Testing erstellen

Wenn Sie Firebase Remote Config verwenden, um Einstellungen für eine Anwendung mit einer aktiven Nutzerbasis bereitzustellen, sollten Sie darauf achten, dass alles richtig konfiguriert ist. Mit A/B Testing-Tests können Sie Folgendes am besten ermitteln:

  • Die beste Methode zum Implementieren einer Funktion zur Optimierung der Nutzerfreundlichkeit. Oft erfahren App-Entwickler erst dann, dass Nutzer eine neue Funktion oder eine aktualisierte Benutzeroberfläche nicht mögen, wenn die Bewertung ihrer App im App-Store sinkt. Mit A/B-Tests lässt sich herausfinden, ob Nutzer neue Varianten von Funktionen mögen oder die App in ihrer aktuellen Form bevorzugen. Außerdem können die meisten Ihrer Nutzer Ihre App weiterhin ohne Änderungen an Verhalten oder Darstellung nutzen, bis der Test abgeschlossen ist, da sie in der Baseline-Gruppe sind.
  • Die beste Möglichkeit, die Nutzerfreundlichkeit für ein Geschäftsziel zu optimieren. Manchmal nehmen Sie Produktänderungen vor, um einen Messwert wie Umsatz oder Kundenbindung zu maximieren. Bei A/B-Tests legen Sie Ihr Geschäftsziel fest. Firebase führt dann die statistische Analyse durch, um festzustellen, ob eine Variante die Baseline für das ausgewählte Ziel übertrifft.

So führen Sie A/B-Tests für Funktionsvarianten mit einer Baseline durch:

  1. Erstellen Sie einen Test.
  2. Testen Sie Ihr Experiment auf einem Testgerät.
  3. Test verwalten

Test erstellen

Mit einem Remote Config-Test können Sie mehrere Varianten für einen oder mehrere Remote Config-Parameter auswerten.

  1. Melden Sie sich in der Firebase-Konsole an und prüfen Sie, ob Google Analytics in Ihrem Projekt aktiviert ist, damit der Test auf Analytics-Daten zugreifen kann.

    Wenn Sie Google Analytics beim Erstellen des Projekts nicht aktiviert haben, können Sie es auf dem Tab Integrationen aktivieren. Sie können über > Projekteinstellungen in der Firebase-Konsole darauf zugreifen.

  2. Klicken Sie im Navigationsmenü der Firebase-Konsole im Bereich Interaktion auf A/B Testing.

  3. Klicken Sie auf Test erstellen und wählen Sie dann Remote Config aus, wenn Sie aufgefordert werden, den Dienst anzugeben, mit dem Sie einen Test durchführen möchten.

  4. Geben Sie einen Namen und eine optionale Beschreibung für den Test ein und klicken Sie auf Weiter.

  5. Füllen Sie die Felder unter Targeting aus. Wählen Sie zuerst die App aus, für die der Test verwendet wird. Sie können auch eine Teilmenge Ihrer Nutzer für die Teilnahme an Ihrem Test auswählen. Klicken Sie dazu auf und und wählen Sie Optionen aus der folgenden Liste aus:

    • Version:Eine oder mehrere Versionen Ihrer App
    • Build-Nummer:Der Versionscode der App
    • Sprachen:Eine oder mehrere Sprachen und Gebietsschemas, die zum Auswählen von Nutzern verwendet werden, die in den Test aufgenommen werden könnten
    • Land/Region:Wählen Sie mindestens ein Land oder eine Region aus, in dem bzw. der Nutzer für den Test ausgewählt werden sollen.
    • Nutzerzielgruppe:Analytics-Zielgruppen, die für das Targeting von Nutzern verwendet werden, die möglicherweise am Test teilnehmen
    • Nutzereigenschaft:Eine oder mehrere Analytics-Nutzereigenschaften zum Auswählen von Nutzern, die in den Test aufgenommen werden könnten
    • Erstes Öffnen:Sie können die Ausrichtung auf Nutzer basierend darauf vornehmen, wann sie Ihre App zum ersten Mal geöffnet haben.

      Das Nutzer-Targeting nach der ersten Öffnungszeit ist verfügbar, nachdem Sie eine Android- oder iOS-App ausgewählt haben. Es wird von den folgenden Remote Config SDK-Versionen unterstützt: Apple-Plattformen SDK v9.0.0+ und Android SDK v21.1.1+ (Firebase BoM v30.3.0+).

      Analytics muss auch auf dem Client während des ersten Open-Ereignisses aktiviert worden sein.

  6. Legen Sie den Prozentsatz der Zielnutzer fest:Geben Sie den Prozentsatz des Nutzerstamms Ihrer App ein, der die unter Zielnutzer festgelegten Kriterien erfüllt und den Sie gleichmäßig auf die Referenz und eine oder mehrere Varianten in Ihrem Test aufteilen möchten. Das kann ein beliebiger Prozentsatz zwischen 0,01% und 100 % sein. Nutzer werden zufällig den einzelnen Tests zugewiesen, auch wenn es sich um duplizierte Tests handelt.

  7. Optional können Sie ein Aktivierungsereignis festlegen, damit nur die Daten von Nutzern in Ihr Experiment einbezogen werden, die zuerst ein Analytics-Ereignis ausgelöst haben. Alle Nutzer, die Ihren Targeting-Parametern entsprechen, erhalten Remote Config Testwerte. In die Testergebnisse werden jedoch nur Nutzer einbezogen, die ein Aktivierungsereignis auslösen.

    Damit das Experiment gültig ist, muss das ausgewählte Ereignis nach der Aktivierung der abgerufenen Konfigurationswerte durch Ihre App eintreten. Außerdem können die folgenden Ereignisse nicht verwendet werden, da sie immer vor der Aktivierung abgerufener Werte auftreten:

    • app_install
    • app_remove
    • app_update
    • dynamic_link_first_open
  8. Wählen Sie für die Ziele des Tests den primären Messwert aus, der erfasst werden soll, und fügen Sie der Liste alle zusätzlichen Messwerte hinzu, die Sie erfassen möchten. Dazu gehören integrierte Zielvorhaben (Käufe, Umsatz, Kundenbindung, Nutzer ohne Abstürze usw.), Analytics-Conversion-Ereignisse und andere Analytics-Ereignisse. Klicken Sie auf Weiter, wenn Sie fertig sind.

  9. Wählen Sie im Bereich Varianten eine Baseline und mindestens eine Variante für den Test aus. Über die Liste Auswählen oder neu erstellen können Sie einen oder mehrere Parameter hinzufügen, die getestet werden sollen. Sie können einen Parameter erstellen, der noch nicht in der Firebase-Konsole verwendet wurde. Er muss jedoch in Ihrer App vorhanden sein, damit er eine Wirkung hat. Sie können diesen Schritt wiederholen, um dem Test mehrere Parameter hinzuzufügen.

  10. Optional: Wenn Sie Ihrem Test mehrere Varianten hinzufügen möchten, klicken Sie auf Weitere Variante hinzufügen.

  11. Ändern Sie einen oder mehrere Parameter für bestimmte Varianten. Alle unveränderten Parameter sind für Nutzer, die nicht am Test teilnehmen, gleich.

  12. Maximieren Sie Variantengewichtungen, um die Gewichtung von Varianten für das Experiment anzusehen oder zu ändern. Standardmäßig wird jede Variante gleich gewichtet. Hinweis: Ungleichmäßige Gewichtungen können dazu führen, dass die Datenerhebung länger dauert. Sobald der Test beginnt, lassen sich die Gewichtungen nicht mehr ändern.

  13. Klicken Sie auf Prüfen, um den Test zu speichern.

Sie können bis zu 300 Tests pro Projekt erstellen, davon maximal 24 aktive Tests. Die restlichen Tests können Entwürfe oder abgeschlossen sein.

Test auf einem Testgerät validieren

Für jede Firebase-Installation können Sie das zugehörige Authentifizierungstoken der Installation abrufen. Mit diesem Token können Sie bestimmte Testvarianten auf einem Testgerät testen, auf dem Ihre App installiert ist. So validieren Sie Ihren Test auf einem Testgerät:

  1. So rufen Sie das Installations-Auth-Token ab:

    Swift

    do {
      let result = try await Installations.installations()
        .authTokenForcingRefresh(true)
      print("Installation auth token: \(result.authToken)")
    } catch {
      print("Error fetching token: \(error)")
    }

    Objective-C

    [[FIRInstallations installations] authTokenForcingRefresh:true
                                                   completion:^(FIRInstallationsAuthTokenResult *result, NSError *error) {
      if (error != nil) {
        NSLog(@"Error fetching Installation token %@", error);
        return;
      }
      NSLog(@"Installation auth token: %@", [result authToken]);
    }];

    Java

    FirebaseInstallations.getInstance().getToken(/* forceRefresh */true)
            .addOnCompleteListener(new OnCompleteListener<InstallationTokenResult>() {
        @Override
        public void onComplete(@NonNull Task<InstallationTokenResult> task) {
            if (task.isSuccessful() && task.getResult() != null) {
                Log.d("Installations", "Installation auth token: " + task.getResult().getToken());
            } else {
                Log.e("Installations", "Unable to get Installation auth token");
            }
        }
    });

    Kotlin

    val forceRefresh = true
    FirebaseInstallations.getInstance().getToken(forceRefresh)
        .addOnCompleteListener { task ->
            if (task.isSuccessful) {
                Log.d("Installations", "Installation auth token: " + task.result?.token)
            } else {
                Log.e("Installations", "Unable to get Installation auth token")
            }
        }

    C++

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

    Einheit

    Firebase.Installations.FirebaseInstallations.DefaultInstance.GetTokenAsync(forceRefresh: true).ContinueWith(
      task => {
        if (!(task.IsCanceled || task.IsFaulted) && task.IsCompleted) {
          UnityEngine.Debug.Log(System.String.Format("Installations token {0}", task.Result));
        }
      });
  2. Klicken Sie in der Navigationsleiste der Firebase-Konsole auf A/B-Tests.
  3. Klicken Sie auf Entwurf (und/oder Wird ausgeführt für Remote Config-Tests), bewegen Sie den Mauszeiger auf den Test, klicken Sie auf das Kontextmenü () und dann auf Testgeräte verwalten.
  4. Geben Sie das Authentifizierungstoken der Installation für ein Testgerät ein und wählen Sie die Testvariante aus, die an dieses Testgerät gesendet werden soll.
  5. Führen Sie die App aus und prüfen Sie, ob die ausgewählte Variante auf dem Testgerät empfangen wird.

Weitere Informationen zu Firebase-Installationen

Test verwalten

Sie können Tests mit Remote Config, dem Benachrichtigungs-Composer oder Firebase In-App Messaging erstellen, validieren und starten. Außerdem können Sie laufende Tests im Blick behalten und die Anzahl der Nutzer erhöhen, die daran teilnehmen.

Wenn der Test abgeschlossen ist, können Sie sich die Einstellungen der erfolgreichsten Variante notieren und sie dann für alle Nutzer einführen. Alternativ können Sie einen anderen Test durchführen.

Test starten

  1. Klicken Sie im Navigationsmenü der Firebase-Konsole im Bereich Interaktion auf A/B Testing.
  2. Klicken Sie auf Entwurf und dann auf den Titel des Tests.
  3. Wenn Sie prüfen möchten, ob Ihre App Nutzer hat, die in Ihren Test einbezogen werden, maximieren Sie die Details des Testentwurfs und sehen Sie im Abschnitt Targeting und Verteilung nach, ob dort eine Zahl größer als 0% steht (z. B. 1% der Nutzer, die die Kriterien erfüllen).
  4. Wenn Sie den Test ändern möchten, klicken Sie auf Bearbeiten.
  5. Klicken Sie auf Test starten, um den Test zu starten. Pro Projekt können bis zu 24 Tests gleichzeitig durchgeführt werden.

Test beobachten

Nachdem ein Test eine Weile läuft, können Sie den Fortschritt und die bisherigen Ergebnisse für die Nutzer, die am Test teilgenommen haben, ansehen.

  1. Klicken Sie im Navigationsmenü der Firebase-Konsole im Bereich Interaktion auf A/B Testing.
  2. Klicken Sie auf Wird ausgeführt und dann auf den Titel Ihres Tests oder suchen Sie danach. Auf dieser Seite finden Sie verschiedene erfasste und geschätzte Statistiken zu Ihrem laufenden Test, darunter:

    • Abweichung von ursprünglicher Variante in%: Ein Maß für die Verbesserung eines Messwerts für eine bestimmte Variante im Vergleich zur ursprünglichen Variante. Wird berechnet, indem der Wertebereich für die Variante mit dem Wertebereich für die Baseline verglichen wird.
    • Wahrscheinlichkeit, die ursprüngliche Variante zu übertreffen: Die geschätzte Wahrscheinlichkeit, dass eine bestimmte Variante die Baseline für den ausgewählten Messwert übertrifft.
    • observed_metric pro Nutzer: Basierend auf den Testergebnissen ist dies der prognostizierte Bereich, in den der Messwert im Laufe der Zeit fallen wird.
    • Gesamt observed_metric: Der beobachtete kumulative Wert für die Baseline oder Variante. Der Wert wird verwendet, um die Leistung der einzelnen Testvarianten zu messen und Verbesserung, Wertebereich, Wahrscheinlichkeit, die Baseline zu übertreffen und Wahrscheinlichkeit, die beste Variante zu sein zu berechnen. Je nach gemessenem Messwert kann diese Spalte mit „Dauer pro Nutzer“, „Umsatz pro Nutzer“, „Bindungsrate“ oder „Conversion-Rate“ bezeichnet werden.
  3. Nachdem der Test eine Weile gelaufen ist (mindestens 7 Tage für FCM und In-App Messaging oder 14 Tage für Remote Config), sehen Sie auf dieser Seite, welche Variante, falls überhaupt, die „führende“ ist. Einige Messungen werden von einem Balkendiagramm begleitet, in dem die Daten visuell dargestellt werden.

Test für alle Nutzer einführen

Sobald Sie die beste Variante für den entsprechenden Zielmesswert ermittelt haben, können Sie den Test auf alle Nutzer ausweiten. So können Sie eine Variante auswählen, die ab sofort allen Nutzern präsentiert wird. Das ist auch dann möglich, wenn keine Variante die beste ist.

  1. Klicken Sie im Navigationsmenü der Firebase-Konsole im Bereich Interaktion auf A/B Testing.
  2. Klicken Sie auf Abgeschlossen oder Wird ausgeführt und dann auf einen Test, den Sie für alle Nutzer freigeben möchten. Klicken Sie auf das Kontextmenü () und dann auf Variante bereitstellen.
  3. Führen Sie den Test für alle Nutzer ein, indem Sie eine der folgenden Aktionen ausführen:

    • Wenn Sie einen Test mit dem Benachrichtigungs-Composer durchführen, verwenden Sie das Dialogfeld Nachricht bereitstellen, um die Nachricht an die übrigen Zielnutzer zu senden, die nicht am Test teilgenommen haben.
    • Wählen Sie für einen Remote Config-Test eine Variante aus, um zu bestimmen, welche Remote Config-Parameterwerte aktualisiert werden sollen. Die beim Erstellen des Tests definierten Targeting-Kriterien werden als neue Bedingung in Ihre Vorlage eingefügt, sodass die Variante nur für die Nutzer bereitgestellt wird, auf die der Test ausgerichtet ist. Klicken Sie auf In Remote Config überprüfen, um die Änderungen zu sehen. Klicken Sie zum Abschluss auf Änderungen veröffentlichen.
    • Bei einem In-App Messaging-Test können Sie im Dialogfeld festlegen, welche Variante als eigenständige In-App Messaging-Kampagne eingeführt werden soll. Nachdem Sie die Option ausgewählt haben, werden Sie zum Bildschirm zum Erstellen von FIAM weitergeleitet, um vor der Veröffentlichung gegebenenfalls Änderungen vorzunehmen.

Test erweitern

Wenn Sie feststellen, dass bei einem Test nicht genügend Nutzer erreicht werden, um einen Gewinner zu ermitteln, können Sie die Verteilung des Tests erhöhen, um einen größeren Prozentsatz der Nutzerbasis der App zu erreichen.A/B Testing

  1. Klicken Sie im Navigationsmenü der Firebase-Konsole im Bereich Interaktion auf A/B Testing.
  2. Wählen Sie den laufenden Test aus, den Sie bearbeiten möchten.
  3. Klicken Sie in der Testübersicht auf das Kontextmenü  und dann auf Laufenden Test bearbeiten.
  4. Im Dialogfeld Targeting wird eine Option angezeigt, mit der Sie den Prozentsatz der Nutzer erhöhen können, die am laufenden Test teilnehmen. Wählen Sie eine Zahl aus, die größer als der aktuelle Prozentsatz ist, und klicken Sie auf Veröffentlichen. Der Test wird für den von Ihnen angegebenen Prozentsatz der Nutzer eingeführt.

Test duplizieren oder beenden

  1. Klicken Sie im Navigationsmenü der Firebase-Konsole im Bereich Interaktion auf A/B Testing.
  2. Klicken Sie auf Abgeschlossen oder Wird ausgeführt, bewegen Sie den Mauszeiger auf den Test, klicken Sie auf das Kontextmenü  und dann auf Test duplizieren oder Test beenden.

Nutzertargeting

Sie können die Nutzer, die in Ihr Experiment aufgenommen werden sollen, anhand der folgenden Kriterien für die Ausrichtung auswählen.

Targeting-Kriterium Operator(en)    Wert(e) Hinweis
Version „enthält“,
„enthält nicht“,
„stimmt genau überein“,
„enthält Regex“
Geben Sie einen Wert für eine oder mehrere App-Versionen ein, die Sie in den Test einbeziehen möchten.

Wenn Sie einen der Operatoren enthält, enthält nicht oder entspricht genau verwenden, können Sie eine durch Kommas getrennte Liste von Werten angeben.

Wenn Sie den Operator contains regex verwenden, können Sie reguläre Ausdrücke im RE2-Format erstellen. Ihr regulärer Ausdruck kann mit dem gesamten oder einem Teil des Zielversionsstrings übereinstimmen. Sie können auch die Anker ^ und $ verwenden, um den Anfang, das Ende oder die Gesamtheit eines Zielstrings abzugleichen.

Nutzerzielgruppe(n) „beinhaltet alle von“, „beinhaltet mindestens eines von“, „beinhaltet nicht alle von“, „beinhaltet nicht mindestens eines von“


Wählen Sie mindestens eine Analytics-Zielgruppe aus, um Nutzer anzusprechen, die möglicherweise in Ihren Test einbezogen werden. Bei einigen Tests, die auf Google Analytics-Zielgruppen ausgerichtet sind, kann es einige Tage dauern, bis Daten erfasst werden, da sie der Analytics Latenz bei der Datenverarbeitung unterliegen. Diese Verzögerung tritt am wahrscheinlichsten bei neuen Nutzern auf, die in der Regel 24 bis 48 Stunden nach der Erstellung in infrage kommende Zielgruppen aufgenommen werden, oder bei kürzlich erstellten Zielgruppen.

Für Remote Config bedeutet das, dass ein Nutzer auch dann nicht in das Experiment aufgenommen wird, wenn er technisch gesehen für eine Zielgruppe infrage kommt, wenn Analytics den Nutzer noch nicht der Zielgruppe hinzugefügt hat, wenn `fetchAndActivate()` ausgeführt wird.

Nutzereigenschaft Für Text:
enthält,
enthält nicht,
entspricht genau,
enthält regulären Ausdruck

Für Zahlen:
<, ≤, =, ≥, >
Mit einer Analytics-Nutzer-Property werden Nutzer ausgewählt, die in einen Test einbezogen werden können. Dazu stehen verschiedene Optionen zur Auswahl von Nutzer-Property-Werten zur Verfügung.

Im Client können Sie nur Stringwerte für Nutzereigenschaften festlegen. Bei Bedingungen, für die numerische Operatoren verwendet werden, wandelt der Remote Config-Dienst den Wert der entsprechenden Nutzereigenschaft in eine Ganzzahl oder Gleitkommazahl um.
Wenn Sie den Operator contains regex verwenden, können Sie reguläre Ausdrücke im RE2-Format erstellen. Ihr regulärer Ausdruck kann mit dem gesamten oder einem Teil des Zielversionsstrings übereinstimmen. Sie können auch die Anker ^ und $ verwenden, um den Anfang, das Ende oder die Gesamtheit eines Zielstrings abzugleichen.
Land/Region Mindestens ein Land oder eine Region, die zum Auswählen von Nutzern verwendet werden, die in den Test einbezogen werden könnten.  
Sprachen Eine oder mehrere Sprachen und Gebiete, die zum Auswählen von Nutzern verwendet werden, die in den Test aufgenommen werden könnten.  
Erstes Öffnen Vorher
Nachher

So richten Sie Ihre Anzeigen auf Nutzer aus, die Ihre App zum ersten Mal öffnen:

  • Wählen Sie Neue Nutzer aus, um Nutzer anzusprechen, die Ihre App nach einem bestimmten zukünftigen Datum und einer bestimmten zukünftigen Uhrzeit zum ersten Mal öffnen.
  • Wählen Sie Zeitraum aus, um Nutzer anzusprechen, die Ihre App innerhalb des Zeitraums vor oder nach dem von Ihnen angegebenen Datum und der Uhrzeit zum ersten Mal öffnen. Kombinieren Sie die Bedingungen Vor und Nach, um Nutzer in einem bestimmten Zeitraum anzusprechen.

Das Nutzer-Targeting nach der ersten Öffnung ist verfügbar, nachdem Sie eine Android- oder iOS-App ausgewählt haben. Es wird derzeit von den folgenden Remote Config SDK-Versionen unterstützt: Apple-Plattformen SDK 9.0.0+ und Android SDK 21.1.1+ (Firebase BoM 30.3.0+).

Analytics muss auch auf dem Client während des Ereignisses „Erstes Öffnen“ aktiviert worden sein.

A/B Testing Messwerte

Wenn Sie einen Test erstellen, wählen Sie einen primären Messwert oder Zielmesswert aus, anhand dessen die beste Variante ermittelt wird. Sie sollten auch andere Messwerte erfassen, um die Leistung der einzelnen Testvarianten besser nachvollziehen und wichtige Trends beobachten zu können, die sich für jede Variante unterscheiden können, z. B. Nutzerbindung, App-Stabilität und Umsatz aus In-App-Käufen. Sie können bis zu fünf Messwerte, die nicht zum Zielvorhaben gehören, in Ihrem Test erfassen.

Angenommen, Sie verwenden Remote Config, um zwei verschiedene Spielabläufe in Ihrer App zu starten, und möchten In-App-Käufe und Werbeeinnahmen optimieren. Außerdem möchten Sie die Stabilität und Nutzerbindung der einzelnen Varianten erfassen. In diesem Fall sollten Sie Geschätzter Gesamtumsatz als Zielmesswert auswählen, da er den Umsatz aus In-App-Käufen und den Anzeigenumsatz umfasst. Für Weitere zu verfolgende Messwerte können Sie Folgendes hinzufügen:

  • Wenn Sie die tägliche und wöchentliche Nutzerbindung erfassen möchten, fügen Sie Kundenbindung (2–3 Tage) und Kundenbindung (4–7 Tage) hinzu.
  • Wenn Sie die Stabilität der beiden Spielabläufe vergleichen möchten, fügen Sie Nutzer ohne Abstürze hinzu.
  • Wenn Sie detailliertere Ansichten der einzelnen Umsatztypen sehen möchten, fügen Sie Umsatz aus Käufen und Geschätzter Anzeigenumsatz hinzu.

In den folgenden Tabellen finden Sie Details zur Berechnung von Zielvorhabenmesswerten und anderen Messwerten.

Messwerte zu Zielvorhaben

Messwert Beschreibung
Nutzer ohne Abstürze Der Prozentsatz der Nutzer, bei denen während des Tests keine Fehler in Ihrer App aufgetreten sind, die vom Firebase Crashlytics SDK erkannt wurden.
Geschätzter Werbeumsatz Geschätzte Einnahmen aus Anzeigen.
Geschätzter Gesamtumsatz Kombinierter Wert für Umsatz aus Käufen und geschätzte Werbeeinnahmen.
Umsatz aus Käufen Der Gesamtwert für alle purchase- und in_app_purchase-Ereignisse.
Nutzerbindung (1 Tag) Die Anzahl der Nutzer, die täglich zu Ihrer App zurückkehren.
Kundenbindung (2–3 Tage) Die Anzahl der Nutzer, die innerhalb von 2 bis 3 Tagen zu Ihrer App zurückkehren.
Kundenbindung (4–7 Tage) Die Anzahl der Nutzer, die innerhalb von 4 bis 7 Tagen zu Ihrer App zurückkehren.
Kundenbindung (8–14 Tage) Die Anzahl der Nutzer, die innerhalb von 8 bis 14 Tagen zu Ihrer App zurückkehren.
Nutzerbindung (15+ Tage) Die Anzahl der Nutzer, die 15 oder mehr Tage nach der letzten Nutzung zu Ihrer App zurückkehren.
first_open Ein Analytics-Ereignis, das ausgelöst wird, wenn ein Nutzer eine App zum ersten Mal nach der Installation oder Neuinstallation öffnet. Wird als Teil eines Conversion-Trichters verwendet.

Weitere Messwerte

Messwert Beschreibung
notification_dismiss Ein Analytics-Ereignis, das ausgelöst wird, wenn eine vom Benachrichtigungs-Composer gesendete Benachrichtigung geschlossen wird (nur Android).
notification_receive Ein Analytics-Ereignis, das ausgelöst wird, wenn eine vom Benachrichtigungs-Composer gesendete Benachrichtigung empfangen wird, während die App im Hintergrund ausgeführt wird (nur Android).
os_update Ein Analytics-Ereignis, das erfasst, wenn das Betriebssystem des Geräts auf eine neue Version aktualisiert wird.Weitere Informationen finden Sie unter Automatisch erfasste Ereignisse.
screen_view Ein Analytics-Ereignis, mit dem die in Ihrer App aufgerufenen Bildschirme erfasst werden. Weitere Informationen
session_start Ein Analytics-Ereignis, mit dem Nutzersitzungen in Ihrer App gezählt werden. Weitere Informationen

BigQuery-Datenexport

Neben der Anzeige von A/B Testing-Testdaten in der Firebase-Konsole können Sie Testdaten auch in BigQuery untersuchen und analysieren. Für A/B Testing gibt es keine separate BigQuery-Tabelle. Die Zugehörigkeit zu Tests und Varianten wird jedoch für jedes Google Analytics-Ereignis in den Analytics-Ereignistabellen gespeichert.

Die Nutzerattribute, die Testinformationen enthalten, haben die Form userProperty.key like "firebase_exp_%" oder userProperty.key = "firebase_exp_01", wobei 01 die Test-ID und userProperty.value.string_value den (nullbasierten) Index der Testvariante enthält.

Mit diesen Nutzereigenschaften für Tests lassen sich Testdaten extrahieren. So können Sie Ihre Testergebnisse auf viele verschiedene Arten aufschlüsseln und die Ergebnisse von A/B Testing unabhängig überprüfen.

Führen Sie zuerst die folgenden Schritte aus, wie in diesem Leitfaden beschrieben:

  1. BigQuery-Export für Google Analytics in der Firebase Console aktivieren
  2. Mit BigQuery auf A/B Testing-Daten zugreifen
  3. Beispielabfragen ansehen

BigQuery-Export für Google Analytics in der Firebase Console aktivieren

Wenn Sie den Spark-Tarif nutzen, können Sie die BigQuery-Sandbox verwenden, um kostenlos auf BigQuery zuzugreifen. Es gelten die Sandbox-Beschränkungen. Weitere Informationen finden Sie unter Preise und die BigQuery-Sandbox.

Prüfen Sie zuerst, ob Sie Ihre Analytics-Daten nach BigQuery exportieren:

  1. Öffnen Sie den Tab Integrationen, den Sie in der Firebase-Konsole über  > Projekteinstellungen aufrufen können.
  2. Wenn Sie BigQuery bereits mit anderen Firebase-Diensten verwenden, klicken Sie auf Verwalten. Klicken Sie andernfalls auf Verknüpfen.
  3. Lesen Sie den Abschnitt Firebase mit BigQuery verknüpfen und klicken Sie dann auf Weiter.
  4. Aktivieren Sie im Abschnitt Integration konfigurieren den Schalter Google Analytics.
  5. Wählen Sie eine Region und Exporteinstellungen aus.

  6. Klicken Sie auf Mit BigQuery verknüpfen.

Je nachdem, wie Sie Daten exportiert haben, kann es bis zu einem Tag dauern, bis die Tabellen verfügbar sind. Weitere Informationen zum Exportieren von Projektdaten nach BigQuery finden Sie unter Projektdaten nach BigQuery exportieren.

Auf A/B Testing-Daten in BigQuery zugreifen

Bevor Sie Daten für ein bestimmtes Experiment abfragen, sollten Sie einige oder alle der folgenden Informationen für Ihre Abfrage abrufen:

  • Test-ID:Sie finden sie in der URL der Seite Testübersicht. Wenn Ihre URL beispielsweise so aussieht: https://console.firebase.google.com/project/my_firebase_project/config/experiment/results/25, ist die Test-ID 25.
  • Property-ID Google Analytics: Das ist Ihre 9-stellige Property-ID Google Analytics. Sie finden sie unter Google Analytics. Sie wird auch in BigQuery angezeigt, wenn Sie den Projektnamen maximieren, um den Namen der Google Analytics-Ereignistabelle (project_name.analytics_000000000.events) aufzurufen.
  • Testdatum:Um eine schnellere und effizientere Abfrage zu erstellen, sollten Sie Ihre Abfragen auf die Google Analytics-Partitionen der täglichen Ereignistabelle beschränken, die Ihre Testdaten enthalten. Diese Tabellen sind durch das Suffix YYYYMMDD gekennzeichnet. Wenn Ihr Test also vom 2. Februar 2024 bis zum 2. Mai 2024 ausgeführt wurde, geben Sie _TABLE_SUFFIX between '20240202' AND '20240502' an. Ein Beispiel finden Sie unter Werte für ein bestimmtes Experiment auswählen.
  • Ereignisnamen:In der Regel entsprechen diese den Zielvorhabenmesswerten, die Sie im Test konfiguriert haben. Beispiele: in_app_purchase-Ereignisse, ad_impression-Ereignisse oder user_retention-Ereignisse.
Firebase

Nachdem Sie die Informationen zusammengetragen haben, die Sie zum Generieren der Anfrage benötigen:

  1. Öffnen Sie BigQuery in der Google Cloud-Konsole.
  2. Wählen Sie Ihr Projekt und dann SQL-Abfrage erstellen aus.
  3. Geben Sie Ihre Frage ein. Beispielabfragen, die Sie ausführen können, finden Sie unter Beispielabfragen ansehen.
  4. Klicken Sie auf Ausführen.

Testdaten mit der automatisch generierten Abfrage der Firebase Console abfragen

Wenn Sie den Blaze-Tarif verwenden, finden Sie auf der Seite Testübersicht eine Beispielabfrage, die den Testnamen, die Varianten, die Ereignisnamen und die Anzahl der Ereignisse für den Test zurückgibt, den Sie sich ansehen.

So rufen Sie die automatisch generierte Abfrage ab und führen sie aus:

  1. Öffnen Sie in der Firebase-Konsole A/B Testing und wählen Sie den A/B Testing-Test aus, den Sie abfragen möchten, um die Testübersicht zu öffnen.
  2. Wählen Sie im Menü „Optionen“ unter BigQuery-Integration die Option Testdaten abfragen aus. Dadurch wird Ihr Projekt in BigQuery in der Google Cloud-Konsole geöffnet und eine einfache Abfrage bereitgestellt, mit der Sie Ihre Testdaten abfragen können.

Im folgenden Beispiel sehen Sie eine generierte Abfrage für einen Test mit drei Varianten (einschließlich der Baseline) mit dem Namen „Winter-Willkommen-Test“. Es werden der Name des aktiven Tests, der Name der Variante, das eindeutige Ereignis und die Ereignisanzahl für jedes Ereignis zurückgegeben. Im Query Builder wird Ihr Projektname nicht im Tabellennamen angegeben, da er direkt in Ihrem Projekt geöffnet wird.

  /*
    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

Weitere Abfragebeispiele finden Sie unter Beispielabfragen ansehen.

Beispielabfragen ansehen

In den folgenden Abschnitten finden Sie Beispiele für Abfragen, mit denen Sie A/B Testing-Testdaten aus Google Analytics-Ereignistabellen extrahieren können.

Standardabweichungswerte für Käufe und Tests aus allen Tests extrahieren

Sie können die Daten aus Testergebnissen verwenden, um die Firebase A/B Testing-Ergebnisse unabhängig zu überprüfen. Mit der folgenden BigQuery-SQL-Anweisung werden die Testvarianten, die Anzahl der einzelnen Nutzer in jeder Variante und der Gesamtumsatz aus in_app_purchase- und ecommerce_purchase-Ereignissen sowie die Standardabweichungen für alle Tests im Zeitraum, der als _TABLE_SUFFIX-Start- und ‑Enddatum angegeben ist, extrahiert. Sie können die Daten aus dieser Abfrage mit einem Generator für statistische Signifikanz für einseitige t-Tests verwenden, um zu prüfen, ob die von Firebase bereitgestellten Ergebnisse mit Ihrer eigenen Analyse übereinstimmen.

Weitere Informationen zur Berechnung von Inferenz durch A/B Testing finden Sie unter Testergebnisse interpretieren.

  /*
    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;

Werte für einen bestimmten Test auswählen

Die folgende Beispielabfrage zeigt, wie Sie Daten für einen bestimmten Test in BigQuery abrufen. Mit dieser Beispielabfrage werden der Testname, die Variantennamen (einschließlich „Baseline“), die Ereignisnamen und die Ereigniszahlen zurückgegeben.

  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