Zoom sur le "groupe de déclencheurs" de Google tag manager

Une nouvelle fonctionnalité gadget ?

12 mai 2019
Le 26 mars 2019, un membre de l'équipe de développement de Google tag manager annonçait la mise à disposition d'une nouvelle fonctionnalité : les "groupes de déclencheurs". Ce nouveau type de règle, permettant l'exécution d'un tag, venait ainsi rejoindre la longue liste de ses prédécesseurs : chargement d'une page, clic sur un élément, envoi de formulaire, profondeur de défilement, affichage d'un élément, interaction avec un lecteur Youtube, détection d'une erreur JavaScript, réception d'un événement personnalisé, usage de l'API history du navigateur et enfin le minuteur. Ouf ! La perspective de pouvoir regrouper plusieurs déclencheurs, au vue de la longue liste de types de règles existantes, constitue une promesse bien séduisante. Cette première impression perdure-elle à l'issue d'une analyse détaillée ?

Principe de fonctionnement du "groupe de déclencheurs"

Le fonctionnement détaillé d'un "groupe de déclencheur" est exposé sur l'aide en ligne de Google tag manager.

En résumé, il s'agit d'un nouveau type de déclencheur, qui permet de regrouper en son sein plusieurs déclencheurs existants, y compris d'autres groupes de déclencheurs. Lorsque l'ensemble des règles se trouvant au sein d'un "groupe de déclencheurs", ont été évaluées comme étant justes au minimum une fois, le groupe de déclencheurs est à son tour évalué comme valide. Le ou les tags liés au "groupe de déclencheurs" s'exécute alors.

A noter : si une même règle est spécifiée N fois dans un "groupe de déclencheurs", il faudra qu'elle ait été évaluée comme juste à minima N fois, pour que le "groupe de déclencheurs" soit jugé valide.

Pourquoi ajouter un énième type de déclencheur ?

Le "groupe de déclencheurs" permet donc de créer des règles de déclenchement cumulatives complexes, y compris sur des types de déclencheurs différents, ce qui était impossible jusqu'à présent de façon simple.

En effet, auparavant, la seule manière d'y parvenir était d'utiliser une variable couplée à un tag et deux règles de déclenchement. La logique était la suivante : lors du chargement d'une page, une variable X est définie avec une valeur par défaut "faux". Lorsque l'utilisateur accomplit la première action devant être réalisée, par exemple le défilement de la page à 50% de sa profondeur, le tag auquel est lié la règle de déclenchement "Scroll à 50%" met à jour la variable X et la fait passer à "vrai".

Dès lors, lorsque l'utilisateur en vient à réaliser une seconde interaction, mettons le clic sur un bouton d'appel à l'action, il est possible d'inclure une condition au sein de la règle de type clic ciblant le bouton en question, afin qu'elle soit jugée comme valide uniquement si la variable X est égale à "vrai".

Jusqu'au 26 mars dernier, il était donc nécessaire de "tordre" Google tag manager et d'avoir un très bon niveau de connaissance du fonctionnement de cet outil, afin de paramétrer des règles de déclenchement reposant sur des conditions cumulatives. Désormais, une règle de type "groupe de déclencheurs" faisant référence à deux déclencheurs, permet de répondre au cas d'usage exposé précédemment.

Si la simplification de l'outil est indiscutable, y-a-t-il pour autant matière à se réjouir ?

Ajouter un nouveau type de déclencheur : un choix discutable

En effet, l'usage du "groupe de déclencheurs" risque fort de se cantonner aux seuls utilisateurs maîtrisant déjà les diverses règles de déclenchement, mettant ainsi à la portée des utilisateurs intermédiaires des paramétrages qu'ils n'étaient pas en capacité de réaliser jusqu'à présent. Pour autant, les utilisateurs les moins avancés ne parviendront pas à coup sûr à comprendre l'intérêt de cette nouvelle fonctionnalité.

Lorsque des utilisateurs découvrent Google tag manager, ou sont amenés à l'utiliser peu fréquemment, ils sont le plus souvent effrayés par le volume de déclencheurs disponibles et ne comprennent pas toujours le sens de certains d'entre-eux, à la lecture de leur libellé. Il y a fort à parier que le terme "groupe de déclencheurs" renvoie pour eux davantage à la possibilité de cumuler plusieurs conditions au sein d'un même déclencheur, qu'à en cumuler plusieurs.

En ajoutant ce nouveau composant au sein de Google tag manager, Google continue à enrichir son outil de fonctionnalités intéressantes, exploitables par des utilisateurs intermédiaires/avancés, mais dont l'urgence ou la criticité du développement peinent à convaincre. Pourquoi ne pas avoir travaillé en priorité à résoudre un problème épineux auquel se trouve confronté tout utilisateur de l'outil : l'impossibilité au sein d'un même déclencheur de spécifier plusieurs conditions de déclenchement au moyen de l'opérateur logique OU et non uniquement au moyen de l'opérateur logique ET ?

Cet état de fait rend l'outil plus difficile à maîtriser et force l'utilisateur à créer plusieurs règles, afin de répondre à des besoins d'implémentations basiques. En résulte une inflation du nombre de règles, des difficultés de compréhension du fonctionnement des conteneurs et par extension un accroissement de la complexité de leur paramétrage et donc des coûts liés.

En conclusion

A l'image de multiples éditeurs de logiciel, Google a fait le choix avec Google tag manager de ne pas rendre sa feuille de route produit publique, ni de proposer à ses utilisateurs un espace central récapitulant les propositions de nouvelles fonctionnalités avancées qu'ils pourraient lui soumettre. Conséquence de ce manque de transparence, de nouvelles fonctionnalités sont ajoutées au produit sans qu'une réponse viable ait été préalablement apportée à des besoins basiques des utilisateurs. Si le "groupe de déclencheurs" ne saurait être qualifié de gadget, car il répond à un véritable besoin en terme de paramétrage, il démontre de façon éclatante l'un des inconvénients découlant du recours à un outil dans sa version gratuite, dont les orientations en terme de développement ne sont pas directement fixées par la masse de ses utilisateurs : des développements de fonctionnalités priorisés de façon discutable.