Le Blog des consultants Converteo
Ce blog est alimenté par les consultants de Converteo. Découvrez aussi notre site pour plus d’informations sur le cabinet et ses prestations.

Retour aux articles du blog

Google Analytics : domaines, sous-domaines & conversion (Astuce N°8)

Posté dans Web analytics
Par Thomas Faivre-Duboz
04 février 2010
13 commentaires

Suite de nos articles sur les subtilités de Google Analytics : comment paramétrer Google Analytics lorsque l’on veut suivre sur un même profil plusieurs domaines ou sous-domaines ? (voir les cas possibles ci-dessous)

Tout d’abord : quel est l’intérêt ? Considérons par exemple le cas où vous possédez un site d’e-commerce et que votre processus de finalisation (panier, confirmation) est hébergé sur un sous-domaine ou un domaine différent de celui qui héberge le site. Si vous ne paramétrez pas bien votre Google Analytics, les commandes effectuées seront considérées comme étant générées par le domaine qui héberge le site (en lien référent), et non par les vraies sources de trafic à l’origine des commandes (Adwords, affiliation, e-mailing, …) utilisées par le visiteur pour arriver sur le domaine principal. Ce qui signifie tout simplement qu’il est impossible de suivre l’efficacité des investissements e-marketing (impossible de relier l’investissement e-marketing à la transaction finale)

Le principe d’agréger les visites de plusieurs répertoires/sous-domaines/domaines permet donc de faire en sorte que l’expérience du visiteur qui passe par plusieurs de ces parties soit considérée de manière uniforme (une seule source de trafic au début de la visite, suivi du temps de visite global, …)

Comment faire ? Il faut tout d’abord modifier le code Google Analytics ajouté sur les sites en rajoutant des appels à des fonctions qui permettront d’agréger sur un même profil des visites parcourant plusieurs répertoires, sous-domaines ou domaines composant votre site. Pour s’assurer que le tracking persiste lorsqu’un visiteur change de domaine, vous devrez aussi modifier les liens entre les sous-domaines pour qu’ils incluent des codes de tracking supplémentaires.
Au minimum, certaines fonctions doivent être ajoutées entre la définition du tracker (var pageTracker = _gat._getTracker(« UA-12345-1 »);) et l’appel de la fonction trackPageview qui comptabilise la visite (pageTracker._trackPageview();).

Voici les cas possibles traités par Google Analytics (traduction de l’adresse originale en anglais)

Type de tracking Exemples de domaines Configuration nécessaire
Limité à un sous-répertoire www.example.com/myStore _setCookiePath(« /myStore/ »);
Entre deux sous-répertoires d’un même domaine
  • www.example-commerce-host.com/myStore
  • www.example-commerce-host.com/myCart
_setCookiePath(« /first/Path/ »);
_cookiePathCopy(« /new/Path/ »);
Entre un domaine et un sous-répertoire sur un autre domaine
  • www.example-petstore.com
  • www.example-commerce-host.com/petStoreCart
_setDomainName(« none »);
_setAllowLinker(enable);
_setAllowHash(false);
_link();
_linkByPost();
Au sein d’un domaine et ses sous-domaines
  • www.example-petstore.com
  • dogs.example-petstore.com
  • cats.example-petstore.com
_setDomainName(« .example-petstore.com »);
_setAllowHash(false);
Entre plusieurs domaines & sous-domaines
  • www.example-petstore.com
  • www.my-example-blogsite.com
  • dogs.example-petstore.com
_setDomainName(« none »);
_setAllowLinker(enable);
_setAllowHash(« false »);
_link();
_linkByPost();
Mesurer un iFrame hébergé sur un autre domaine
  • www.example-parent.com
  • www.my-example-iframecontent.com
iframe.src = pageTracker._getLinkerUrl(« http://www.my-example-content.com »);

N’hésitez pas à cliquer sur les cas particuliers à gauche (liens) pour en savoir plus sur chacune des possibilités. Avec le(s) code(s) modifié(s), toutes les données provenant des sous-répertoires/sous-domaines/domaines sélectionnés remontent maintenant dans un seul et même profil.

Cependant, ce n’est pas encore fini car Google Analytics, dans le paramétrage standard, ne remonte « que » la partie des URLS visitées qui se trouve après le nom de domaine. Par exemple, http://www.exemple1.com/index.html et http://www.exemple2.com/index.html seront considérées comme une même page par Google Analytics (/index.html). Il faut donc préciser à Google Analytics que le paramétrage doit faire remonter les URLs entières (incluant le domaine ou sous-domaine) et non la partie se situant après le premier slash.

Pour cela, vous devez ajouter un filtre à votre profil pour « reconstruire » les URLs qui vont remonter dans Google Analytics :
Vous pouvez créer un filtre « Avancé » à appliquer à votre profil, avec les paramètres suivants :
Type de filtre : Filtre personnalisé > Avancé
Champ A : Nom de l’hôte
Extraire A : (.*)
Champ B : URI de la demande
Extraire B : (.*)
Sortie vers : URI de la demande
Constructeur : /$A1$B1

Ce filtre concatène le nom de l’hôte et la deuxième partie de l’URL pour « reformer » l’URL entière de la page qui a été visitée.

Une fois ce filtre appliqué à votre profil, Google Analytics fera apparaître différemment les deux URLs prises en exemple :
http://www.exemple1.com/index.html
http://www.exemple2.com/index.html

N’hésitez pas à parcourir la page spécifique du site d’aide Google Analytics, ou à nous solliciter pour des projets complexes.

13 commentaires sur cet article

  • PumpUp
    05 février 2010

    Merci pour cet article très précis.

  • Aurélien
    07 septembre 2010

    Merci pour ce guide, il va m’être très utile!

  • Alex
    06 janvier 2012

    Bonjour, merci pour ce billet !

    Juste une petite précision : la variable _setAllowHash()est obsolète.

    En complément, je recommande fortement cette présentation :

    http://goo.gl/Frrwa

  • Alexis
    21 février 2012

    Bonjour, merci pour ce billet. Ce sujet est en effet complexe. Nous avons un site e-commerce http://www.domain.com où la transaction se fait sur un sous domaine http://www.paiement.domain.com. Nous avons lié les 2 sites sous un même compte analytics avec le _gaq.push([‘_setDomainName’, ‘.domaine.com’])Cela fonctionne pour les visites et le tunnel de conversion. Mais il attribue toutes les conversions à http://www.domain.com (referral) et non aux sources de trafics (cpc…). On va tenter de rajouter un _gaq.push([‘_addIgnoredRef’, ‘.domain.com’]); mais on est pas sur du résultat. Vous auriez un conseil ?
    Merci 🙂

  • Thomas Faivre-Duboz
    08 mars 2012

    Bonjour,

    Non addignoredref ne marchera pas, car il va juste faire comme si c’était du trafic direct, et donc attribuer toutes les conversions au direct.

    De ce que je vois le code setdomain name est correctement écrit. Avez-vous respecté un ordre particulier pour l’appel des fonctions du code ?

    Cdt,

  • Alexis
    08 mars 2012

    Bonjour Thomas,
    merci pour ce retour.
    En fait, au passage vers le sous domaine, le tag (utmz) ne suit pas. Il est écrasé par un « referal ». Nous allons essayé d’utiliser le « link » et « linkbypost » pour forcer son passage.

    Voici le tag en place :
    var _gaq = _gaq || []; _gaq.push([‘_setAccount’, ‘UA-xxxxxxxxxxx’]); _gaq.push([‘_setDomainName’, ‘domain.com’]);
    _gaq.push([‘_trackPageview’]);

  • Thomas Faivre-Duboz
    08 mars 2012

    Si vous essayez le link / linkbypost, il ne faut pas oublier l’appel au setallowlinker(true) dans le code GA.

    Bon courage !

  • Alexis
    09 mars 2012

    Le link semble fonctionner ! Merci 😉

  • François
    05 avril 2012

    Bonjour Thomas,

    Je suis exactement dans le même cas de figure que Alex et je rebondis sur votre dernière remarque.

    En effet, dans la documentation Google Analytics sur Google Code, il est précisé que les commandes link et linkbypost ne devaient être utilisées que lorsque le setDomainName était paramétré sur « none ».

    Qu’en pensez-vous ?

  • Thomas Faivre-Duboz
    10 avril 2012

    Bonjour,

    En revérifiant la documentation, je pense qu’il vaut mieux ne pas indiquer « none » dans le setDomainname quand on fait du tracking multi-domaines. Voir bas de cette page : http://code.google.com/apis/analytics/docs/tracking/gaTrackingSite.html

    _setDomainName(‘.yourDomainName’)
    « Also use this when you want to track across multiple top-level domains AND their sub-domains. »

    Cdt,

  • François
    24 avril 2012

    Bonjour Thomas,

    Je reviens vers vous pour vous informer que mon problème a été résolu.

    En fait, mon marqueur comportait les paramètres _trackPageLoadTime et _trackPageview avec un _trackPageview comportant une valeur personnalisée sur le sous-domaine.

    Pour régler le problème, il suffit de déplacer _trackPageview en toute dernière position.

    Remarque : depuis le 16 novembre 2011, le _trackPageLoadTime est ignoré (http://support.google.com/analytics/bin/answer.py?hl=fr&answer=1205784)

  • Quentin
    19 novembre 2013

    Bonsoir,

    J’ai attentivement lu votre article, et il répond en grande partie à ce que je souhaitais faire.

    Malheureusement, dans mon cas, nous avons un blog.domaine.com et un http://www.domaine.com, et chacun des deux sites possède son propre code de tracking analytics.

    Sur la Doc de Google, et dans votre article, on part du principe que le code analytics est le même sur les deux sites n’est-ce pas ?

    Comment faire du coup lorsque ce n’est pas le cas ?

  • […] domaine ou ou sous-domaine différent de la page sur laquelle il est implémenté il faudra alors mettre en place les fonctions nécessaires au tracking multi-domaines sur les deux pages (_setDomainName() et […]

Laisser un commentaire

Articles qui pourront vous intéresser
Contactez-nous
Pour obtenir plus d'informations sur nos activités et discuter de vos projets directement avec nos consultants, nous vous invitons à nous contacter.
Nous contacter
En parcourant converteo.com, vous acceptez notre utilisation des cookies.