Google is committed to advancing racial equity for Black communities. See how.
Questa pagina è stata tradotta dall'API Cloud Translation.
Switch to English

Crea esperimenti Firebase Remote Config con test A / B

Quando aggiorni la tua app e utilizzi Firebase Remote Config per inviarla a un'applicazione con una base di utenti attiva, devi assicurarti di averla corretta. Potresti non essere sicuro di quanto segue:

  • Il modo migliore per implementare una funzionalità per ottimizzare l'esperienza dell'utente. Troppo spesso, gli sviluppatori di app non scoprono che ai loro utenti non piace una nuova funzionalità o un'esperienza utente aggiornata fino a quando la valutazione della loro app nell'app store non diminuisce. Il test A / B può aiutare a misurare se ai tuoi utenti piacciono le nuove varianti di funzionalità o se preferiscono l'app così com'è attualmente. Inoltre, mantenere la maggior parte degli utenti in un gruppo di controllo garantisce che la maggior parte della tua base di utenti possa continuare a utilizzare la tua app senza subire modifiche al suo comportamento o aspetto fino alla conclusione dell'esperimento.
  • Il modo migliore per ottimizzare l'esperienza utente per un obiettivo aziendale. A volte stai implementando modifiche al prodotto per massimizzare una metrica come le entrate o la fidelizzazione. Con il test A / B, imposti il ​​tuo obiettivo aziendale e Firebase esegue l'analisi statistica per determinare se una variante sta superando il gruppo di controllo per l'obiettivo selezionato.

Per le varianti della funzione di test A / B con un gruppo di controllo, procedi come segue:

  1. Crea il tuo esperimento.
  2. Convalida il tuo esperimento su un dispositivo di prova.
  3. Gestisci il tuo esperimento.

Crea un esperimento

Un esperimento di Remote Config consente di valutare più varianti su uno o più parametri di Remote Config .

  1. Accedi a Firebase, aggiorna le impostazioni di condivisione dei dati e assicurati che la condivisione dei dati sia abilitata. Senza la condivisione dei dati, il tuo esperimento non avrà accesso ai dati di analisi.
  2. Nella barra di navigazione della console Firebase , espandi Grow , quindi fai clic su A / B Testing .
  3. Fai clic su Crea esperimento , quindi seleziona Configurazione remota quando richiesto per il servizio con cui desideri sperimentare.
  4. Immettere un nome e una descrizione facoltativa per l'esperimento e fare clic su Avanti .
  5. Compila i campi Targeting , scegliendo prima l'app che utilizza il tuo esperimento. Puoi anche scegliere come target un sottoinsieme dei tuoi utenti per partecipare al tuo esperimento scegliendo una o più delle seguenti opzioni:

    • Versione: una o più versioni della tua app
    • Pubblico utente: segmenti di pubblico di Analytics utilizzati per scegliere come target gli utenti che potrebbero essere inclusi nell'esperimento
    • Proprietà utente: una o più proprietà utente di Analytics per selezionare gli utenti che potrebbero essere inclusi nell'esperimento
    • Previsione: gruppi di utenti previsti dal machine learning per impegnarsi in un determinato comportamento
    • Paese / regione: uno o più paesi o aree geografiche per la selezione degli utenti che potrebbero essere inclusi nell'esperimento
    • Lingua del dispositivo: una o più lingue e impostazioni internazionali utilizzate per selezionare gli utenti che potrebbero essere inclusi nell'esperimento
  6. Imposta la percentuale di utenti target: inserisci la percentuale della base utenti della tua app che corrisponde ai criteri impostati in Utenti target che desideri dividere equamente tra il gruppo di controllo e una o più varianti nell'esperimento. Può essere qualsiasi percentuale compresa tra 0,01% e 100%. Gli utenti vengono assegnati in modo casuale a ogni esperimento, inclusi gli esperimenti duplicati.

  7. Facoltativamente, imposta un evento di attivazione per assicurarti che nell'esperimento vengano conteggiati solo gli utenti che hanno attivato per primi un evento Analytics, quindi fai clic su Avanti .

  8. Per gli obiettivi dell'esperimento, seleziona la metrica principale da monitorare e aggiungi eventuali metriche aggiuntive desiderate dall'elenco a discesa. Questi includono obiettivi integrati (coinvolgimento, acquisti, entrate, fidelizzazione, ecc.), Eventi di conversione di Analytics e altri eventi di Analytics. Al termine, fare clic su Avanti .

  9. Nella sezione Varianti sceglierai un gruppo di controllo e almeno una variante per l'esperimento. Utilizzare l'elenco Scegli o crea nuovo per aggiungere uno o più parametri con cui sperimentare. Puoi creare un parametro che non è stato utilizzato in precedenza nella console Firebase, ma deve esistere nella tua app affinché abbia effetto. Puoi ripetere questo passaggio per aggiungere più parametri al tuo esperimento.

  10. (facoltativo) Per aggiungere più di una variante all'esperimento, fai clic su Aggiungi un'altra variante .

  11. Modifica uno o più parametri per varianti specifiche. Tutti i parametri non modificati sono gli stessi per gli utenti non inclusi nell'esperimento.

  12. Fai clic su Rivedi per salvare l'esperimento.

Sono consentiti fino a 300 esperimenti per progetto, che potrebbero consistere in un massimo di 24 esperimenti in esecuzione, con il resto come bozza o completato.

Convalida il tuo esperimento su un dispositivo di prova

Per ogni installazione di Firebase puoi recuperare il token di autenticazione dell'installazione di Firebase ad essa associato. Puoi utilizzare questo token per testare varianti specifiche dell'esperimento su un dispositivo di prova con la tua app installata. Per convalidare il tuo esperimento su un dispositivo di prova, procedi come segue:

  1. Ottieni il token di autenticazione dell'installazione Firebase come segue:

    Swift

    Installations.installations().authTokenForcingRefresh(true, completion: { (token, error) in
      if let error = error {
        print("Error fetching token: \(error)")
        return
      }
      guard let token = token else { return }
      print("Installation auth token: \(token)")
    })
    

    Obiettivo-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]);
    }];
    

    Giava

    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 + KTX

    FirebaseInstallations.getInstance().getToken(/* forceRefresh */ true)
        .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* instance_id_object = firebase::instance_id::InstanceId::GetInstanceId(
        firebase::App::GetInstance(), &init_result);
    instance_id_object->GetToken().OnCompletion(
        [](const firebase::Future<std::string>& future) {
          if (future.status() == kFutureStatusComplete &&
              future.error() == firebase::instance_id::kErrorNone) {
            printf("Instance ID Token %s\n", future.result()->c_str());
          }
        });
    

    Unità

    Firebase.InstanceId.FirebaseInstanceId.DefaultInstance.GetTokenAsync().ContinueWith(
      task => {
        if (!(task.IsCanceled || task.IsFaulted) && task.IsCompleted) {
          UnityEngine.Debug.Log(System.String.Format("Instance ID Token {0}", task.Result));
        }
      });
    
  2. Nella barra di navigazione della console Firebase , fai clic su Test A / B.
  3. Fai clic su Bozza (e / o In esecuzione per esperimenti di configurazione remota), passa con il mouse sull'esperimento, fai clic sul menu di rapida ( ), quindi fai clic su Gestisci dispositivi di prova .
  4. Inserisci il token di autenticazione dell'installazione Firebase per un dispositivo di prova e scegli la variante dell'esperimento da inviare a quel dispositivo di prova.
  5. Esegui l'app e conferma che la variante selezionata viene ricevuta sul dispositivo di prova.

Per ulteriori informazioni sulle installazioni Firebase, vedi Gestire le installazioni Firebase .

Gestisci il tuo esperimento

Sia che crei un esperimento con Remote Config, il compositore di notifiche o la messaggistica in-app Firebase, puoi quindi convalidare e avviare l'esperimento, monitorare l'esperimento mentre è in esecuzione e aumentare il numero di utenti inclusi nell'esperimento in esecuzione.

Al termine dell'esperimento, puoi prendere nota delle impostazioni utilizzate dalla variante vincente e quindi distribuirle a tutti gli utenti. Oppure puoi eseguire un altro esperimento.

Inizia un esperimento

  1. Nella barra di navigazione della console Firebase , espandi Grow , quindi fai clic su A / B Testing .
  2. Fai clic su Bozza , quindi sul titolo dell'esperimento.
  3. Per verificare che la tua app abbia utenti da includere nell'esperimento, verifica un numero maggiore di 0% nella sezione Targeting e distribuzione (ad esempio, 1% di utenti che corrispondono ai criteri ).
  4. Per modificare l'esperimento, fai clic su Modifica .
  5. Per iniziare l'esperimento, fai clic su Avvia esperimento . Puoi eseguire fino a 24 esperimenti per progetto alla volta.

Monitora un esperimento

Dopo che un esperimento è in corso da un po 'di tempo, puoi controllarne lo stato di avanzamento e vedere come appaiono i tuoi risultati per gli utenti che hanno partecipato all'esperimento fino ad ora.

  1. Nella barra di navigazione della console Firebase , fai clic su Crescita , quindi su Test A / B.
  2. Fai clic su In esecuzione , quindi sul titolo dell'esperimento. In questa pagina puoi visualizzare varie statistiche sull'esperimento in esecuzione, inclusa la metrica dell'obiettivo e altre metriche. Per ogni metrica sono disponibili le seguenti informazioni:

    • Miglioramento : una misura del miglioramento di una metrica per una data variante rispetto alla linea di base (o al gruppo di controllo). Calcolato confrontando l'intervallo di valori per la variante con l'intervallo di valori per la linea di base.
    • Probabilità di superare la linea di base : la probabilità stimata che una determinata variante superi la linea di base per la metrica selezionata.
    • Probabilità di essere la variante migliore : la probabilità stimata che una data variante superi le altre varianti per la metrica selezionata.
    • Valore per utente : in base ai risultati dell'esperimento, questo è l'intervallo previsto in cui ricadrà il valore della metrica nel tempo.
    • Valore totale : il valore cumulativo osservato per il gruppo di controllo o la variante. Il valore viene utilizzato per misurare l'efficacia di ciascuna variante dell'esperimento e viene utilizzato per calcolare il miglioramento , l' intervallo di valori , la probabilità di superare la linea di base e la probabilità di essere la variante migliore . A seconda della metrica misurata, questa colonna potrebbe essere etichettata "Durata per utente", "Tasso di fidelizzazione" o "Tasso di conversione".
  3. Per aumentare il numero di utenti inclusi nell'esperimento, fai clic su Aumenta distribuzione , quindi seleziona una percentuale maggiore per aggiungere più utenti idonei all'esperimento.

  4. Dopo che l'esperimento è stato eseguito per un po '(almeno 7 giorni per FCM e messaggistica in-app o 14 giorni per Remote Config), i dati in questa pagina indicano quale variante, se presente, è "leader". Alcune misurazioni sono accompagnate da un grafico a barre che presenta i dati in formato visivo.

Distribuisci un esperimento a tutti gli utenti

Dopo che un esperimento è stato eseguito abbastanza a lungo da disporre di una variante "leader" o vincente per la metrica dell'obiettivo, puoi implementare l'esperimento al 100% degli utenti. Ciò ti consente di selezionare una variante da pubblicare per tutti gli utenti in futuro. Anche se il tuo esperimento non ha creato un chiaro vincitore, puoi comunque scegliere di distribuire una variante a tutti i tuoi utenti.

  1. Nella barra di navigazione della console Firebase , fai clic su Crescita , quindi su Test A / B.
  2. Fai clic su Completato o In esecuzione , fai clic su un esperimento che desideri distribuire a tutti gli utenti, fai clic sul menu di rapida ( ), quindi fai clic su Roll out variant .
  3. Distribuisci il tuo esperimento a tutti gli utenti effettuando una delle seguenti operazioni:

    • Per un esperimento che utilizza il compositore di notifiche, utilizza la finestra di dialogo del messaggio di implementazione per inviare il messaggio agli utenti target rimanenti che non facevano parte dell'esperimento.
    • Per un esperimento di Remote Config, utilizzare la finestra di dialogo per determinare i valori dei parametri di Remote Config da modificare per tutti gli utenti.
    • Per un esperimento di messaggistica in-app, utilizza la finestra di dialogo per determinare quale variante deve essere implementata come campagna di messaggistica in-app autonoma. Una volta selezionato, verrai reindirizzato alla schermata di composizione FIAM per apportare eventuali modifiche (se necessario) prima della pubblicazione.

Espandi un esperimento

Se scopri che un esperimento non sta coinvolgendo abbastanza utenti per il test A / B per dichiarare un leader, puoi aumentare la distribuzione del tuo esperimento per raggiungere una percentuale maggiore della base di utenti dell'app.

  1. Nella barra di navigazione della console Firebase , fai clic su Crescita , quindi su Test A / B.
  2. Fai clic su In esecuzione , passa con il mouse sull'esperimento, fai clic sul menu contestuale ( ), quindi fai clic su Aumenta distribuzione .
  3. La console visualizza una finestra di dialogo con un'opzione per aumentare la percentuale di utenti nell'esperimento attualmente in esecuzione. Immettere un numero maggiore della percentuale corrente e fare clic su Invia . L'esperimento verrà trasferito alla percentuale di utenti che hai specificato.

Duplica o interrompi un esperimento

  1. Nella barra di navigazione della console Firebase , fai clic su Crescita , quindi su Test A / B.
  2. Fai clic su Completato o In esecuzione , passa con il mouse sull'esperimento, fai clic sul menu di rapida ( ), quindi fai clic su Duplica o Interrompi .

Targeting dell'utente

Puoi scegliere come target gli utenti da includere nell'esperimento utilizzando i seguenti criteri di targeting per utente.

Criterio di targeting Operatore (i) Valori) Nota
Versione contiene,
non contiene,
corrisponde esattamente,
contiene regex
Inserisci un valore per una o più versioni dell'app che desideri includere nell'esperimento.

Quando si utilizza uno qualsiasi degli operatori contiene , non contiene o corrisponde esattamente , è possibile fornire un elenco di valori separati da virgole.

Quando si utilizza l'operatore regex contiene , è possibile creare espressioni regolari in formato RE2 . La tua espressione regolare può corrispondere a tutta o parte della stringa della versione di destinazione. Puoi anche usare gli ancoraggi ^ e $ per trovare la corrispondenza con l'inizio, la fine o l'intera stringa di destinazione.

Pubblico utente include tutto,
include almeno uno di,
non include tutto,
non include almeno uno di
Seleziona uno o più segmenti di pubblico di Analytics per scegliere come target gli utenti che potrebbero essere inclusi nell'esperimento.
Proprietà dell'utente Per il testo:
contiene,
non contiene,
corrisponde esattamente,
contiene regex

Per i numeri:
<, ≤, =, ≥,>
Una proprietà utente di Analytics viene utilizzata per selezionare gli utenti che potrebbero essere inclusi in un esperimento, con una gamma di opzioni per selezionare i valori delle proprietà utente.

Sul client è possibile impostare solo valori stringa per le proprietà utente. Per le condizioni che utilizzano operatori numerici, il servizio Remote Config converte il valore della proprietà utente corrispondente in un numero intero / float.
Quando si utilizza l'operatore regex contiene , è possibile creare espressioni regolari in formato RE2 . La tua espressione regolare può corrispondere a tutta o parte della stringa della versione di destinazione. È inoltre possibile utilizzare gli ancoraggi ^ e $ per abbinare l'inizio, la fine o l'intera stringa di destinazione.
Predizione N / A Scegli come target gruppi di utenti definiti da Firebase Predictions, ad esempio quelli che probabilmente smetteranno di utilizzare la tua app o gli utenti che probabilmente effettueranno un acquisto in-app. Seleziona uno dei valori definiti dallo strumento Firebase Predictions. Se un'opzione non è disponibile, potrebbe essere necessario attivare Firebase Predictions visitando la sezione Predictions della console Firebase.
Paese del dispositivo N / A Uno o più paesi o aree geografiche utilizzati per selezionare gli utenti che potrebbero essere inclusi nell'esperimento.
Lingua del dispositivo N / A Una o più lingue e impostazioni internazionali utilizzate per selezionare gli utenti che potrebbero essere inclusi nell'esperimento. Questo criterio di targeting è disponibile solo per Remote Config.
Primo aperto più di
meno di
fra
Scegli come target gli utenti in base alla prima volta che hanno aperto la tua app, specificata in giorni. Questo criterio di targeting è disponibile solo per la messaggistica in-app Firebase.
Ultimo coinvolgimento dell'app più di
meno di
fra
Scegli come target gli utenti in base all'ultima volta che hanno interagito con la tua app, specificata in giorni. Questo criterio di targeting è disponibile solo per la messaggistica in-app Firebase.

Metriche di test A / B

Quando crei il tuo esperimento, scegli una metrica che viene utilizzata per confrontare le varianti dell'esperimento e puoi anche scegliere altre metriche da monitorare per aiutarti a comprendere meglio ogni variante dell'esperimento e rilevare eventuali effetti collaterali significativi (come arresti anomali dell'app). Le tabelle seguenti forniscono dettagli su come vengono calcolate le metriche degli obiettivi e altre metriche.

Metriche degli obiettivi

Metrico Descrizione
Ritenzione (1 giorno) Il numero di utenti che tornano alla tua app su base giornaliera.
Conservazione (2-3 giorni) Il numero di utenti che tornano alla tua app entro 2-3 giorni.
Ritenzione (4-7 giorni) Il numero di utenti che tornano alla tua app entro 4-7 giorni.
Ritenzione (8-14 giorni) Il numero di utenti che tornano alla tua app entro 8-14 giorni.
Conservazione (15+ giorni) Il numero di utenti che tornano alla tua app 15 o più giorni dopo averla utilizzata l'ultima volta.
Notifica aperta Tiene traccia se un utente apre la notifica inviata dal compositore di notifiche.
Ricavi d'acquisto Valore combinato per tutti in_app_purchase eventi ecommerce_purchase e in_app_purchase .
Entrate AdMob stimate Entrate stimate da AdMob.
Entrate totali stimate Valore combinato per l'acquisto e entrate AdMob stimate.
first_open Un evento di Analytics che si attiva quando un utente apre per la prima volta un'app dopo averla installata o reinstallata. Utilizzato come parte di una canalizzazione di conversione.
notification_open Un evento di Analytics che si attiva quando un utente apre una notifica inviata dal compositore di notifiche. Utilizzato come parte di una canalizzazione di conversione.

Altre metriche

Metrico Descrizione
Utenti senza crash La percentuale di utenti che non hanno riscontrato errori nella tua app rilevati dall'SDK Firebase Crashlytics durante l'esperimento.
notification_dismiss Un evento di Analytics che si attiva quando una notifica inviata dal compositore di notifiche viene ignorata (solo Android).
notifica_ricezione Un evento di Analytics che si attiva quando viene ricevuta una notifica inviata dal compositore di notifiche mentre l'app è in background (solo Android).
os_update Un evento di Analytics che tiene traccia dell'aggiornamento del sistema operativo del dispositivo a una nuova versione. Per ulteriori informazioni, consulta Eventi raccolti automaticamente .
screen_view Un evento di Analytics che tiene traccia delle schermate visualizzate nella tua app. Per ulteriori informazioni, vedere Monitoraggio delle schermate .
session_start Un evento di Analytics che conta le sessioni utente nella tua app. Per saperne di più, vedi Eventi raccolti automaticamente .
user_engagement Un evento di Analytics che si attiva periodicamente mentre la tua app è in primo piano. Per ulteriori informazioni, vedere Eventi raccolti automaticamente .

Esportazione di dati BigQuery

Puoi accedere a tutti i dati di analisi relativi ai tuoi test A / B in BigQuery . BigQuery ti consente di analizzare i dati utilizzando BigQuery SQL, esportarli su un altro provider cloud o utilizzare i dati per i tuoi modelli ML personalizzati. Per ulteriori informazioni, consulta Collegamento di BigQuery a Firebase .

Per sfruttare appieno l'esportazione dei dati BigQuery, i progetti Firebase devono adottare il piano tariffario "Blaze" con pagamento in base al consumo. BigQuery addebita costi per l'archiviazione dei dati, gli inserimenti di streaming e le query sui dati. Il caricamento e l'esportazione dei dati sono gratuiti. Consulta i prezzi di BigQuery o la sandbox di BigQuery per ulteriori informazioni.

Per iniziare, assicurati che il tuo progetto Firebase sia collegato a BigQuery. Seleziona Impostazioni> Impostazioni progetto dalla barra di navigazione a sinistra, quindi seleziona Integrazioni> BigQuery> Collegamento . Questa pagina mostra le opzioni per eseguire l'esportazione dei dati di analisi BiqQuery per tutte le app nel progetto.

Per eseguire query sui dati di analisi per un esperimento:

  1. Dall'elenco degli esperimenti attivi , seleziona l'esperimento desiderato per aprire la pagina dei risultati dell'esperimento.
  2. Dal menu di scelta rapida nel riquadro Panoramica esperimento , seleziona Visualizza in BigQuery (questa opzione non è disponibile per i progetti nel livello gratuito).

    Viene aperto il compositore di query della console BigQuery con una query di esempio generata automaticamente dei dati dell'esperimento precaricata per la tua revisione. In questa query, il tuo esperimento è codificato come proprietà utente con il nome dell'esperimento nella chiave e la variante dell'esperimento nel valore.

  3. Nel compositore di query, seleziona Esegui query. I risultati vengono visualizzati nel riquadro inferiore.

Tieni presente che, poiché i dati Firebase in BigQuery vengono aggiornati solo una volta al giorno, i dati disponibili nella pagina dell'esperimento potrebbero essere più aggiornati rispetto ai dati disponibili nella console di BigQuery.