Continúo con los apuntes y notas sobre los videos de la ConversionUniversity de Google para preparar el GAIQ Test (Google Analytics Individual Qualification). Con este video finaliza la Sección Fundamentos de Google Analytics, estamos en el ecuador.
Video 9. Dominios y Subdominios. GAIQ Test
Google Analytics usa únicamente cookies «first-party», por lo que para trackear un usuario a través de múltiples dominios necesitaremos enviar la información de la cookie al otro sitio.
_link( ) es el método que permite a GA trackear un usuario a través de múltiples dominios. Funciona enviando las cookies vía los parámetros de URL. Hay que seguir dos pasos:
PASO 1. añadir código al GA tracking code
- _gaq.push([‘_setDomainName’,’none’]); el argumento es ‘none’
- _gaq.push([‘_setAllowLinker’,true]); el argumento es true
PASO 2. añadir el método _link( ) a todos los links entre dominios
<a href=’http://www.youtue.com» onclick=»_gaq.push([‘_link’,’http://www.youtube.com’]); return false;»>Visitar YouTube</a>
… y viceversa.
«Así, cuando un usuario va de un dominio a otro, la información de sesión se preserva: el usuario es el mismo»
Si usamos un formulario para ir de un dominio al otro hay que usar el método _linkByPost( ) en lugar de _link( ). Por ejemplo, en formularios de compra «third-party», pop-ups, iframes, etc.
<form action=»http://……………./accion.php» name=»f» method=»post» onsubmit=»_gaq.push([‘_linkByPost’,this]);»></form>
SUBDOMINIOS
Al usar cookies «first-party» es necesario compartir explicitamente la información de cookie entre subdominios o perderemos la información de SESIÓN. Si no la compartimos nuestro propio sitio es un «referrer» de nosotros mismos ya que solo UN dominio es el dominio PRINCIPAL.
Necesitamos invocar el método _setDomainName( ) y especificar el dominio padre como argumento. De esta forma GAtc usará la misma cookie:
-gaq.push([‘_setDomainName’,’.google.com’]);
Esto provoca un efecto colateral no deseado: GA no diferenciará entre visitas a páginas que se llamen igual (por ejemplo, home.html) dentro de los diferentes subdominios. Es necesario establecer un FILTRO avanzado.
BUENAS PRÁCTICAS
Crear un PERFIL separado para cada subdominio, además del perfil principal. El principal sin FILTROS, los otros con un filtro Include (cada uno a su subdominio)
Los Informes de GA solo muestran las «Request URI» (por ejemplo: /home.html) El hostname se guarda en el campo «Hostname» en GA
Por ejemplo: http://maps.google.com/home.html
Es necesario establecer un FILTRO avanzado para incluir el subdominio en los informes.
Filter Type: Custom filter > Advanced. Field A: Hostname. Extract A: (.*) Field B: Request URI Extract B: (.*)
Output To: Request URI
Constructor: /$A1$B1
Múltiples dominios con subdominios
_gaq.push([‘_setDomainName’,’.domain1.com’]);
_gaq.push([‘_setAllowLinker’,true]);
_gaq.push([‘_setAllowHash’,false]);
Para el dominio2 y sus subdominios lo mismo pero cambiando el argumento de _setDomainName a ‘.domain2.com’
Y en segundo lugar llamar a _link( ) ó _linkByPost( ) para los enlaces dominio1 <–> dominio2 (pero NO en enlaces entre subdominios del mismo dominio).
Aquí os dejo un enlace a un artículo donde se explica cómo medir el tráfico en webs multidominio.
Muy interesante René. Y muy bien explicado.
Una duda: En el caso de que tengamos iframes con contenido
de otro dominio.¿Como lo configuro??
MIl gracias de antemano
Saludos.
Hola Gonzalo y gracias por tu comentario. Esto es lo que he podido encontrar en https://developers.google.com/analytics/devguides/collection/gajs/gaTrackingSite#trackingIFrames
«In a site where the transfer between domains is done by opening a new window or by including content in an iFrame, you will need to to use the _getLinkerUrl() method to transfer visitor and campaign cookies from one domain to another. For example, suppose you include a form in an iFrame that is hosted on http://www.my-example-iframecontent.com. In order to transfer visitor information from the parent page that hosts the iFrame on example-parent.com, you would use JavaScript to load the iFrame and pass in the cookie information using the _getLinkerURL() method.»
No sé si resuelve tus dudas. Si no, podemos seguir investigando y concretando.
Un saludo
Thanks for sharing.