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 ein aktualisiertes Nutzererlebnis nicht mögen, wenn die Bewertung ihrer App im App-Store sinkt. A/B Testing kann Ihnen helfen, herauszufinden, ob Ihre Nutzer neue Varianten von Funktionen mögen oder ob sie die App in ihrer aktuellen Form bevorzugen. Außerdem können die meisten Nutzer Ihre App weiterhin ohne Änderungen am Verhalten oder Aussehen nutzen, bis der Test abgeschlossen ist, da die meisten Nutzer in einer 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. Mit A/B Testing legen Sie Ihr Geschäftsziel fest. Firebase führt dann die statistische Analyse durch, um zu ermitteln, 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:
- Erstellen Sie einen Test.
- Test verwalten
Test erstellen
Mit einem Remote Config-Test können Sie mehrere Varianten für einen oder mehrere Remote Config-Parameter auswerten.
Prüfen Sie, ob Google Analytics in Ihrem Projekt aktiviert ist, damit das Experiment auf Analytics-Daten zugreifen kann.
Wenn Sie Google Analytics beim Erstellen Ihres Projekts nicht aktiviert haben, können Sie es in der Firebase-Konsole unter
Einstellungen > Integrationen aktivieren.Rufen Sie in der Firebase Console DevOps & Engagement > A/B Testing auf.
Klicken Sie auf Test erstellen und wählen Sie dann Remote Config aus, wenn Sie aufgefordert werden, den Dienst anzugeben, den Sie testen möchten.
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 dem Test mehrere Parameter hinzuzufügen.
Optional: Wenn Sie Ihrem Test mehrere Varianten hinzufügen möchten, klicken Sie auf Weitere Variante hinzufügen.
Ändern Sie einen oder mehrere Parameter für bestimmte Varianten. Alle unveränderten Parameter sind für Nutzer, die nicht am Test teilnehmen, gleich.
Maximieren Sie Variantengewichtungen, um das Variantengewicht 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.
Definieren Sie die Targeting-Kriterien für Ihren Test mit Remote Config-Bedingungen:
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 Bedingungsbewertung prüfen:Achten Sie darauf, dass die Bedingungen auf der Seite Bedingungen in der richtigen Prioritätsreihenfolge angeordnet sind. Da Remote Config Bedingungen sequenziell von oben nach unten auswertet, kann es sein, dass andere Bedingungen mit höherer Priorität verhindern, dass genügend Nutzer die Bedingung erreichen, die mit Ihrem Test verknüpft ist.
Neue Bedingung erstellen:Wenn keine vorhandene Bedingung Ihren Targeting-Anforderungen entspricht oder Sie eine vorhandene Bedingung lieber duplizieren möchten (z. B. wenn Sie eine Bedingung nicht verwenden möchten, die bereits von anderen Parametern verwendet wird), erstellen Sie eine neue Bedingung, indem Sie zuerst die App auswählen, in der Ihr Test verwendet wird. Wenn Sie eine separate oder doppelte Bedingung für einen Test erstellen, muss die neue Bedingung eine höhere Priorität als die vorhandene Bedingung haben. Andernfalls werden Nutzer zuerst der vorhandenen Bedingung zugeordnet und es werden keine Nutzer in den Test aufgenommen.
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 Zielplattformen (iOS, Android oder Web)
- Betriebssystem:Ausrichtung auf Web-App-Nutzer basierend auf ihrem Betriebssystem und ihrer Version
- Browser:Sie können ein Targeting auf Web-App-Nutzer basierend auf ihrem Webbrowser und ihrer Browserversion vornehmen.
- Gerätekategorie:Sie können Nutzer von Web-Apps danach ansprechen, ob ihr Gerät mobil oder nicht mobil ist.
- Sprachen:Eine oder mehrere Sprachen und Gebietsschemas, die verwendet werden, um Nutzer auszuwählen, die möglicherweise in den Test aufgenommen werden
- Land/Region:Wählen Sie mindestens ein Land oder eine Region aus, um Nutzer auszuwählen, die in den Test aufgenommen werden sollen.
- Nutzerzielgruppe:Analytics-Zielgruppen, die für das Targeting von Nutzern verwendet werden, die möglicherweise in den Test einbezogen werden
- Nutzereigenschaft:Eine oder mehrere Analytics-Nutzereigenschaften zum Auswählen von Nutzern, die in den Test aufgenommen werden könnten
- Nutzer in zufälligem Prozentwert:Sie können einen zufällig ausgewählten Prozentsatz von Nutzern innerhalb eines definierten Perzentilbereichs als Zielgruppe festlegen.
- Importiertes Segment:Sie richten Ihre Anzeigen auf Nutzer aus, die zu benutzerdefinierten importierten Segmenten gehören, die in Ihr Projekt hochgeladen wurden.
- Datum/Uhrzeit:Ausrichtung auf Nutzer basierend auf einem angegebenen Datums- und Zeitfenster
- Erstes Öffnen:Auf Nutzer ausrichten, die Ihre App zum ersten Mal geöffnet haben
- Installations-ID:Sie können bestimmte Testgeräte oder Client-Instanzen anhand ihrer Firebase-Installations-IDs (FIDs) ausrichten.
- Nutzer vorhanden:Ausrichtung auf alle Nutzer in allen Apps im Projekt
- Benutzerdefiniertes Signal:Nutzer basierend auf benutzerdefinierten clientseitigen Schlüssel/Wert-Signalen ausrichten, die zur Laufzeit übergeben werden
Legen Sie den Anteil der Nutzer fest:Geben Sie den Prozentsatz des Nutzerstamms Ihrer App ein, der den unter Zielnutzer festgelegten Kriterien entspricht 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% und 100 % sein. Nutzer werden jedem Test, auch duplizierten Tests, nach dem Zufallsprinzip zugewiesen.
Optional können Sie ein Aktivierungsereignis festlegen, damit nur die Daten von Nutzern in Ihrem Test berücksichtigt 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 der Test 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_installapp_removeapp_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. Dadurch wird ein Validierungsfehler in der Firebase Console ausgelöst und der Start des Tests verhindert.
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.
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 Rollouts) zulässig. Davon können bis zu 24 Tests und Rollouts gleichzeitig laufen. Die restlichen Tests müssen abgeschlossen sein.
Test verwalten
Wenn Sie einen Test mit Remote Config erstellen, können Sie ihn starten, während er läuft 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 ansehen und sie dann für alle Nutzer einführen. Alternativ können Sie ein anderes Experiment ausführen.
Test bearbeiten
- Klicken Sie im Navigationsmenü der Firebase-Konsole im Bereich DevOps & Engagement auf Remote Config.
- Klicken Sie auf den Tab A/B-Tests.
- Klicken Sie auf Wird ausgeführt und dann auf den Test, den Sie bearbeiten möchten.
- Klicken Sie auf das Kontextmenü und dann auf Laufenden Test bearbeiten.
- Wenn Sie prüfen möchten, ob Ihre App Nutzer hat, die in den Test einbezogen werden, maximieren Sie die Details und sehen Sie im Bereich Targeting und Verteilung nach, ob eine Zahl größer als 0% angegeben ist (z. B. 1% der Nutzer, die die Kriterien erfüllen).
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.
- Klicken Sie im Navigationsmenü der Firebase-Konsole im Bereich DevOps & Engagement auf Remote Config.
- Klicken Sie auf den Tab A/B-Tests.
Klicken Sie auf Wird ausgeführt und dann auf den Titel des 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.
Nachdem der Test eine Weile gelaufen ist (14 Tage für Remote Config), sehen Sie auf dieser Seite, welche Variante die beste ist. Einige Messungen werden von einem Balkendiagramm begleitet, in dem die Daten in einem visuellen Format 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.
- Klicken Sie im Navigationsmenü der Firebase-Konsole im Bereich DevOps & Engagement auf Remote Config.
- Klicken Sie auf den Tab A/B-Tests.
- Klicken Sie auf Abgeschlossen oder Wird ausgeführt, dann auf einen Test, den Sie für alle Nutzer freigeben möchten, und dann auf das Kontextmenü () Variante bereitstellen.
- So stellen Sie Ihr Experiment für alle Nutzer bereit:
- Wählen Sie für ein Remote Config-Experiment 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 einbringt, 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.
- Klicken Sie im Navigationsmenü der Firebase-Konsole im Bereich DevOps & Engagement auf Remote Config.
- Klicken Sie auf den Tab A/B-Tests.
- Wählen Sie den laufenden Test aus, den Sie bearbeiten möchten.
- Klicken Sie in der Testübersicht auf das Kontextmenü () und dann auf Laufenden Test bearbeiten.
- 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
- Klicken Sie im Navigationsmenü der Firebase-Konsole im Bereich DevOps & Engagement auf Remote Config.
- Klicken Sie auf den Tab A/B-Tests.
- Wählen Sie den laufenden oder abgeschlossenen Test aus, den Sie beenden möchten.
- 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.
Test beenden
- Klicken Sie im Navigationsmenü der Firebase-Konsole im Bereich DevOps & Engagement auf Remote Config.
- Klicken Sie auf den Tab A/B-Tests.
- Wählen Sie den laufenden oder abgeschlossenen Test aus, den Sie beenden möchten.
- Klicken Sie auf Abgeschlossen oder Wird ausgeführt, bewegen Sie den Mauszeiger auf den Test, klicken Sie auf das Kontextmenü () und dann auf Test beenden.
Webclient-Identifizierung und Experimentpersistenz
Wenn ein Nutzer eine Webanwendung zum ersten Mal über Firebase A/B Testing in einem Browser startet, wird eine eindeutige Firebase-Installations-ID (Firebase Installation ID, FID) generiert. Diese FID wird dauerhaft in der IndexedDB des Browsers gespeichert, um die App-Instanz über Sitzungen hinweg zu identifizieren.
In Firebase A/B Testing wird die FID verwendet, um Nutzer Testvarianten zuzuweisen. In Google Analytics wird sie für die Ereignisaggregation verwendet, um das Nutzerverhalten in den einzelnen Varianten 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 in einem Inkognitofenster auf Ihre App zugreift oder wenn er die IndexedDB seines Browsers löscht. Das bedeutet, dass ein Nutzer bei Verwendung verschiedener Browser oder Browsersitzungen in unterschiedliche Testvarianten aufgenommen werden kann.
Nutzertargeting
Mit den folgenden Kriterien für das Nutzer-Targeting können Sie die Nutzer auswählen, die in Ihren Test einbezogen werden sollen.
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(e) | Hinweis |
| App | == | Wählen Sie aus einer Liste von App-IDs für Apps aus, die mit Ihrem Firebase-Projekt verknüpft sind. | Wenn Sie eine App in Firebase hinzufügen, geben Sie eine Paket-ID oder einen Android-Paketnamen ein, der ein Attribut definiert, das in Remote Config-Regeln als App-ID verfügbar ist.
So verwenden Sie dieses Attribut:
|
| App-Version |
Für Stringwerte entspricht genau, enthält, enthält nicht, enthält regulären Ausdruck Für numerische Werte <, <=, =, !=, >, >= |
Geben Sie die Version(en) Ihrer App an, auf die Sie die Ausrichtung vornehmen möchten. Bevor Sie diese Regel verwenden können, müssen Sie mit einer App-ID-Regel eine Android- oder Apple-App auswä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 das Firebase Apple-Plattformen SDK in Version 6.24.0 oder höher verwendet, da CFBundleShortVersionString in früheren Versionen nicht gesendet wird (siehe Versionshinweise). Android:Verwenden Sie die versionName der App. Bei Stringvergleichen für diese Regel wird die Groß- und 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 oder einem Teil des Zielversionsstrings übereinstimmen. Sie können auch die Anker ^ und $ verwenden, um den Anfang, das Ende oder den gesamten Zielstring abzugleichen. |
| Build-Nummer |
Für Stringwerte entspricht genau, enthält, enthält nicht, regulärer Ausdruck Für numerische Werte =, ≠, >, ≥, <, ≤ |
Geben Sie die Builds Ihrer App an, auf die Sie abzielen möchten. Bevor Sie diese Regel verwenden, müssen Sie mit einer App-ID-Regel eine Apple- oder Android-App auswählen, die mit Ihrem Firebase-Projekt verknüpft ist. |
Dieser Operator ist nur für Apple- und Android-Apps verfügbar. Er 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 oder einem Teil des Zielversionsstrings ü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 das oder die Betriebssysteme an, auf die Sie das Targeting ausrichten möchten. Bevor Sie diese Regel verwenden können, müssen Sie mit einer App-ID-Regel eine Web-App auswä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 Sie abzielen möchten. Bevor Sie diese Regel verwenden können, müssen Sie mit einer App-ID-Regel eine Web-App auswä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, mit dem auf Ihre Web-App zugegriffen wird, ein Mobilgerät oder ein Nicht-Mobilgerät (Computer oder Konsole) ist. Dieser Regeltyp ist nur für Web-Apps 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, auf dem eine der aufgeführten Sprachen verwendet wird.
|
| 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 Länder befindet. Der Ländercode des Geräts wird anhand der IP-Adresse des Geräts in der Anfrage oder anhand 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 mindestens eine Google Analytics-Zielgruppe 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 Regel vom Typ Nutzer in Zielgruppe für eine bestimmte App-Instanz wirksam wird. Das bedeutet: Auch wenn ein Nutzer technisch für eine Zielgruppe infrage kommt, wird er nicht der Bedingung entsprechen, wenn Analytics ihn noch nicht der Zielgruppe hinzugefügt hat, wenn |
| Nutzereigenschaft |
Für Stringwerte: contains, does not contain, exactly matches, contains regular expression Für numerische Werte: =, ≠, >, ≥, <, ≤ Hinweis: Im Client können Sie nur Stringwerte für Nutzerattribute festlegen. Bei Bedingungen, für die numerische Operatoren verwendet werden, wandelt Remote Config den Wert der entsprechenden Nutzereigenschaft in eine Ganzzahl oder Gleitkommazahl um. |
Wählen Sie aus einer Liste der verfügbaren Google Analytics-Nutzerattribute aus. |
Weitere Informationen
Remote Config
Weitere Informationen zu Nutzereigenschaften finden Sie in den folgenden Leitfäden: 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 oder einem Teil des Zielversionsstrings ü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 |
Mit 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 dauerhaft einer zufälligen Ganz- oder Bruchzahl zugewiesen, die auf einem Seed basiert, der in diesem Projekt definiert ist. Für eine Regel wird der Standardschlüssel verwendet (in der Firebase-Konsole als Ausgangswert bearbeiten angezeigt), sofern Sie den Ausgangswert nicht ändern. Sie können eine Regel wieder auf den Standardschlüssel zurücksetzen, indem Sie das Feld Seed leeren. Wenn Sie innerhalb bestimmter Prozentbereiche immer dieselben App-Instanzen ansprechen möchten, verwenden Sie für alle Bedingungen denselben Seed-Wert. Alternativ können Sie eine neue zufällig zugewiesene Gruppe von App-Instanzen für einen bestimmten Prozentbereich auswählen, indem Sie einen neuen Seed angeben. Wenn Sie beispielsweise zwei verknüpfte Bedingungen erstellen möchten, die jeweils auf 5% der Nutzer einer App angewendet werden, können Sie eine Bedingung so konfigurieren, dass sie mit einem Prozentsatz zwischen 0% und 5% übereinstimmt, und eine andere Bedingung so, dass sie mit einem Bereich zwischen 5% und 10 % übereinstimmt. Wenn einige Nutzer zufällig in beiden Gruppen erscheinen sollen, verwenden Sie für die Regeln in jeder Bedingung unterschiedliche Ausgangswerte. |
| 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 angegebenes Datum und eine angegebene Uhrzeit, entweder in der Zeitzone des Geräts oder in einer angegebenen Zeitzone wie „(GMT+11) Sydney time“. | Vergleicht die aktuelle Zeit mit der Abrufzeit des Geräts. |
| Erstes Öffnen | Vorher, Nachher | Auf Nutzer ausrichten – basierend darauf, wann sie Ihre App zum ersten Mal geöffnet haben:
|
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:
Analytics muss auch auf dem Client während des Ereignisses „Erstes Öffnen“ aktiviert worden sein. |
| Installations-ID | ist in | Geben Sie eine oder mehrere Installations-IDs (bis zu 50) für die Ausrichtung 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 Client-IDs abrufen. |
| Nutzer existiert | (kein Operator) | Ausrichtung auf alle Nutzer aller Apps im aktuellen Projekt. |
Mit dieser Bedingungsregel werden alle Nutzer im Projekt abgeglichen, unabhängig von App oder Plattform. |
| Benutzerdefiniertes Signal |
Für Stringwerte: contains, does not contain, exactly matches, contains regular expression Für numerische Werte: =, ≠, >, ≥, <, ≤ Für Versionswerte: =, ≠, >, ≥, <, ≤ |
Bei Stringvergleichen für diese Regel wird die Groß- und 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 für reguläre Ausdrücke „enthält“ 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 den gesamten Zielstring abzugleichen. Die folgenden Datentypen werden für Clientumgebungen unterstützt:
Ziffer, die die abzugleichende(n) Versionsnummer(n) darstellt (z. B. 2.1.0). |
Weitere Informationen zu benutzerdefinierten Signalbedingungen und bedingten Ausdrücken finden Sie unter Benutzerdefinierte Signalbedingungen und Elemente zum Erstellen von Bedingungen. |
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. Sie möchten In-App-Käufe und Werbeeinnahmen optimieren, aber auch die Stabilität und Nutzerbindung der einzelnen Varianten erfassen. In diesem Fall sollten Sie Geschätzter Gesamtumsatz als Zielmesswert auswählen, da er sowohl den Umsatz aus In-App-Käufen als auch den Werbeumsatz 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 in Ihrer App keine Fehler aufgetreten sind, die vom Firebase Crashlytics SDK während des Tests erkannt wurden.
Hinweis:Firebase Crashlytics wird für Webanwendungen nicht unterstützt. |
| Geschätzter Werbeumsatz | Geschätzte Einnahmen aus Anzeigen. |
| Geschätzter Gesamtumsatz | Kombinierter Wert für Käufe 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 Tage oder länger 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.
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, 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 prüfen 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 das Format 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.
Mithilfe dieser 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 die folgenden Schritte aus, um loszulegen:
- BigQuery-Export für Google Analytics in der Firebase Console aktivieren
- Mit BigQuery auf A/B Testing-Daten zugreifen
- 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-Limits. Weitere Informationen finden Sie unter Preise und die BigQuery-Sandbox.
Prüfen Sie zuerst, ob Sie Ihre Analytics-Daten nach BigQuery exportieren:
Rufen Sie in der Firebase Console die
Einstellungen > Tab Integrationen auf.Klicken Sie auf der Karte BigQuery auf Verwalten und prüfen Sie, ob in Ihrem Projekt Analytics-Daten nach BigQuery exportiert werden.
Wenn auf der Karte Verknüpfen steht, müssen Sie den Export einrichten (fahren Sie mit dem nächsten Schritt fort).
So richten Sie den Export ein:
Lesen Sie den Abschnitt Firebase mit BigQuery verknüpfen und klicken Sie dann auf Weiter.
Aktivieren Sie im Abschnitt Integration konfigurieren die Option Google Analytics.
Wählen Sie eine Region und Exporteinstellungen aus.
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.
In BigQuery auf A/B Testing-Daten 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 Namen Ihres Projekts maximieren, um den Namen Ihrer 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-Tagesereignistabellenpartitionen beschränken, die Ihre Testdaten enthalten. Diese Tabellen haben das Suffix
YYYYMMDD. Wenn Ihr Test also vom 2. Februar 2024 bis zum 2. Mai 2024 lief, geben Sie_TABLE_SUFFIX between '20240202' AND '20240502'an. Ein Beispiel finden Sie unter Werte für ein bestimmtes Experiment auswählen. - Ereignisnamen:Diese entsprechen in der Regel den Zielmesswerten, die Sie im Test konfiguriert haben. Beispiele:
in_app_purchase-Ereignisse,ad_impression-Ereignisse oderuser_retention-Ereignisse.
Nachdem Sie die Informationen, die Sie zum Generieren der Abfrage benötigen, zusammengetragen haben:
- Rufen Sie in der Google Cloud-Konsole BigQuery auf.
- Wählen Sie Ihr Projekt und dann SQL-Abfrage erstellen aus.
- Geben Sie Ihre Frage ein. Beispielabfragen, die Sie ausführen können, finden Sie unter Beispielabfragen.
- 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:
- Rufen Sie in der Firebase Console DevOps & Engagement > A/B-Tests auf.
- Wählen Sie den Test A/B Testing aus, für den Sie eine Abfrage ausführen möchten, um die Testübersicht zu öffnen.
- 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.
Das folgende Beispiel zeigt eine generierte Abfrage für einen Test mit drei Varianten (einschließlich der Baseline) mit dem Namen „Winter-Willkommen-Test“. Der Name des aktiven Tests, der Name der Variante, das eindeutige Ereignis und die Anzahl der Ereignisse für jedes Ereignis werden 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 Beispiele für Abfragen finden Sie unter Beispielabfragen.
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
Mit Daten zu Testergebnissen können Sie die Firebase A/B Testing-Ergebnisse unabhängig überprüfen. Mit der folgenden BigQuery-SQL-Anweisung werden die Varianten von A/B-Tests, 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 A/B-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 in 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. Diese Beispielabfrage gibt den Namen des Tests, die Namen der Varianten (einschließlich Baseline), die Ereignisnamen und die Anzahl der Ereignisse 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