Firebase Remote Config-Tests mit A/B Testing erstellen

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

  • Die beste Möglichkeit, eine Funktion zu implementieren, um die Nutzerfreundlichkeit zu optimieren. Zu oft erfahren App-Entwickler erst, dass ihre Nutzer eine neue Funktion oder eine aktualisierte Benutzeroberfläche nicht mögen, wenn die Bewertung ihrer App im App Store sinkt. Mit A/B Testing können Sie herausfinden, ob Ihre Nutzer neue Varianten von Funktionen mögen oder ob sie die App so bevorzugen, wie sie ist. Wenn Sie die meisten Nutzer in einer Baseline-Gruppe belassen, können sie Ihre App außerdem weiterhin verwenden, ohne dass sich ihr Verhalten oder ihr Erscheinungsbild ändert, bis der Test abgeschlossen ist.
  • Die beste Möglichkeit, die Nutzerfreundlichkeit für ein Geschäftsziel zu optimieren. Manchmal implementieren Sie Produktänderungen, um einen Messwert wie Umsatz oder Kundenbindung zu maximieren. Mit A/B Testing legen Sie Ihr Geschäftsziel fest und Firebase führt die statistische Analyse durch, um zu ermitteln, ob eine Variante für das ausgewählte Ziel besser abschneidet als die Baseline.

So führen Sie einen A/B-Test von Featurevarianten mit einer Baseline durch:

  1. Test erstellen
  2. Verwalten Sie Ihren Test.

Test erstellen

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

  1. Prüfen Sie, ob Google Analytics in Ihrem Projekt aktiviert ist, damit der Test Zugriff auf Analytics-Daten hat.

    Wenn Sie Google Analytics beim Erstellen Ihres Projekts nicht aktiviert haben, können Sie es in der Firebase-Konsole auf dem Tab Einstellungen > Integrationen aktivieren.

  2. Rufen Sie in der Firebase Console DevOps & Engagement > A/B Testing auf.

  3. Klicken Sie auf Test erstellen und wählen Sie dann Remote Config aus, wenn Sie nach dem Dienst gefragt werden, mit dem Sie experimentieren möchten.

  4. Wählen Sie im Bereich Varianten eine Baseline und mindestens eine Variante für den Test aus. Sie können einen oder mehrere Parameter hinzufügen, mit denen Sie experimentieren möchten. Sie können diesen Schritt wiederholen, um Ihrem Test mehrere Parameter hinzuzufügen.

  5. Optional: Wenn Sie Ihrem Test mehr als eine Variante hinzufügen möchten, klicken Sie auf Weitere Variante hinzufügen.

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

  7. Maximieren Sie Variantengewichtungen, um die Variantengewichtung für den Test 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.

  8. Legen Sie die Targeting-Kriterien für Ihren Test mit Remote Config-Bedingungen fest:

    • Vorhandene Bedingung wiederverwenden: Wenn eine vorhandene Bedingung in Ihrer Remote Config-Vorlage bereits Ihrer Zielgruppe entspricht, wählen Sie sie aus der Liste aus.

    • Reihenfolge der Bedingungsauswertung prüfen: Achten Sie darauf, dass die Bedingungen auf der Seite Bedingungen in der richtigen Prioritätsreihenfolge angeordnet sind. Da Remote Config Bedingungen nacheinander von oben nach unten auswertet, können andere Bedingungen mit höherer Priorität verhindern, dass genügend Nutzer die mit Ihrem Test verknüpfte Bedingung erreichen.

    • Neue Bedingung erstellen: Wenn keine vorhandene Bedingung Ihren Targeting-Anforderungen entspricht oder Sie eine vorhandene Bedingung duplizieren möchten (z. B. um zu vermeiden, dass eine Bedingung gesperrt wird, die von anderen Parametern gemeinsam verwendet wird), erstellen Sie eine neue Bedingung. Wählen Sie dazu zuerst die App aus, die Ihren Test verwendet. Wenn der Parameter, den Sie testen, auch die vorhandene (oder eine andere sich überschneidende) Bedingung verwendet, muss die neue Testbedingung auf dem Tab Bedingungen über der vorhandenen Bedingung platziert werden, damit sie eine höhere Bewertungspriorität erhält. Andernfalls werden Nutzer zuerst der vorhandenen Bedingung zugeordnet und nicht in den Test einbezogen.

      Sie können dann eine bestimmte Teilmenge von Nutzern ansprechen, indem Sie auf und klicken und eine oder mehrere Optionen aus der folgenden Liste auswählen:

      • Version: Eine oder mehrere Versionen Ihrer App
      • Build-Nummer: Die Build-Nummer (Apple) oder der Versionscode (Android) Ihrer App.
      • Plattform: Eine oder mehrere Plattformen (iOS, Android oder Web) für das Targeting
      • Betriebssystem: Ausrichtung auf Web-App-Nutzer basierend auf ihrem Betriebssystem und ihrer Version
      • Browser: Ausrichtung auf Web-App-Nutzer basierend auf ihrem Webbrowser und ihrer Browserversion
      • Gerätekategorie: Sie können Web-App-Nutzer danach ansprechen, ob sie ein Mobilgerät oder ein anderes Gerät verwenden.
      • Sprachen: Eine oder mehrere Sprachen und Regionen, die verwendet werden, um Nutzer auszuwählen, die am Test teilnehmen können.
      • Land/Region: Wählen Sie mindestens ein Land oder eine Region aus, um Nutzer für den Test auszuwählen.
      • Nutzerzielgruppe: Analytics-Zielgruppen, die für das Targeting von Nutzern verwendet werden, die am Test teilnehmen könnten
      • Nutzereigenschaft: Eine oder mehrere Analytics-Nutzereigenschaften, um Nutzer auszuwählen, die am Test teilnehmen können
      • Nutzer in zufälligem Prozentwert: Ausrichtung auf einen zufällig ausgewählten Prozentsatz von Nutzern innerhalb eines definierten Perzentilbereichs
      • Importiertes Segment: Ausrichtung auf Nutzer, die zu benutzerdefinierten importierten Segmenten gehören, die in Ihr Projekt hochgeladen wurden
      • Datum/Uhrzeit: Ausrichtung auf Nutzer basierend auf einem bestimmten Datums- und Zeitfenster
      • Erstes Öffnen: Die Ausrichtung auf Nutzer basiert auf dem Zeitpunkt, zu dem sie Ihre App zum ersten Mal geöffnet haben.
      • Installations-ID: Sie können bestimmte Testgeräte oder Clientinstanzen anhand ihrer Firebase-Installations-IDs (FIDs) ansprechen.
      • Nutzer ist vorhanden: Ausrichtung auf alle Nutzer in allen Apps im Projekt
      • Benutzerdefiniertes Signal: Nutzer werden anhand von benutzerdefinierten clientseitigen Schlüssel/Wert-Signalen angesprochen, die zur Laufzeit übergeben werden.
  9. Legen Sie die Exposition 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 verteilen möchten. Dies kann ein beliebiger Prozentsatz zwischen 0 % und 100 % sein. Nutzer werden jedem Test, einschließlich duplizierter Tests, nach dem Zufallsprinzip zugewiesen.

  10. Optional können Sie ein Aktivierungsereignis festlegen, damit nur die Daten von Nutzern, die zuerst ein bestimmtes Analytics-Ereignis ausgelöst haben, in Ihrem Test berücksichtigt werden. Beachten Sie, dass alle Nutzer, die Ihren Targeting-Parametern entsprechen, Remote Config-Testwerte erhalten, aber nur diejenigen, die ein Aktivierungsereignis auslösen, in Ihre Testergebnisse einbezogen werden.

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

    • app_install
    • app_remove
    • app_update

    Das Analytics-Ereignis, das Sie als Aktivierungsereignis auswählen, darf nicht auch als primärer Messwert (oder als zusätzlicher Messwert) im selben Test verwendet werden. Andernfalls wird in der Firebase Console ein Validierungsfehler ausgelöst und der Test kann nicht gestartet werden.

  11. Wählen Sie für die Ziele des Tests den primären Messwert aus, den Sie erfassen möchten, und fügen Sie alle zusätzlichen Messwerte hinzu, die Sie aus der Liste erfassen möchten. Dazu gehören integrierte Ziele (Käufe, Umsatz, Bindung, absturzfreie Nutzer usw.), Analytics-Conversion-Ereignisse und andere Analytics-Ereignisse. Klicken Sie auf Weiter, wenn Sie fertig sind.

  12. Klicken Sie auf Speichern, um den Test zu speichern. Sie müssen die Vorlage veröffentlichen, um den Test zu starten.

Pro Projekt sind bis zu 300 Tests (einschließlich Roll-outs) zulässig. Davon können bis zu 24 Tests und Roll-outs aktiv sein, die restlichen müssen abgeschlossen sein.

Test verwalten

Wenn Sie einen Test mit Remote Config erstellen, können Sie ihn starten, während der Ausführung beobachten und die Anzahl der Nutzer erhöhen, die in den laufenden Test einbezogen werden.

Wenn der Test abgeschlossen ist, können Sie die Einstellungen der erfolgreichsten Variante notieren und dann für alle Nutzer übernehmen. Alternativ können Sie einen weiteren Test ausführen.

Test bearbeiten

  1. Klicken Sie im Navigationsmenü der Firebase-Konsole im Bereich DevOps & Engagement auf Remote Config.
  2. Klicken Sie auf den Tab A/B-Tests.
  3. Klicken Sie auf Aktiv und dann auf den Test, den Sie bearbeiten möchten.
  4. Klicken Sie auf das Kontextmenü () und dann auf Laufenden Test bearbeiten.
  5. Wenn Sie prüfen möchten, ob Ihre App Nutzer hat, die in den Test einbezogen werden würden, maximieren Sie die Details und sehen Sie im Bereich Targeting und Verteilung nach, ob dort eine Zahl größer als 0 % angezeigt wird, z. B. 1 % der Nutzer erfüllen die Kriterien.

Test beobachten

Wenn ein Test eine Weile läuft, können Sie sich den Fortschritt ansehen und die Ergebnisse für die Nutzer prüfen, die bisher am Test teilgenommen haben.

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

    • Prozentuale Abweichung von der Baseline: Ein Maß für die Verbesserung eines Messwerts für eine bestimmte Variante im Vergleich zur Baseline. 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 ursprüngliche Variante für den ausgewählten Messwert übertrifft.
    • observed_metric pro Nutzer: Basierend auf den Testergebnissen ist dies der vorhergesagte Bereich, in den der Messwert im Laufe der Zeit fallen wird.
    • observed_metric insgesamt: Der beobachtete kumulative Wert für die Baseline oder Variante. Der Wert wird verwendet, um die Leistung der einzelnen Testvarianten zu messen und die Verbesserung, den Wertebereich, die Wahrscheinlichkeit, die Baseline zu übertreffen und die Wahrscheinlichkeit, die beste Variante zu sein, zu berechnen. Je nach gemessenem Messwert kann diese Spalte die Bezeichnung „Dauer pro Nutzer“, „Umsatz pro Nutzer“, „Bindungsrate“ oder „Conversion-Rate“ haben.
  4. Nachdem der Test eine Weile gelaufen ist (14 Tage für Remote Config), wird auf dieser Seite angezeigt, welche Variante die „beste“ ist. Einige Messwerte werden von einem Balkendiagramm begleitet, das die Daten in einem visuellen Format darstellt.

Test für alle Nutzer einführen

Wenn ein Test lange genug gelaufen ist, um die beste Variante für den entsprechenden Zielmesswert zu ermitteln, 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 DevOps & Engagement auf Remote Config.
  2. Klicken Sie auf den Tab A/B-Tests.
  3. Klicken Sie auf Abgeschlossen oder Wird ausgeführt, dann auf einen Test, den Sie für alle Nutzer veröffentlichen möchten, und anschließend im Kontextmenü () auf Variante bereitstellen.
  4. So führen Sie den Test für alle Nutzer ein:
    • 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.

Test erweitern

Wenn Sie feststellen, dass ein Test nicht genügend Nutzer für A/B Testing generiert, um einen Gewinner zu ermitteln, können Sie die Verteilung Ihres Tests erhöhen, um einen größeren Prozentsatz der Nutzerbasis der App zu erreichen.

  1. Klicken Sie im Navigationsmenü der Firebase-Konsole im Bereich DevOps & Engagement auf Remote Config.
  2. Klicken Sie auf den Tab A/B-Tests.
  3. Wählen Sie den laufenden Test aus, den Sie bearbeiten möchten.
  4. Klicken Sie in der Testübersicht auf das Kontextmenü () und dann auf Laufenden Test bearbeiten.
  5. Im Dialogfeld Ausrichtung wird eine Option angezeigt, mit der Sie den Prozentsatz der Nutzer erhöhen können, die am laufenden Test teilnehmen. Wählen Sie einen Wert aus, der höher als der aktuelle Prozentsatz ist, und klicken Sie auf Veröffentlichen. Der Test wird für den von Ihnen angegebenen Prozentsatz der Nutzer bereitgestellt.

Test duplizieren

  1. Klicken Sie im Navigationsmenü der Firebase-Konsole im Bereich DevOps & Engagement auf Remote Config.
  2. Klicken Sie auf den Tab A/B-Tests.
  3. Wählen Sie den laufenden oder abgeschlossenen Test aus, den Sie beenden möchten.
  4. Klicken Sie auf Abgeschlossen oder Wird ausgeführt, halten Sie den Mauszeiger auf den Test, klicken Sie auf das Kontextmenü () und dann auf Test duplizieren oder Test beenden.

Test beenden

  1. Klicken Sie im Navigationsmenü der Firebase-Konsole im Bereich DevOps & Engagement auf Remote Config.
  2. Klicken Sie auf den Tab A/B-Tests.
  3. Wählen Sie den laufenden oder abgeschlossenen Test aus, den Sie beenden möchten.
  4. Klicken Sie auf Abgeschlossen oder Wird ausgeführt, halten Sie den Mauszeiger über den Test, klicken Sie auf das Kontextmenü () und dann auf Test beenden.

Webclient-Identifizierung und Testpersistenz

Wenn ein Nutzer eine Webanwendung mit Firebase A/B Testing zum ersten Mal in einem Browser startet, wird eine eindeutige Firebase-Installations-ID (FID) generiert. Diese FID wird dauerhaft in der IndexedDB des Browsers gespeichert, um die App-Instanz sitzungsübergreifend zu identifizieren.

Firebase A/B Testing verwendet die FID, um Nutzer Testvarianten zuzuweisen, und Google Analytics verwendet sie für die Ereignisaggregation, um das Nutzerverhalten innerhalb jeder Variante zu messen und zu analysieren.

Da die FID in IndexedDB gespeichert wird, behandelt Firebase A/B Testing einen Nutzer als neuen Nutzer, wenn er über einen anderen Browser oder ein Inkognitofenster auf Ihre App zugreift oder die IndexedDB seines Browsers löscht. Das bedeutet, dass ein Nutzer bei Verwendung verschiedener Browser oder Browsersitzungen in unterschiedliche Testvarianten einbezogen werden kann.

Nutzer-Targeting

Sie können die Nutzer, die in Ihren Test einbezogen werden sollen, mithilfe der folgenden Nutzer-Targeting-Kriterien auswählen.

Die folgenden Regeltypen werden in der Firebase-Konsole unterstützt. Entsprechende Funktionen sind in der Remote Config REST API verfügbar, wie in der Referenz zu bedingten Ausdrücken beschrieben.

Regeltyp Operator(en) Wert Hinweis
App == Wählen Sie eine App-ID aus der Liste der App-IDs für Apps aus, die mit Ihrem Firebase-Projekt verknüpft sind. Wenn Sie Firebase eine App hinzufügen, geben Sie eine Paket-ID oder einen Android-Paketnamen ein, der ein Attribut definiert, das in Remote Config-Regeln als App-ID angezeigt wird.

Verwenden Sie dieses Attribut so:
  • Für Apple-Plattformen: Verwenden Sie die CFBundleIdentifier der App. Sie finden die Bundle-ID in Xcode auf dem Tab Allgemein für das primäre Ziel Ihrer App.
  • Android: Verwenden Sie die applicationId der App. Sie finden die applicationId in der Datei build.gradle(.kts) auf App-Ebene.
App-Version Für Stringwerte:
stimmt genau überein,
enthält,
enthält nicht,
enthält regulären Ausdruck

Für numerische Werte:
<, <=, =, !=, >, >=

Geben Sie die Versionen Ihrer App an, auf die Sie die Kampagne ausrichten möchten.

Bevor Sie diese Regel verwenden, müssen Sie eine App-ID-Regel verwenden, um eine Android-/Apple-App auszuwählen, die mit Ihrem Firebase-Projekt verknüpft ist.

Apple-Plattformen: Verwenden Sie den CFBundleShortVersionString der App.

Hinweis: Achten Sie darauf, dass Ihre Apple-App die Firebase Apple-Plattformen SDK-Version 6.24.0 oder höher verwendet, da CFBundleShortVersionString in früheren Versionen nicht gesendet wird (siehe Versionshinweise).

Android: Verwenden Sie den versionName der App.

Hinweis: Numerische Vergleichsoperatoren (<, <=, =, !=, >, >=) unterstützen nur numerische semantische Versionen (z. B. 1.2.3). Sie unterstützen keine Suffixe oder Bindestriche für Vorabversionen (z. B. -beta oder -rc). Verwenden Sie für Versionsstrings mit nicht numerischen Suffixen oder Bindestrichen (z. B. 1.5-beta) stattdessen Stringoperatoren (z. B. enthält regulären Ausdruck, enthält oder stimmt genau überein).

Bei Stringvergleichen für diese Regel wird die Groß-/Kleinschreibung beachtet. Wenn Sie den Operator stimmt genau überein, enthält, enthält nicht oder enthält regulären Ausdruck verwenden, können Sie mehrere Werte auswählen.

Wenn Sie den Operator enthält regulären Ausdruck verwenden, können Sie reguläre Ausdrücke im RE2-Format erstellen. Ihr regulärer Ausdruck kann mit dem gesamten Zielversionsstring oder einem Teil davon übereinstimmen. Sie können auch die Anker ^ und $ verwenden, um den Anfang, das Ende oder den gesamten Zielstring abzugleichen.

Build-Nummer Für Stringwerte:
stimmt genau überein,
enthält,
enthält nicht,
regulärer Ausdruck

Für numerische Werte:
=, ≠, >, ≥, <, ≤

Geben Sie die Builds Ihrer App an, auf die Sie die Kampagne ausrichten möchten.

Bevor Sie diese Regel verwenden, müssen Sie eine App-ID-Regel verwenden, um eine Apple- oder Android-App auszuwählen, die mit Ihrem Firebase-Projekt verknüpft ist.

Dieser Operator ist nur für Apple- und Android-Apps verfügbar. Sie entspricht der CFBundleVersion der App für Apple und dem versionCode für Android. Bei Stringvergleichen für diese Regel wird die Groß-/Kleinschreibung beachtet.

Wenn Sie den Operator stimmt genau überein, enthält, enthält nicht oder enthält regulären Ausdruck verwenden, können Sie mehrere Werte auswählen.

Wenn Sie den Operator enthält regulären Ausdruck verwenden, können Sie reguläre Ausdrücke im RE2-Format erstellen. Ihr regulärer Ausdruck kann mit dem gesamten Zielversionsstring oder einem Teil davon übereinstimmen. Sie können auch die Anker ^ und $ verwenden, um den Anfang, das Ende oder den gesamten Zielstring abzugleichen.

Plattform == iOS
Android
Web
 
Betriebssystem ==

Geben Sie die Betriebssysteme an, auf die Sie die Ausrichtung vornehmen möchten.

Bevor Sie diese Regel verwenden, müssen Sie eine App-ID-Regel verwenden, um eine Web-App auszuwählen, die mit Ihrem Firebase-Projekt verknüpft ist.

Diese Regel wird für eine bestimmte Web-App-Instanz als true ausgewertet, wenn das Betriebssystem und seine Version mit einem Zielwert in der angegebenen Liste übereinstimmen.
Browser ==

Geben Sie die Browser an, auf die das Targeting ausgerichtet werden soll.

Bevor Sie diese Regel verwenden, müssen Sie eine App-ID-Regel verwenden, um eine Web-App auszuwählen, die mit Ihrem Firebase-Projekt verknüpft ist.

Diese Regel wird für eine bestimmte Web-App-Instanz als true ausgewertet, wenn der Browser und seine Version mit einem Zielwert in der angegebenen Liste übereinstimmen.
Gerätekategorie ist, ist nicht mobil Mit dieser Regel wird geprüft, ob das Gerät, über das auf Ihre Web-App zugegriffen wird, ein Mobilgerät oder ein anderes Gerät (Computer oder Konsole) ist. Dieser Regeltyp ist nur für Webanwendungen verfügbar.
Sprachen ist in Wählen Sie eine oder mehrere Sprachen aus. Diese Regel wird für eine bestimmte App-Instanz als true ausgewertet, wenn diese App-Instanz auf einem Gerät installiert ist, das eine der aufgeführten Sprachen verwendet.
Land/Region ist in Wählen Sie eine oder mehrere Regionen oder Länder aus. Diese Regel wird für eine bestimmte App-Instanz als true ausgewertet, wenn sich die Instanz in einer der aufgeführten Regionen oder einem der aufgeführten Länder befindet. Der Ländercode des Geräts wird anhand der IP-Adresse des Geräts in der Anfrage oder des von Google Analytics for Firebase ermittelten Ländercodes bestimmt (wenn Analytics-Daten mit Firebase geteilt werden).
Nutzerzielgruppe(n) Enthält mindestens eines Wählen Sie eine oder mehrere Zielgruppen aus einer Liste von Google Analytics Zielgruppen aus, die Sie für Ihr Projekt eingerichtet haben.

Für diese Regel ist eine App-ID-Regel erforderlich, um eine App auszuwählen, die mit Ihrem Firebase-Projekt verknüpft ist.

Hinweis: Da viele Analytics-Zielgruppen durch Ereignisse oder Nutzereigenschaften definiert werden, die auf den Aktionen von App-Nutzern basieren können, kann es einige Zeit dauern, bis eine Nutzer in Zielgruppe-Regel für eine bestimmte App-Instanz wirksam wird. Das bedeutet, dass ein Nutzer, der technisch gesehen die Voraussetzungen für eine Zielgruppe erfüllt, nicht der Bedingung entspricht, wenn Analytics den Nutzer noch nicht zur Zielgruppe hinzugefügt hat, wenn fetchAndActivate() ausgeführt wird.

Nutzereigenschaft Für Stringwerte:
enthält,
enthält nicht,
stimmt genau überein,
enthält regulären Ausdruck

Für numerische Werte:
=, ≠, >, ≥, <, ≤

Hinweis: Auf dem Client können Sie nur Stringwerte für Nutzereigenschaften festlegen. Bei Bedingungen, die numerische Operatoren verwenden, konvertiert Remote Config den Wert der entsprechenden Nutzereigenschaft in eine Ganzzahl/Gleitkommazahl.
Wählen Sie aus einer Liste der verfügbaren Google Analytics-Nutzereigenschaften aus. Informationen dazu, wie Sie Nutzereigenschaften verwenden können, um Ihre App für ganz bestimmte Segmente Ihrer Nutzerbasis anzupassen, finden Sie unter Remote Config und Nutzereigenschaften.

Weitere Informationen zu Nutzereigenschaften finden Sie in den folgenden Leitfäden:

Wenn Sie den Operator genau passend, enthält, enthält nicht oder enthält regulären Ausdruck verwenden, können Sie mehrere Werte auswählen.

Wenn Sie den Operator enthält regulären Ausdruck verwenden, können Sie reguläre Ausdrücke im RE2-Format erstellen. Ihr regulärer Ausdruck kann mit dem gesamten Zielversionsstring oder einem Teil davon übereinstimmen. Sie können auch die Anker ^ und $ verwenden, um den Anfang, das Ende oder den gesamten Zielstring abzugleichen.

Hinweis: Automatisch erfasste Nutzereigenschaften sind beim Erstellen von Remote Config-Bedingungen nicht verfügbar.
Nutzer in zufälligem Prozentwert Schieberegler (in der Firebase Console) Die REST API verwendet die Operatoren <=, > und between. 0–100

In diesem Feld können Sie eine Änderung auf eine zufällige Stichprobe von App-Instanzen anwenden (mit Stichprobengrößen von nur 0,0001 %). Verwenden Sie das Schieberegler-Widget, um zufällig gemischte Nutzer (App-Instanzen) in Gruppen zu segmentieren.

Jede App-Instanz wird gemäß einem in diesem Projekt definierten Seed dauerhaft einer zufälligen ganzen Zahl oder Bruchzahl zugeordnet.

Eine Regel verwendet den Standardschlüssel (in der Firebase-Konsole als Startwert bearbeiten angezeigt), sofern Sie den Startwert nicht ändern. Sie können eine Regel wieder auf den Standardschlüssel zurücksetzen, indem Sie das Feld Seed leeren.

Wenn Sie dieselben App-Instanzen innerhalb bestimmter Prozentbereiche konsistent ansprechen möchten, verwenden Sie für alle Bedingungen denselben Seed-Wert. Oder Sie wählen eine neue, zufällig zugewiesene Gruppe von App-Instanzen für einen bestimmten Prozentsatz aus, indem Sie einen neuen Seed angeben.

Wenn Sie beispielsweise zwei zusammenhängende Bedingungen erstellen möchten, die jeweils für 5 % der Nutzer einer App gelten, die sich nicht überschneiden, können Sie eine Bedingung so konfigurieren, dass sie einem Prozentsatz zwischen 0 % und 5 % entspricht, und eine andere Bedingung so, dass sie einem Bereich zwischen 5 % und 10 % entspricht. Wenn Sie zulassen möchten, dass einige Nutzer zufällig in beiden Gruppen erscheinen, verwenden Sie für die Regeln innerhalb der einzelnen Bedingungen unterschiedliche Startwerte.

Importiertes Segment ist in Wählen Sie ein oder mehrere importierte Segmente aus. Für diese Regel müssen benutzerdefinierte importierte Segmente eingerichtet werden.
Datum/Uhrzeit Vorher, Nachher Ein bestimmtes Datum und eine bestimmte Uhrzeit, entweder in der Zeitzone des Geräts oder in einer angegebenen Zeitzone, z. B. „(GMT+11) Sydney-Zeit“. Vergleicht die aktuelle Zeit mit der Abrufzeit des Geräts.
Erstes Öffnen Vorher, Nachher

Richten Sie sich an Nutzer, die Ihre App zum ersten Mal öffnen:

  • Wählen Sie Neue Nutzer aus, um die Ausrichtung auf Nutzer festzulegen, die Ihre App nach einem bestimmten Datum und einer bestimmten Uhrzeit in der Zukunft 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 von Ihnen angegebenen Uhrzeit zum ersten Mal öffnen. Kombinieren Sie die Bedingungen Vor und Nach, um Nutzer innerhalb eines bestimmten Zeitraums anzusprechen.

Die Ausrichtung auf Nutzer nach dem ersten Öffnen ist verfügbar, nachdem Sie eine Android-, iOS- oder Web-App ausgewählt haben.

Erfordert die folgenden SDKs:

  • Firebase SDK für Google Analytics
  • Apple-Plattformen-SDK ab Version 9.0.0 oder Android SDK ab Version 21.1.1 (Firebase BoM ab Version 30.3.0) und JavaScript SDK ab Version 12.8.0.

Analytics muss auch auf dem Client während des ersten Öffnungsereignisses aktiviert gewesen sein.

Installations-ID ist in Geben Sie eine oder mehrere Installations-IDs (bis zu 50) für das Targeting an. Diese Regel wird für eine bestimmte Installation als true ausgewertet, wenn die ID dieser Installation in der durch Kommas getrennten Liste der Werte enthalten ist.

Informationen zum Abrufen von Installations-IDs finden Sie unter Clientkennungen abrufen.
Nutzer existiert (kein Operator) Ausrichtung auf alle Nutzer aller Apps im aktuellen Projekt.

Verwenden Sie diese Bedingungsregel, um alle Nutzer im Projekt abzugleichen, unabhängig von App oder Plattform.

Benutzerdefiniertes Signal Für Stringwerte:
enthält,
enthält nicht,
stimmt genau überein,
enthält regulären Ausdruck

Für numerische Werte:
=, ≠, >, ≥, <, ≤

Für Versionswerte:
=, ≠, >, ≥, <, ≤

Bei Stringvergleichen für diese Regel wird die Groß-/Kleinschreibung beachtet. Wenn Sie die Operatoren „genau passend“, „enthält“, „enthält nicht“ oder „enthält regulären Ausdruck“ verwenden, können Sie mehrere Werte auswählen. Wenn Sie den Operator „enthält regulären Ausdruck“ verwenden, können Sie reguläre Ausdrücke im RE2-Format erstellen. Ihr regulärer Ausdruck kann mit dem gesamten Zielversionsstring oder einem Teil davon übereinstimmen. Sie können auch die Anker ^ und $ verwenden, um den Anfang, das Ende oder den gesamten Zielstring abzugleichen.

Die folgenden Datentypen werden für Clientumgebungen unterstützt:
  • iOS: int, double
  • Android: int, long, double
  • Web: Zahl

Zahl, die die Versionsnummer(n) darstellt, die übereinstimmen sollen (z. B. 2.1.0).

Weitere Informationen zu Bedingungen für benutzerdefinierte Signale und zu verwendenden bedingten Ausdrücken finden Sie unter Bedingungen für benutzerdefinierte Signale und Elemente zum Erstellen von Bedingungen.

A/B Testing Messwerte

Wenn Sie einen Test erstellen, wählen Sie einen primären Messwert oder einen Zielmesswert aus, mit dem die beste Variante ermittelt wird. Sie sollten auch andere Messwerte im Blick behalten, um die Leistung der einzelnen Testvarianten besser zu verstehen und wichtige Trends zu verfolgen, 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 in Ihrem Test bis zu fünf Messwerte erfassen, die keine Zielmesswerte sind.

Angenommen, Sie verwenden Remote Config, um zwei verschiedene Spielabläufe in Ihrer App zu starten, und möchten die In-App-Käufe und Werbeeinnahmen optimieren. Gleichzeitig möchten Sie aber auch die Stabilität und Nutzerbindung der einzelnen Varianten im Blick behalten. In diesem Fall können Sie Geschätzte Gesamteinnahmen als Zielmesswert auswählen, da er sowohl In-App-Kaufumsätze als auch Werbeeinnahmen umfasst. Unter Weitere zu erfassende Messwerte können Sie dann Folgendes hinzufügen:

  • Wenn Sie die tägliche und wöchentliche Nutzerbindung im Blick behalten möchten, fügen Sie Nutzerbindung (2–3 Tage) und Nutzerbindung (4–7 Tage) hinzu.
  • Wenn Sie die Stabilität der beiden Spielflüsse vergleichen möchten, fügen Sie Nutzer ohne Abstürze hinzu.
  • Wenn Sie detailliertere Ansichten der einzelnen Umsatztypen sehen möchten, fügen Sie Kaufumsatz und Geschätzter Werbeumsatz hinzu.

In den folgenden Tabellen finden Sie Details zur Berechnung von Zielmesswerten 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.

Hinweis: Firebase Crashlytics wird für Webanwendungen nicht unterstützt.

Geschätzter Werbeumsatz Geschätzte Werbeeinnahmen.
Geschätzte Gesamteinnahmen Kombinierter Wert für Käufe und geschätzte Werbeeinnahmen.
Umsatz aus Käufen Kombinierter Wert für alle purchase- und in_app_purchase-Ereignisse.
Nutzerbindung (1 Tag) Die Anzahl der Nutzer, die Ihre App täglich verwenden.
Kundenbindung (2–3 Tage) Die Anzahl der Nutzer, die innerhalb von 2–3 Tagen zu Ihrer App zurückkehren.
Kundenbindung (4–7 Tage) Die Anzahl der Nutzer, die innerhalb von 4–7 Tagen zu Ihrer App zurückkehren.
Kundenbindung (8–14 Tage) Die Anzahl der Nutzer, die innerhalb von 8–14 Tagen zu Ihrer App zurückkehren.
Nutzerbindung (15+ Tage) Die Anzahl der Nutzer, die mindestens 15 Tage nach der letzten Nutzung zu deiner App zurückkehren.
first_open Ein Analytics-Ereignis, das ausgelöst wird, wenn ein Nutzer eine App nach der Installation oder Neuinstallation zum ersten Mal öffnet. Wird als Teil eines Conversion-Trichters verwendet.

Weitere Messwerte

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

Dieser Messwert wird für Webanwendungen nicht unterstützt.

screen_view Ein Analytics-Ereignis, mit dem die in Ihrer App aufgerufenen Bildschirme erfasst werden. Weitere Informationen finden Sie unter Bildschirmaufrufe erfassen.
session_start Ein Analytics-Ereignis, das Nutzersitzungen in Ihrer App zählt. Weitere Informationen finden Sie unter Automatisch erfasste Ereignisse.

BigQuery-Datenexport

Sie können A/B Testing-Testdaten nicht nur in der Firebase Console ansehen, sondern auch in BigQuery prüfen und analysieren. A/B Testing hat zwar keine separate BigQuery-Tabelle, aber die Zugehörigkeit zu Tests und Varianten wird für jedes Google Analytics-Ereignis in den Analytics-Ereignistabellen gespeichert.

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

Mit diesen Nutzereigenschaften können Sie Testdaten extrahieren. So können Sie die 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 dieser Anleitung 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. Dabei gelten die Sandbox-Limits. Weitere Informationen finden Sie unter Preise und die BigQuery-Sandbox.

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

  1. Rufen Sie in der Firebase-Konsole den Tab Einstellungen > Integrationen auf.

  2. Klicken Sie auf der Karte BigQuery auf Verwalten und prüfen Sie, ob Ihr Projekt Analytics-Daten nach BigQuery exportiert.

    Wenn auf der Karte Verknüpfen steht, müssen Sie den Export einrichten (fahren Sie mit dem nächsten Schritt fort).

  3. Wenn Sie den Export einrichten müssen:

    1. Lesen Sie den Artikel Firebase mit BigQuery verknüpfen und klicken Sie dann auf Weiter.

    2. Aktivieren Sie im Abschnitt Integration konfigurieren die Option Google Analytics.

    3. Wählen Sie eine Region und die Exporteinstellungen aus.

    4. Klicken Sie auf Mit BigQuery verknüpfen.

Je nachdem, wie Sie die Daten exportieren, 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 einen bestimmten Test abfragen, sollten Sie einige oder alle der folgenden Informationen für Ihre Abfrage einholen:

  • Test-ID: Sie finden sie in der URL der Seite Testübersicht. Wenn Ihre URL beispielsweise https://console.firebase.google.com/project/my_firebase_project/config/experiment/results/25 lautet, ist die Test-ID 25.
  • Google Analytics-Property-ID: Ihre 9-stellige Google Analytics-Property-ID. Sie finden sie in 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) einzublenden.
  • Testdatum: Um eine schnellere und effizientere Abfrage zu erstellen, empfiehlt es sich, die Abfragen auf die Partitionen der täglichen Ereignistabelle Google Analytics zu beschränken, die Ihre Testdaten enthalten. Diese Tabellen sind mit dem Suffix YYYYMMDD gekennzeichnet. Wenn Ihr Test also vom 2. Februar 2026 bis zum 2. Mai 2026 lief, geben Sie _TABLE_SUFFIX between '20260202' AND '20260502' an. Ein Beispiel finden Sie unter Werte eines bestimmten Tests auswählen.
  • Ereignisnamen: Diese entsprechen in der Regel den Zielmesswerten, die Sie im Test konfiguriert haben. Beispiel: in_app_purchase-Ereignisse, ad_impression oder user_retention-Ereignisse.
.

Nachdem Sie die Informationen gesammelt haben, die Sie zum Erstellen Ihrer Abfrage benötigen:

  1. Rufen Sie in der Google Cloud-Console BigQuery auf.
  2. Wählen Sie Ihr Projekt und dann SQL-Abfrage erstellen aus.
  3. Fügen Sie Ihre Abfrage hinzu. Beispielabfragen 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 angezeigten Test zurückgibt.

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

  1. Rufen Sie in der Firebase-Konsole DevOps & Engagement > A/B Testing auf.
  2. Wählen Sie den A/B Testing-Test aus, den Sie abfragen möchten, um die Testübersicht zu öffnen.
  3. Wählen Sie im Optionsmenü 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.

Das folgende Beispiel zeigt eine generierte Abfrage für einen Test mit drei Varianten (einschließlich der Baseline) mit dem Namen „Winter welcome experiment“. Es werden der Name des aktiven Tests, der Name der Variante, das eindeutige Ereignis und die Ereignisanzahl für jedes Ereignis zurückgegeben. Beachten Sie, dass der Query Builder den Projektnamen nicht im Tabellennamen angibt, 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 '20260202' AND '20260502')
    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.

Kauf- und Teststandardabweichungswerte aus allen Tests extrahieren

Sie können die Testergebnisdaten verwenden, um die Ergebnisse vonFirebase A/B Testingunabhängig zu überprüfen. Mit der folgenden BigQuery-SQL-Anweisung werden Testvarianten, die Anzahl der einzelnen Nutzer in jeder Variante, die Summe der Gesamteinnahmen aus in_app_purchase- und ecommerce_purchase-Ereignissen sowie die Standardabweichungen für alle Tests innerhalb des Zeitraums extrahiert, der durch die _TABLE_SUFFIX-Start- und ‑Enddaten angegeben ist. 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 dazu, wie A/B Testing die Inferenz berechnet, 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 eines bestimmten Tests auswählen

Die folgende Beispielabfrage zeigt, wie Sie Daten für einen bestimmten Test in BigQuery abrufen. Diese Beispielabfrage gibt den Testnamen, die Variantennamen (einschließlich Baseline), die Ereignisnamen und die Ereignisanzahl zurück.

  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