Créez des tests de messagerie dans l'application avec A/B Testing

Lorsque vous contactez vos utilisateurs ou lancez une nouvelle campagne marketing, vous devez vous assurer que tout est correct. Les tests A/B peuvent vous aider à trouver la formulation et la présentation optimales en testant des variantes de message sur des parties sélectionnées de votre base d'utilisateurs. Que votre objectif soit une meilleure fidélisation ou une meilleure conversion pour une offre, les tests A/B peuvent effectuer une analyse statistique pour déterminer si une variante de message enregistre de meilleures performances que la référence pour l'objectif sélectionné.

Pour effectuer des tests A/B sur des variantes de fonctionnalités avec un niveau de référence, procédez comme suit :

  1. Créez votre test.
  2. Validez votre test sur un appareil de test.
  3. Gérez votre test.

Créer un test

Un test utilisant Firebase In-App Messaging vous permet d'évaluer plusieurs variantes d'un même message dans l'application.

  1. Connectez-vous à la console Firebase et vérifiez que Google Analytics est activé dans votre projet afin que le test ait accès aux données Analytics.

    Si vous n'avez pas activé Google Analytics lors de la création de votre projet, vous pouvez l'activer dans l'onglet Intégrations, accessible via > Paramètres du projet dans la console Firebase.

  2. Dans la section Engage (Engagement) du menu de navigation de la console Firebase, cliquez sur A/B Testing.

  3. Cliquez sur Créer un test, puis sélectionnez Messagerie dans l'application lorsque vous êtes invité à indiquer le service que vous souhaitez tester.

  4. Vous pouvez également développer Engage (Engager) dans le menu de navigation de la console Firebase, puis cliquer sur In-App Messaging. Cliquez ensuite sur Nouveau test.

  5. Saisissez un nom et une description facultative pour votre test, puis cliquez sur Suivant.

  6. Remplissez les champs Ciblage en choisissant d'abord l'application qui utilise votre test. Vous pouvez également cibler un sous-ensemble de vos utilisateurs pour qu'ils participent à votre test en choisissant des options, y compris les suivantes :

    • Version:une ou plusieurs versions de votre application
    • Audience utilisateur : audiences Analytics utilisées pour cibler les utilisateurs susceptibles d'être inclus dans le test
    • Propriété utilisateur : une ou plusieurs propriétés utilisateur Analytics permettant de sélectionner les utilisateurs susceptibles d'être inclus dans le test
    • Pays/Région : un ou plusieurs pays ou régions pour sélectionner les utilisateurs susceptibles d'être inclus dans le test
    • Langue de l'appareil:une ou plusieurs langues et paramètres régionaux utilisés pour sélectionner les utilisateurs susceptibles d'être inclus dans le test
    • Première ouverture : ciblez les utilisateurs en fonction de la première fois qu'ils ont ouvert votre application.
    • Dernier engagement avec une application : ciblez les utilisateurs en fonction de leur dernier engagement avec votre application.
  7. Définissez le Pourcentage d'utilisateurs cibles : sélectionnez le pourcentage de la base d'utilisateurs de votre application correspondant aux critères définis sous Utilisateurs cibles que vous souhaitez répartir de manière uniforme entre la référence et une ou plusieurs variantes de votre test. Il peut s'agir de n'importe quel pourcentage compris entre 0,01 % et 100 %. Les pourcentages sont attribués de manière aléatoire aux utilisateurs pour chaque test, y compris les tests en double.

  8. Dans la section Variantes, configurez un message dans l'application de référence à envoyer au groupe de référence à l'aide de l'interface de conception de messages que vous utilisez pour une campagne de messages dans l'application normale.

  9. Pour ajouter une variante à votre test, cliquez sur Ajouter une variante. Par défaut, les tests comportent une référence et une variante.

  10. (Facultatif) Saisissez un nom plus descriptif pour chaque variante.

  11. (Facultatif) En haut de la section Variantes, cliquez sur le bouton Comparer les variantes pour comparer une autre variante de message côte à côte avec le message de référence.

  12. Définissez une métrique d'objectif que votre test utilisera lors de l'évaluation des variantes de test, ainsi que toute métrique supplémentaire que vous souhaitez utiliser dans la liste. Ces métriques incluent les objectifs intégrés (engagement, achats, revenus, fidélisation, etc.), les événements de conversion Analytics et d'autres événements Analytics.

  13. Configurez la planification du test :

    • Définissez une date de début et de fin pour le test.
    • Définissez la manière dont les messages dans l'application sont déclenchés dans toutes les variantes.
  14. Cliquez sur Examiner pour enregistrer votre test.

Vous pouvez créer jusqu'à 300 tests par projet, dont 24 tests en cours, et les autres en brouillon ou terminés.

Valider votre test sur un appareil de test

Pour chaque installation Firebase, vous pouvez récupérer le jeton d'authentification d'installation qui lui est associé. Vous pouvez utiliser ce jeton pour tester des variantes de test spécifiques sur un appareil de test sur lequel votre application est installée. Pour valider votre test sur un appareil de test, procédez comme suit :

  1. Obtenez le jeton d'authentification d'installation comme suit:

    Swift

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

    Objective-C

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

    Java

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

    Kotlin+KTX

    val forceRefresh = true
    FirebaseInstallations.getInstance().getToken(forceRefresh)
        .addOnCompleteListener { task ->
            if (task.isSuccessful) {
                Log.d("Installations", "Installation auth token: " + task.result?.token)
            } else {
                Log.e("Installations", "Unable to get Installation auth token")
            }
        }
  2. Dans la barre de navigation de la console Firebase, cliquez sur Tests A/B.
  3. Cliquez sur Brouillon (et/ou En cours d'exécution pour les tests Remote Config), pointez sur votre test, cliquez sur le menu contextuel (), puis sur Gérer les appareils de test.
  4. Saisissez le jeton d'authentification d'installation pour un appareil de test, puis choisissez la variante de test à envoyer à cet appareil de test.
  5. Exécutez l'application et vérifiez que la variante sélectionnée est reçue sur l'appareil de test.

Pour en savoir plus sur les installations Firebase, consultez la section Gérer les installations Firebase.

Gérer votre test

Que vous créiez un test avec Remote Config, l'outil de création de notifications ou Firebase In-App Messaging, vous pouvez ensuite valider et lancer votre test, le surveiller pendant son exécution et augmenter le nombre d'utilisateurs inclus dans votre test en cours.

Une fois votre test terminé, vous pouvez noter les paramètres utilisés par la variante gagnante, puis les déployer auprès de tous les utilisateurs. Vous pouvez également exécuter un autre test.

Démarrer un test

  1. Dans la section Engage (Engagement) du menu de navigation de la console Firebase, cliquez sur A/B Testing.
  2. Cliquez sur Brouillon, puis sur le titre de votre test.
  3. Pour vérifier que votre application inclut des utilisateurs qui seraient inclus dans votre test, développez les détails du brouillon et vérifiez si un nombre supérieur à 0% dans la section Ciblage et distribution (par exemple, 1% d'utilisateurs correspondant aux critères).
  4. Pour modifier votre test, cliquez sur Modifier.
  5. Pour lancer le test, cliquez sur Démarrer le test. Vous pouvez exécuter jusqu'à 24 tests à la fois par projet.

Surveiller un test

Une fois qu'un test a été exécuté pendant un certain temps, vous pouvez vérifier sa progression et voir à quoi ressemblent vos résultats pour les utilisateurs qui y ont participé jusqu'à présent.

  1. Dans la section Engage (Engagement) du menu de navigation de la console Firebase, cliquez sur A/B Testing.
  2. Cliquez sur Exécution, puis sur ou recherchez le titre de votre test. Cette page affiche diverses statistiques observées et modélisées concernant le test en cours d'exécution, y compris les suivantes:

    • Différence par rapport à la valeur de référence (%) : mesure de l'amélioration d'une métrique pour une variante donnée par rapport à la valeur de référence. Calculé en comparant la plage de valeurs de la variante à la plage de valeurs de la référence.
    • Probabilité de surpasser la référence : probabilité estimée qu'une variante donnée surpasse la référence pour la métrique sélectionnée.
    • observed_metric par utilisateur: sur la base des résultats du test, il s'agit de la plage prévue dans laquelle se situera la valeur de la métrique au fil du temps.
    • observed_metric total : valeur cumulée observée pour la référence ou la variante. La valeur sert à mesurer les performances de chaque variante de test et à calculer l'amélioration, la plage de valeurs, la probabilité de surpasser la référence et la probabilité d'être la meilleure variante. Selon la métrique mesurée, cette colonne peut être intitulée "Durée par utilisateur", "Revenus par utilisateur", "Taux de fidélisation" ou "Taux de conversion".
  3. Une fois que votre test s'est exécuté pendant un certain temps (au moins sept jours pour FCM et In-App Messaging, ou 14 jours pour Remote Config), les données de cette page indiquent quelle variante est la "principale", le cas échéant. Certaines mesures sont accompagnées d'un graphique à barres qui présente les données dans un format visuel.

Déployer un test auprès de tous les utilisateurs

Une fois qu'un test a duré suffisamment longtemps pour disposer d'une variante "leader" (ou gagnante) pour votre métrique d'objectif, vous pouvez lancer le test auprès de 100% des utilisateurs. Cela vous permet de sélectionner une variante qui sera désormais présentée à tous les utilisateurs. Même si votre test n'a pas permis de déterminer clairement un gagnant, vous pouvez tout de même déployer une variante auprès de tous vos utilisateurs.

  1. Dans la section Engage (Engagement) du menu de navigation de la console Firebase, cliquez sur A/B Testing.
  2. Cliquez sur Terminé ou En cours, cliquez sur le test que vous souhaitez déployer auprès de tous les utilisateurs, cliquez sur le menu contextuel () et sur Déployer la variante.
  3. Déployez votre test auprès de tous les utilisateurs en procédant comme suit :

    • Pour un test qui utilise l'outil de création de notifications, utilisez la boîte de dialogue Déployer le message pour envoyer le message aux utilisateurs ciblés restants qui n'ont pas participé au test.
    • Pour un test Remote Config, sélectionnez une variante afin de déterminer les valeurs de paramètre Remote Config à mettre à jour. Les critères de ciblage définis lorsque vous avez créé le test sont ajoutés en tant que nouvelle condition dans votre modèle afin que seuls les utilisateurs ciblés par le test soient concernés par le déploiement. Après avoir cliqué sur Vérifier dans Remote Config pour vérifier les modifications, cliquez sur Publier les modifications pour terminer le déploiement.
    • Pour un test In-App Messaging, utilisez la boîte de dialogue pour déterminer quelle variante doit être déployée en tant que campagne In-App Messaging autonome. Une fois la sélection effectuée, vous êtes redirigé vers l'écran de composition FIAM pour apporter les modifications nécessaires (le cas échéant) avant de publier le message.

Développer un test

Si vous constatez qu'un test n'attire pas suffisamment d'utilisateurs pour que A/B Testing déclare un gagnant, vous pouvez augmenter la distribution de votre test pour toucher un pourcentage plus élevé de la base d'utilisateurs de l'application.

  1. Dans la section Engager du menu de navigation de la console Firebase, cliquez sur A/B Testing.
  2. Sélectionnez le test en cours que vous souhaitez modifier.
  3. Dans la Présentation du test, cliquez sur le menu contextuel (), puis sur Modifier le test en cours.
  4. La boîte de dialogue Ciblage affiche une option permettant d'augmenter le pourcentage d'utilisateurs participant au test en cours. Sélectionnez un nombre supérieur au pourcentage actuel, puis cliquez sur Publier. Le test sera déployé auprès du pourcentage d'utilisateurs que vous avez spécifié.

Dupliquer ou arrêter un test

  1. Dans la section Engager du menu de navigation de la console Firebase, cliquez sur A/B Testing.
  2. Cliquez sur Terminé ou En cours d'exécution, maintenez le pointeur sur votre test, cliquez sur le menu contextuel (), puis sur Dupliquer le test ou Arrêter le test.

Ciblage par utilisateur

Vous pouvez cibler les utilisateurs à inclure dans votre test à l'aide des critères de ciblage ci-dessous.

Critère de ciblage Opérateur(s) Valeur(s) Remarque
Version contient,
ne contient pas,
correspond exactement,
contient une expression régulière
Saisissez une valeur pour une ou plusieurs versions d'application que vous souhaitez inclure dans le test.

Lorsque vous utilisez l'un des opérateurs contient, ne contient pas ou correspond exactement à, vous pouvez fournir une liste de valeurs séparées par une virgule.

Lorsque vous utilisez l'opérateur contient une expression régulière, vous pouvez créer des expressions régulières au format RE2. Votre expression régulière peut correspondre à tout ou partie de la chaîne de la version cible. Vous pouvez également utiliser les ancres ^ et $ pour faire correspondre le début, la fin ou l'intégralité d'une chaîne cible.

Audiences d'utilisateurs inclut tous les éléments,
inclut au moins un des éléments,
n'inclut pas tous les éléments,
n'inclut pas au moins un des éléments
Sélectionnez une ou plusieurs audiences Analytics pour cibler les utilisateurs susceptibles d'être inclus dans votre test. Certains tests qui ciblent des audiences Google Analytics peuvent nécessiter quelques jours pour accumuler des données, car ils sont soumis à la latence de traitement des données Analytics. Ce délai est le plus susceptible de se produire avec les nouveaux utilisateurs, qui sont généralement inscrits aux audiences éligibles 24 à 48 heures après leur création, ou pour les audiences créées récemment.
Propriété utilisateur Pour le texte:
contient,
ne contient pas,
correspond exactement à,
contient l'expression régulière

Pour les nombres:
<, ≤, =, ≥, >
Une propriété utilisateur Analytics permet de sélectionner les utilisateurs susceptibles d'être inclus dans un test, avec une gamme d'options pour sélectionner les valeurs de la propriété utilisateur.

Sur le client, vous ne pouvez définir que des valeurs de chaîne pour les propriétés utilisateur. Pour les conditions qui utilisent des opérateurs numériques, le service Remote Config convertit la valeur de la propriété utilisateur correspondante en nombre entier/float.
Lorsque vous utilisez l'opérateur contains regex, vous pouvez créer des expressions régulières au format RE2. Votre expression régulière peut correspondre à tout ou partie de la chaîne de version cible. Vous pouvez également utiliser les ancres ^ et $ pour faire correspondre le début, la fin ou l'intégralité d'une chaîne cible.
Pays/Région N/A Un ou plusieurs pays ou régions utilisés pour sélectionner les utilisateurs susceptibles d'être inclus dans le test.  
Langages N/A Une ou plusieurs langues et zones géographiques utilisées pour sélectionner les utilisateurs susceptibles d'être inclus dans le test.  
Première ouverture Plus de
Moins de
Entre
Ciblez les utilisateurs en fonction de la première fois qu'ils ont ouvert votre application, spécifiée en jours.
Dernier engagement avec une application Plus de
Moins de
Entre
Ciblez les utilisateurs en fonction de leur dernière interaction avec votre application, spécifiée en jours.

A/B Testing métriques

Lorsque vous créez votre test, vous choisissez une métrique principale, ou objectif, qui est utilisée pour déterminer la variante gagnante. Vous devez également suivre d'autres métriques pour mieux comprendre les performances de chaque variante de test et suivre les tendances importantes qui peuvent différer pour chaque variante, comme la rétention des utilisateurs, la stabilité de l'application et les revenus générés par les achats via l'application. Vous pouvez suivre jusqu'à cinq métriques qui ne sont pas des objectifs dans votre test.

Par exemple, supposons que vous ayez ajouté de nouveaux achats via votre application et que vous souhaitiez comparer l'efficacité de deux messages d'incitation à l'action différents. Dans ce cas, vous pouvez choisir de définir Revenus issus des achats comme métrique d'objectif, car vous souhaitez que la variante gagnante représente la notification ayant généré les revenus issus des achats intégrés les plus élevés. Étant donné que vous souhaitez également suivre la variante qui a généré plus de conversions et de rétention d'utilisateurs à l'avenir, vous pouvez ajouter les éléments suivants dans Autres métriques à suivre :

  • Le chiffre d'affaires total estimé pour voir comment la combinaison des achats via l'application et des revenus publicitaires diffère entre les deux variantes
  • Fidélisation (1 jour), Fidélisation (2 à 3 jours) et Fidélisation (4 à 7 jours) pour suivre la fidélisation quotidienne/hebdomadaire des utilisateurs

Les tableaux suivants fournissent des détails sur le mode de calcul des métriques d'objectif et d'autres métriques.

Statistiques "Objectif"

Métrique Description
Utilisateurs n'ayant pas subi de plantage Pourcentage d'utilisateurs n'ayant pas rencontré d'erreurs dans votre application détectées par le SDK Firebase Crashlytics pendant le test.
Revenus publicitaires estimés Revenus publicitaires estimés.
Total des revenus estimés Valeur combinée des achats et revenus publicitaires estimés.
Revenus issus des achats Valeur combinée pour tous les événements purchase et in_app_purchase.
Fidélisation (1 jour) Nombre d'utilisateurs qui reviennent quotidiennement sur votre application.
Fidélisation (2 à 3 jours) Nombre d'utilisateurs qui reviennent sur votre application dans les deux à trois jours.
Fidélisation (4 à 7 jours) Nombre d'utilisateurs qui reviennent dans votre application dans un délai de 4 à 7 jours.
Fidélisation (8-14 jours) Nombre d'utilisateurs qui reviennent sur votre application dans les 8 à 14 jours.
Fidélisation (plus de 15 jours) Nombre d'utilisateurs qui reviennent sur votre application 15 jours ou plus après leur dernière utilisation.
first_open Événement Analytics déclenché lorsqu'un utilisateur ouvre une application pour la première fois après l'avoir installée ou réinstallée. Utilisé dans le cadre d'un entonnoir de conversion.

Autres métriques

Métrique Description
notification_dismiss Événement Analytics qui se déclenche lorsqu'une notification envoyée par l'outil de création de notifications est ignorée (Android uniquement).
notification_receive Événement Analytics déclenché lorsqu'une notification envoyée par le compositeur de notifications est reçue alors que l'application est exécutée en arrière-plan (Android uniquement).
os_update Événement Analytics qui suit la mise à jour du système d'exploitation de l'appareil vers une nouvelle version. Pour en savoir plus, consultez la section Événements collectés automatiquement.
screen_view Événement Analytics qui suit les écrans consultés dans votre application. Pour en savoir plus, consultez Suivre les vues d'écran.
session_start Événement Analytics qui comptabilise les sessions utilisateur dans votre application. Pour en savoir plus, consultez la section Événements collectés automatiquement.