Medir los recorridos de los clientes en distintos dominios

La función de creación de enlaces de dominios permite medir dos o más sitios web relacionados de dominios distintos como si fueran uno solo. El framework gtag.js es un método común para medir la actividad en los productos de Google compatibles cuando los recorridos de los clientes abarcan más de un dominio.

Esta función comparte las cookies de medición propias entre un dominio de origen y un dominio de destino. Esas cookies se almacenan en un navegador web y solo pueden acceder a ellas las páginas del mismo dominio.

La configuración de la medición multidominio consta de dos pasos:

  1. El dominio de origen añade a las URL que apuntan al dominio de destino los valores de las cookies de medición propias.
  2. El dominio de destino comprueba la presencia de cookies de medición vinculadas.

La medición multidominio con gtag.js añade un parámetro de vinculación a las URL que apuntan al dominio de destino. En los parámetros de consulta de URL, ese parámetro de vinculación se identifica con la clave _gl:

https://www.example.com/?_gl=1~abcde5~

En el dominio de destino, gtag.js se configura de forma que compruebe si la URL contiene parámetros de vinculación. Si hay alguno válido, gtag.js extraerá la cookie de medición propia y la almacenará.

Configuración básica

Para configurar la medición multidominio en el dominio de origen para las URL que apuntan al dominio de destino, usa el comando set para crear un objeto linker. La función de vinculación detecta los clics en los enlaces que apuntan a los dominios de destino y añade automáticamente un parámetro de vinculación a las URL de esos enlaces.

El objeto linker requiere un parámetro domains, que es una matriz con al menos un dominio. Este código añadirá el parámetro de vinculación a los enlaces de una página que apunta al dominio de destino example.com:

<script async src="https://www.googletagmanager.com/gtag/js?id=GA_MEASUREMENT_ID"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('set', 'linker', {'domains': ['example.com']});
  gtag('js', new Date());

  gtag('config', 'GA_MEASUREMENT_ID');
</script>

Puedes enumerar varios valores de cadena en la propiedad domains. Si la propiedad domains tiene al menos un valor, gtag.js aceptará los enlaces de dominio entrantes de forma predeterminada, por lo que puedes usar el mismo fragmento de código en todos los dominios.

gtag('set', 'linker', {
  'domains': ['example.com', 'example-b.com']
});

decorate_forms

Si en tu sitio web tienes formularios que apuntan al dominio de destino, asigna el valor true a la propiedad decorate_forms.

gtag('set', 'linker', {
  'domains': ['example.com'],
  'decorate_forms': true
});

url_position

Para que el parámetro de vinculación aparezca en la URL después de un fragmento (#) en lugar de como parámetro de consulta (?) (por ejemplo, https://example.com#_gl=1~abcde5~), asigna el valor fragment al parámetro url_position.

gtag('set', 'linker', {
  'domains': ['example.com'],
  'decorate_forms': true,
  'url_position': 'fragment'
});

accept_incoming

Cuando un usuario llega a una página del dominio de destino a través de un parámetro de vinculación de una URL, gtag.js debe configurarse de forma que analice dicho parámetro.

Si el dominio de destino se ha configurado para vincular dominios automáticamente, aceptará los parámetros de vinculación de forma predeterminada. No se necesita código adicional en el dominio de destino.

Si el dominio de destino no está configurado para vincular dominios automáticamente, puedes indicar a la página de destino que busque parámetros de vinculación. Asigna el valor true a la propiedad accept_incoming.

gtag('set', 'linker', {
  'accept_incoming': true
});

Tabla de parámetros

Parámetro Tipo Valores aceptados
'accept_incoming' booleano true (predeterminado si domains tiene algún valor), false
'domains' matriz Matriz con al menos un dominio; por ejemplo, ['example1.com', 'example2.com']
'decorate_forms' booleano true, false (predeterminado)
'url_position' cadena 'query' (predeterminada), 'fragment'