Comment réaliser un A/B Test par redirection pour tester un nouveau parcours ?

Réalisez un A/B Test par redirection pour tester les performances d'un nouveau parcours d'inscription

Publié par Adrien Millet le 27 août 2020

Contexte

Vous devez déterminer si le nouveau parcours d’inscription est plus performant que l’actuel. Pour cela, vous allez rediriger 50% de votre audience vers le nouveau parcours d’inscription. Le nouveau parcours d'inscription a été déployé en Single Page Application.

Prérequis

Déploiement en production du nouveau parcours d’inscription. Ce nouveau parcours doit être correctement tracké : les solutions webanalytics et médias doivent permettre de remonter de la donnée.

La liaison entre vos outils d’A/B Testing et de webanalytics doit être correctement paramétrée.

A avoir en tête

Les parcours d’inscriptions sont des composants critiques (comme les formulaires). Vous devez donc particulièrement soigner votre recette pour cet A/B Test.

Dans ce cas de figures un travail important a été effectué en amont par l’équipe de développement (qui vous livre clé en main un nouveau parcours d’inscription). Ces derniers peuvent donc avoir tendance à défendre leur livrable même si ce dernier affiche des performances en demi-teinte. Vous devez donc être particulièrement rigoureux dans l’analyse, qui ne doit laisser aucun angle mort.

Pour cet A/B Test, vous allez devoir analyser les données post inscriptions : les visiteurs qui se sont inscrits via le nouveau parcours d'inscription ont-ils ensuite effectué des achats ? Pour quel montant ? Vous devez vous intéresser aux conversions post-inscriptions suivant une période cohérente avec votre cycle de vente. Cela signifie que si vous étudiez les données post-conversions sur 30 jours, avec une durée de paramétrage de l'A/B Test de 2 semaines et un test actif pendant également 2 semaines, il faudra compter 2 mois entre le brief initial de l'A/B Test et la présentation des résultats complets de l'analyse.

Fonctionnement

Vos visiteurs peuvent arriver sur votre parcours d’inscription de 2 manières :

  • 1er cas de figure : En arrivant directement dans le parcours d’inscription
  • 2ème cas de figure : En cliquant sur un lien de votre site le conduisant au parcours d’inscription

Pour le premier cas de figure, vous allez devoir utiliser le module de redirection de votre outil d’A/B Testing. Pour cela, sur Kameleoon il faut utiliser la commande processRedirect. La documentation est disponible ici

Vous obtiendrez ainsi un code du type :

Kameleoon.API.Core.processRedirect("https://www.monsite.fr/inscription_version2");

Cette méthode va générer un léger effet de flickering : la page originale de votre parcours va se charger pendant quelques instants puis la variation. Cela va donc handicaper (légèrement !) l’expérience utilisateur.

Vous pouvez contourner le problème avec le deuxième cas de figure : pour rediriger une partie de votre audience vers le nouveau parcours d’inscription, il vous suffit de remplacer les liens de votre site envoyant vers votre parcours d’inscription de manière.

Gestion du duplicate content SEO

Pour ce test, 2 parcours d'inscription au contenu identique ont été créés. Or, le "duplicate content" peut être sanctionné par les moteurs de recherche. Pour éviter cette pénalisation, nous vous conseillons d'ajouter sur le doublon de la page nouvellement créée une balise rel="canonical", qui va indiquer aux moteurs de recherche que la page /inscription_version2 est une copie, et que la page /inscription est l'originale

<link rel="canonical" href="https://www.monsite.fr/inscription">

Variations

1er cas de figure [remplacement des liens d'inscription]

Dans Kameleoon et AB Tasty, le fonctionnement sera le même, il n’y a pas de code de suivi spécifique à ces 2 solutions :

if(document.querySelectorAll('a[href*="\/inscription\"]').length >0){
NbBoutonInscription = document.querySelectorAll('a[href*="\/inscription\"]').length;
for (i=0 ; i < NbBoutonInscription ; i++){
lienCreerCompte = document.querySelectorAll('a[href*="\/inscription\"]')[i];
lienCreerCompte.setAttribute('href','https://www.monsite.fr/inscription/V1');
} }

2ème cas de figure [redirection des visiteurs arrivant directement dans le parcours d’inscription]

var ABTest2UrlRedirection = document.URL;
var ABTest2Parametres = document.location.search;
if(document.location.href.indexOf("https://www.monsite.fr/inscription/") > -1 && document.location.href.indexOf("V1") == -1){
Kameleoon.API.Core.processRedirect(“https://www.monsite.fr/inscription/V1” + document.location.search);
Kameleoon.API.Core.enableSinglePageSupport();
}

La première ligne permet de cibler la première page du parcours d’inscription originale uniquement, sinon vous allez générer une boucle de redirections…

La ligne suivante permet d’effectuer la redirection dans Kameleoon (documentation disponible ici Kameleoon.API.Core.processRedirect("https://www.monsite.fr/inscription/V1");

Le parcours d’inscription est en single page application : le passage de l’étape 1 à l’étape 2 ne passe donc pas par un nouveau chargement de page. Nous souhaitons que lorsqu’un visiteur est exposé à la variation 1, il voie toujours cette variation s’il passe à l’étape 2 puis clique sur le bouton “Retour”. Pour que ce soit correctement géré dans Kameleoon, il faut ajouter la ligne Kameleoon.API.Core.enableSinglePageSupport(); Plus d'infos ici

Ciblage

Vous devez déclencher cet AB Test sur les pages pour lesquelles un lien d’inscription est présent (pour remplacer les liens d’inscription) et sur la première étape du parcours d’inscription (pour effectuer la redirection).

Vous pouvez donc utiliser la condition JavaScript personnalisée suivante :

if(document.querySelectorAll("a[href~='/inscription']").length > 0 && document.location.href.indexOf("https://www.monsite.fr/inscription/") > -1 {return true}

Tracking

Comme un lien vers le parcours d’inscription est en général présent dans le menu de votre site, cela signifie que votre A/B Test sera actif sur l’immense majorité des pages de votre site. Cela va poser problème pour vos analyses, puisque vous allez avoir un volume très important d’utilisateur exposé par rapport à ceux qui sont réellement entrés dans le parcours d’inscription. Pris de manière brute, vos taux de conversion seront donc (très!) éloignés de la réalité. Pour contourner ce problème, vous allez devoir ajouter un hit de conversion Kameleoon/AB Tasty qui se déclenchera lorsque les visiteurs entreront dans votre parcours de conversion.

Dans Kameleoon, vous allez devoir créer l’opjectif “test2_impression” et dans le code de votre variation vous allez devoir ajouter :

if(document.location.href.indexOf("V1") > -1){ Kameleoon.API.Goals.processConversion(216129) }

Voir l’article "Comment paramétrer une conversion dans Kameleoon”

Le code que vous obtenez pour votre variation

//1er cas de figure : modification des liens d'inscription
if(document.querySelectorAll('a[href*="\/inscription\"]').length >0){
NbBoutonInscription = document.querySelectorAll('a[href*="\/inscription\"]').length;
for (i=0 ; i < NbBoutonInscription ; i++){
lienCreerCompte = document.querySelectorAll('a[href*="\/inscription\"]')[i];
lienCreerCompte.setAttribute('href','https://www.monsite.fr/inscription/V1');
}
}
//2ème cas de figure : redirection lors de l'arrivée de l'utilisateur en page d'inscription
var ABTest2UrlRedirection = document.URL;
var ABTest2Parametres = document.location.search;
if(document.location.href.indexOf("https://www.monsite.fr/inscription/") > -1 && document.location.href.indexOf("V1") == -1){
Kameleoon.API.Core.processRedirect(“https://www.monsite.fr/inscription/V1” + document.location.search);
Kameleoon.API.Core.enableSinglePageSupport();
}
//Tracking des arrivées en page d'inscription
if(document.location.href.indexOf("V1") > -1){
Kameleoon.API.Goals.processConversion(216129)
}

Le code que vous obtenez pour la version originale

//Tracking des arrivées en page d'inscription
if(document.location.href.indexOf("V1") > -1){
Kameleoon.API.Goals.processConversion(216129)
}

Analyse des résultats

Pour analyser les résultats de votre A/B test, vous allez devoir filtrer le rapport AB Tasty/Kameleoon sur les visiteurs qui ont réalisé l’action “test2_impression”. Cela vous permettra de suivre régulièrement les performances de votre test et d’en dresser un premier diagnostic.

Dans un second temps, vous allez devoir utiliser les données de votre outil de weba pour avoir les données à J+30.

Suivant votre cycle de vente, il va falloir s’intéresser à une période post inscription plus ou moins longue et vous allez devoir étudier le comportement de vos visiteurs au cours des sessions ultérieures à la session qui a converti, c'est-à-dire hors périmètre de l’A/B Test (et donc en dehors des rapports de votre solution d’AB Testing).

Vous allez donc devoir étudier les données post conversion grâce à votre outil de webanaytics (ou à vos données CRM). Pour cela, réalisez 2 extracts :

  • Un premier extract de l’ensemble des identifiants clients qui se sont inscrits pour chaque parcours d’inscription
  • Un second extract avec l’ensemble des conversions réalisées par identifiant client dans les 30 jours ultérieurs

Vous devez ensuite fusionner ces 2 tables directement sous Excel si ces données ne sont pas trop volumineuses ; sous Big Query sinon.