J’ai récemment pris conscience ici et là de l’utilité qu’il pourrait y avoir pour certains utilisateurs à customiser la manière dont Google Analytics analyse et présente les visites provenant des moteurs de recherche. J’ai toujours estimé que les possibilités de customisation constituaient un des atouts premiers de Google Analytics. En revanche, à moins que l’on ne soit un réel bidouilleur dans l’âme, certaines customisations très utiles ne sont pas aussi bien documentées dans le centre d’aide que ce que l’on aurait pu souhaiter.
On commencera par identifier deux types de customisation possibles dans ce cas de figure: 1. ajouter des moteurs de recherche qui apparaissent actuellement comme du “referral” (donc on compte les visites, mais on n’a pas le breakdown par mot-clé), et 2. obtenir un découpage plus fin pour un moteur de recherche déjà reconnu (voir la proportion de trafic qui provient du .fr de Google vs. le .com par ex.)
1. Ajouter des moteurs de recherche qui ne sont pas pris en compte par Google Analytics:
Je commencerai par préciser que nous avons récemment fait un update du fichier urchin.js qu’utilise Google Analytics pour identifier les moteurs de recherche. Dorénavant donc, seront pris en compte: Club Internet, AOL France ainsi que Voici (Orange). Ce dernier avait été prit en compte précédemment mais a avait entre-temps changé le paramètre d’URL qui stockait le mot-clé (c’était ‘q’, on imagine pour ‘query’ et un beau jour, c’est devenu ‘rdata’ – toute suggestion est la bienvenue quant à la raison). Free, en revanche, ne laisse pas le mot-clé d’une requête apparaître à la lumière du jour et donc restera à jamais une énigme.
Si c’était donc un de ces moteurs-là qui vous intéressait, vous pouvez d’ores et déjà passer au point numéro 2. Pour les autres, nous allons prendre comme exemple le moteur français Exalead. Pour rajouter un quelconque moteur, il suffit de préciser dans le tag Google Analytics qui figure sur toutes vos pages (dorénavant GATC – Google Analytics Tracking Code) deux éléments:
a. une partie du domaine qui lui est distinctif (en l’occurrence, on va choisir “exalead”)
b. le paramètre de l’URL de referer qui précise le mot-clé (donc la page de résultats)
Pour obtenir ce paramètre, je vais simplement taper un mot-clé dans exalead et regarder attentivement l’URI de la page de résultats: /search/results?q=c+est+vraiment+d+une+simplicite+enfantine
Il nous reste simplement à rajouter à notre GATC une petite ligne qui comprend ces deux éléments, en respectant scrupuleusement la syntaxe précisée dans le centre d’aide.
<script src=”http://www.google-analytics.com/urchin.js” mce_src=”http://www.google-analytics.com/urchin.js” type=”text/javascript”></script>
<script type=”text/javascript”>
_uacct = “UA-xxxxxx-1″;
_uOsr[100]=”exalead”; _uOkw[100]=”q”;
urchinTracker();
</script>
Lorsque je dois rajouter des moteurs dans le GATC, je commence toujours à compter à partir de 100. De cette manière-là, je ne suis pas obligé de changer mon code à chaque fois que Google Analytics rajoute un ou plusieurs moteurs au urchin.js, comme cela a été le cas récemment et comme ce sera de plus en plus souvent le cas avec la localisation de Google Analytics dans un nombre toujours croissant de langues (depuis peu accessible en Polonais et en Turc ).
2. Obtenir un breakdown plus poussé d’un moteur déjà pris en compte (par sous-domaines ou par extensions de pays par ex.):
En fonction de l’objectif de votre site web, il se pourrait que vous ayez l’utilité de faire le distinguo entre le trafic qui vous provient de google.com de celui de google.fr ou alors voir la différence de mots-clés entre www.google.com et news.google.com
C’est tout à fait possible, mais avant de s’embarquer dans pareille aventure, il faut bien se souvenir que les moteurs de recherche listés dans le urchin.js sont numérotés et donc s’appliquent en série. Il faut donc s’assurer que les “nouveaux” moteurs que nous allons rajouter (en l’occurrence, news.google et google.fr), qui sont plus spécifiques, s’appliquent avant la règle plus générique
_uOsr[0]=”google”; _uOkw[0]=”q”;
dans le urchin.js. Dans le GATC, nous allons donc spécifier le chiffre 0 pour la première règle:
_uOsr[0]=”news.google“; _uOkw[0]=”q”;
C’est donc cette règle très spécifique qui va s’appliquer en premier, remplaçant ainsi la règle générique spécifiée dans la position 0 dans le urchin.js.
Et le numéro 100 et ainsi de suite pour les suivants:
_uOsr[100]=”google.fr”; _uOkw[100]=”q”;
_uOsr[101]=”google.be”; _uOkw[101]=”q”;
_uOsr[102]=”google.ca”; _uOkw[102]=”q”;
_uOsr[103]=”google.ch”; _uOkw[103]=”q”;
Sans oublier à la fin de replacer en dernière position la règle générique qui s’appliquera à tout le trafic moteur de recherche de Google qui n’aura pas été pris en compte par les règles précédentes:
_uOsr[104]=”google”; _uOkw[104]=”q”;
Juste pour compléter le GATC, on pourra rajouter une règle pour capturer lesmots-clés issus de la recherche avancée de Google:
_uOsr[105]=”google”; _uOkw[105]=”as_q”;
(Comme ici, c’est le paramètre qui change, on pourrait théoriquement le placer à n’importe quel stade. Aucune hiérarchie n’est nécessaire dans ce cas.
Et nous avons maintenant notre killer GATC désormais prêt à l’usage:
<script src=”http://www.google-analytics.com/urchin.js” mce_src=”http://www.google-analytics.com/urchin.js” type=”text/javascript”></script>
<script type=”text/javascript”>
_uacct = “UA-xxxxxx-1″;
_uOsr[0]=”news.google”; _uOkw[0]=”q”;
_uOsr[100]=”google.fr”; _uOkw[100]=”q”;
_uOsr[101]=”google.be”; _uOkw[101]=”q”;
_uOsr[102]=”google.ca”; _uOkw[102]=”q”;
_uOsr[103]=”google.ch”; _uOkw[103]=”q”;
_uOsr[104]=”google”; _uOkw[104]=”q”;
_uOsr[105]=”google”; _uOkw[105]=”as_q”;
_uOsr[106]=”exalead”; _uOkw[106]=”q”;
urchinTracker();
</script>
Une autre solution consisterait à héberger directement le urchin.js sur vos serveurs et le modifier directement. Web-analytique.com décrit la procédure à la perfection ici.
Une petite mise en garde cependant: il faut surtout bien réfléchir en amont si vous avez réellement besoin d’une segmentation plus poussée. Le principal challenge du Web Analytics est de réussir à identifier des informations pertinentes et exploitables au sein d’un épais camouflage de données inutiles pour ensuite définir des pistes d’optimisations importantes. Pour faire ressortir ces informations de la manière la plus claire possible, j’essaie toujours de faire en sorte que mes données soient aussi détaillées que nécessaire, mais demeurent aussi agrégées que possible (on pourrait baptiser cela “Alan’s first law of Web Analytics”:) ). En d’autres termes, si les données qui en ressortent ne sont pas exploitables pour l’optimisation, ce n’est pas juste qu’elles sont alors inutiles, mais détrimentales – ce qui est bien plus grave.
Ce n’est là que mon point de vue – un point de vue que je vous mets par ailleurs au défi d’influencer voire de changer. Alors, bonne idée ? Mauvaise idée ? À vous de me dire ce que vous en pensez…
[EDIT: Si vous voulez d'une traite prendre en compte l'ensemble des moteurs de recherche qui concernent le marché français, vous pouvez utiliser le script développé par Olivier, accessible sur son blog.]



This thing has 9 Comments
Bravo pour cette initiative Alan.
Au plaisir de se croiser au détour d’un salon,
Adrien Naeem
PS : et tu sais qu’un interview sur WA.com t’est toujours ouvert
Merci pour le tuto…
mais personnelement je ne voix pas l’intérét d’une tel manoeuvre sur tt que les moteurs de recherche d’orange ou autre ne passe qu’assez rarement et que ca ne changera pas grand chose dans la marge (je dirais pas d’erreur) mais d’éxactitude des stats qu’il y a… surtout que c moteur de recherche ne passe qu’assez rarement voir jamais…
(Résultats reçus en comarant avec d’autre utilitaire de stats voir phpmyvisites et xiti)
et la meilleurs façon pour avoir des resultats (presque)exact c’est d’installer awstats
@Adrien:
on s’attrappe au Salon eCommerce en Septembre? Bonne continuation à toi
@Scorpus:
Merci pour ton feedback. Que les résultats diffèrent avec des outils qui se basent au moins en partie sur l’analyse de web server logs, c’est la chose la plus normale qui soit (tant que les tendances et proportions relatives demeurent sensiblement analogues). En revanche, que tu constates des différences importantes ( de 10%) entre Google Analytics et XiTi, en particulier en ce qui concerne le trafic search, cela me surprend énormément. Je les ai déjà fait tourner en parralèle sur de nombreux sites et je n’ai jamais constaté les différences dont tu parles. Si tu veux, on pourra regarder plus précisément le cas de ton site.
Sinon, en ce qui concerne Orange, le trafic en question aparaitra comme provenant de voila/organic (sauf bien entendu pour la période suivant les modifications du paramètre de mot-clé chez voila).
Merci pour ce billet, qui fournit des réponses que je ne trouvais pas ailleurs, notamment pour éviter les conflits entre les indices du script urchin.js et ceux rajoutés dans le GTAC ainsi que pour le suivit des mots-clés depuis Google News et Google Images.
J’espère qu’il y en aura d’autres du même type, car s’il est vrai qu’Analytics est un outil extrêmement puissant, l’usage de toutes ses possibilités est souvent limité par une aide officielle parfois un peu trop succincte.
Salut Alan et merci pour l’article (et pour les aides fournies sur Google Groups)
J’espère qu’on aura l’occasion de se rencontrer au salon eCommerce à Paris
Hello Alan, et beau blog!
Comme pour Adrien, on se verra a Paris pour le salon ecommerce!
Côté OX2, notre salon Web Analytics Day 2007 se peaufine pour le 14 septembre (dans la foulée!)
Pour l’ajout des moteurs de recherche et pour eviter de se faire avoir si Google atteint 100 moteurs de recherche,
on peut aussi utiliser Javascript pour determiner la taille de l’array _uOsr et ajouter dynamiquement les nouveaux moteurs après cette limite.
Amicalement,
Julien
Merci Alan pour cet article bien plus complet que le mien
Je découvre ton blog et rajoute ton flux immédiatement dans mon lecteur,
Olivier
@TOMHTML: Pour eCommerce, you’ve got yourself a deal!
@Julien: Votre conférence a vraiment l’air géniale. Je suis VERT de ne pas pouvoir être des vôtres (mon budget conférences à été miné par SES San Jose).
@Olivier: Merci pour les encouragements
À bientôt peut-être…
concernant une petite comparaison je suis partant… je te laisse mon mail dans le poste pour rentré en contact.