Las páginas AMP se publican desde un dominio almacenado en la caché de AMP, que es diferente al dominio de su sitio web. Para seguir el recorrido de un usuario tanto en Caché de AMP como en las páginas de su sitio, puede utilizar AMP Linker, una función de Analytics para AMP que utiliza el ID de cliente de AMP para identificar al usuario y unificar sesiones de usuario.
AMP Linker añade un ID de cliente de AMP a los enlaces salientes de las páginas que están almacenadas en la caché de AMP. Las páginas etiquetadas con Google Analytics recuperan el ID de cliente de AMP de los parámetros de consulta de la URL y se unen a la sesión de usuario utilizando el ID de cliente de AMP como identificador de usuario.
En este artículo se describen los pasos necesarios para configurar AMP Linker con Google Analytics.
Cómo influye el ID de cliente de AMP en sus datos
Al sincronizar los ID de cliente de AMP entre una caché de AMP y el dominio del sitio web original se consigue que las métricas sobre los usuarios, como la duración de la sesión, el porcentaje de rebote y las páginas por sesión, sean más precisas. Tenga en cuenta que, para que el ID de cliente de AMP sea útil, los datos deben recogerse dentro de la misma propiedad de Google Analytics.
Configurar AMP Linker
Para configurar AMP Linker con Google Analytics, siga estos tres pasos:
1. Etiquetar las páginas AMP para transferir los parámetros de AMP Linker
Instale una etiqueta de Google Analytics, ya sea con la etiqueta de Google (gtag.js) o con Google Tag Manager. Siga las instrucciones correspondientes en función de la implementación que utilice.
Opción 1: Etiqueta de Google
Añada la etiqueta de Google para AMP predeterminada en sus páginas de destino AMP. Consulte el fragmento de ejemplo que aparece más abajo y haga los cambios siguientes:
Sustituya MEASUREMENT_ID
por el ID de seguimiento de la propiedad de Google Analytics a la que quiere enviar datos.
De forma opcional, si sus páginas AMP están alojadas en un dominio de nivel superior diferente a los enlaces salientes a su sitio, o bien si las páginas AMP no están en un subdominio conocido (es decir, no están en www., amp. ni m.), incluya una configuración de vinculación, tal como se muestra abajo. Añada el dominio en el que están alojadas las páginas AMP, así como los dominios de los enlaces salientes.
<script type="application/json">
{
"vars": {
"gtag_id": "MEASUREMENT_ID",
"linker": {
"domains": ["example.com", "example2.com"]
}
,
"config": {
"MEASUREMENT_ID": {
"groups": "default"
}
}
}
}
</script>
</amp-analytics>
gtag_id
solo puede utilizar un ID, pero este puede ser de cualquier producto de Google que utilice en su AMP, como Google Ads o Search Ads 360
.Opción 2: Google Tag Manager
Cree un contenedor AMP en Google Tag Manager
Añada una etiqueta de Google Analytics a su contenedor AMP.
Añada una etiqueta de vinculación de conversiones a su contenedor de AMP y seleccione "Habilitar vinculación entre diferentes dominios" y "Habilitar vinculación con ID de cliente de Google Analytics". Si sus páginas de destino AMP están alojadas en el mismo dominio de nivel superior que los enlaces salientes a su sitio web, puede dejar vacío el campo de dominios.
De forma opcional, si sus páginas AMP están alojadas en un dominio de nivel superior diferente a los enlaces salientes a su sitio, o bien si las páginas AMP no están en un subdominio conocido (es decir, no están en www., amp. ni m.), añada el dominio de nivel superior en el que está alojada su página AMP, así como los dominios de los enlaces salientes, como una lista delimitada por comas.
Utilice el fragmento de código predeterminado de Tag Manager en su página AMP. Consulte el ejemplo que aparece abajo y sustituya GTM_CONTAINER_ID
por el ID de su contenedor de Tag Manager.
<!-- Google Tag Manager →
<amp-analytics config="https://www.googletagmanager.com/amp.json?id=< GTM_CONTAINER_ID>>m.url=SOURCE_URL" data-credentials="include">
</amp-analytics>
Paso 2: Etiquetar las páginas que no son AMP para leer los parámetros de AMP Linker
Hay varias maneras de etiquetar las páginas que no son AMP para leer los parámetros de AMP Linker, así que le recomendamos que siga las instrucciones que mejor encajen con su configuración.
Opción 1: Etiqueta de Google
Incluya el fragmento gtag.js en las páginas que no son AMP. Consulte el siguiente fragmento de ejemplo:
- Sustituya
MEASUREMENT_ID
por el ID de seguimiento de la propiedad de Google Analytics a la que quiere enviar datos. - De forma opcional, si sus páginas AMP están alojadas en un dominio de nivel superior diferente a los enlaces salientes a su sitio, o bien si las páginas AMP no están en un subdominio conocido (es decir, no están en www., amp. ni m.), incluya una configuración de vinculación, tal como se muestra abajo. Añada el dominio en el que están alojadas sus páginas AMP, así como los dominios de los enlaces salientes.
<script async src="https://www.googletagmanager.com/gtag/js?id=MEASUREMENT_ID"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('set', 'linker', {
'domains': ['example.com', 'example2.com']
});
gtag('js', new Date());
gtag('config', 'MEASUREMENT_ID');
</script>
Opción 2: Google Tag Manager
Si utiliza el contenedor web de GTM, compruebe que este incluye la etiqueta de Google Analytics.
Si sus páginas AMP están alojadas en un dominio de nivel superior diferente a los enlaces salientes a su sitio, o bien si las páginas AMP no están en un subdominio conocido (es decir, no están en www., amp. ni m.), añada la configuración siguiente: en la etiqueta de Google Analytics, añada un campo "allowLinker" con el valor true siguiendo los pasos que se indican a continuación.
- Abra la variable de configuración de Google Analytics que quiera editar y, a continuación, haga clic en la tarjeta Configuración de la variable.
- Vaya a Más opciones > Campos que configurar.
- Haga clic en + AGREGAR CAMPO.
- En Nombre del campo, introduzca allowLinker. En Valor, introduzca true.
- Guarde la nueva configuración.
- Si usa más de una variable en los contenedores, repita los pasos anteriores en todas las variables de configuración de Google Analytics que procedan.
- Publica el contenedor.
Use el código predeterminado de Tag Manager en las páginas que no son AMP.
Opción 3: analytics.js
En las páginas que no son AMP, puede utilizar el fragmento de código predeterminado analytics.js para leer los parámetros de AMP Linker.
<!-- Google Analytics -->
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'GA_TRACKING_ID', 'auto');
ga('send', 'pageview');
</script>
<!-- Final de Google Analytics -->
De forma opcional, si sus páginas AMP están alojadas en un dominio de nivel superior diferente a los enlaces salientes a su sitio, o bien si las páginas AMP no están en un subdominio conocido (es decir, no están en www., amp. ni m.), añada la configuración que se destaca abajo, como se describe en la configuración multidominio para analytics.js:
<!-- Google Analytics -->
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'GA_TRACKING_ID', 'auto', {'allowLinker': true});
ga('require', 'linker');
ga('linker:autoLink', ['subdomain1.example.com', 'subdomain2.example.com','www.example2.com'] );
ga('send', 'pageview');
</script>
<!-- Final de Google Analytics -->
Paso 3. Excluir referencias en la consola de administración de Google Analytics
Cuando Google sirve contenido AMP a los usuarios, usa la caché de AMP de Google. Para evitar que las sesiones se corten por culpa de los subdominios de AMP servidos mediante la caché de Google, debe añadir una exclusión de referencias con el dominio cdn.ampproject.org
.
subdominio.example.com
, añada una nueva exclusión correspondiente a las referencias de subdominio-example-com.cdn.ampproject.org
. Consulte más información sobre el formato de URL de Caché de AMP.Verificación de la configuración
Verifique que el ID de cliente de AMP de Google es el mismo en las páginas AMP y en las que no lo son.
Opción 1: Usar la herramienta AMP Tag Test
Use la herramienta AMP Tag Test para introducir la URL de AMP que quiera probar.
Nota: La herramienta AMP Tag Test es una herramienta de pruebas automática que simula el flujo desde una página AMP servida a través de un visor hasta un enlace a la página siguiente. Esta herramienta se debe usar como guía y es posible que no cubra todas las situaciones de prueba (por ejemplo, si la página AMP tiene enlaces a diferentes dominios o subdominios). Utilice las opciones de abajo para probar las opciones manualmente.
Opción 2: Usar la extensión Google Tag Assistant de Chrome
- Descargue e instale la extensión Tag Assistant de Google para Chrome.
- Haga una búsqueda en google.com que devuelva como resultado una página AMP de su sitio web.
- Inicie Tag Assistant Recordings.
- Cuando se haya iniciado la grabación, actualice los resultados de búsqueda en el navegador.
- Haga clic en un resultado de búsqueda que lleve a su página AMP.
- En su página AMP, haga clic en un enlace que dirija a una página que no sea AMP.
- Detenga Tag Assistant Recordings.
- Compruebe que haya una sola sesión con ID coherentes como se muestra a continuación. Fíjese que en "Page load 2" no aparece "Session Start" (inicio de sesión).
Opción 3: Usar las herramientas para desarrolladores de Chrome
- Abra el navegador Google Chrome en modo incógnito. Habilite el emulador de dispositivos móviles de las herramientas para desarrolladores de Chrome.
- Haga una búsqueda en google.com que devuelva como resultado una página AMP de su sitio web. Haga clic en un resultado de búsqueda que corresponda a alguna de sus páginas AMP; debería servirse a través de la caché de AMP de Google y mostrarse en el visor de AMP de la Búsqueda de Google.
- Nota: Puede comprobar si la unificación de sesión funciona aunque su página aún no aparezca en los resultados de búsqueda de Google. Para hacerlo, utilice la herramienta de prueba de AMP para obtener una vista previa de los resultados de búsqueda y siga los pasos indicados abajo. El único requisito previo es que Google pueda indexar la página.
- Busque la solicitud de red de Google Analytics correspondiente a la vista de la página AMP. Para ello, vaya a la pestaña Network (Red) de las herramientas para desarrolladores de Chrome e introduzca collect (recoger datos) en el campo Filter (Filtro).
- Localice y seleccione la solicitud de red que va a
www.google-analytics.com
. En la pestaña Headers (Encabezados) de la solicitud, busque el ID de cliente desplazándose hasta "Query String Parameters" (Parámetros de cadena de consulta). Tome nota del valor del parámetro "cid". - Si la página AMP se sirve mediante el visor de AMP, el formato
cid
debe ser una cadena base64 de 64 caracteres: - Para borrar las solicitudes de red, haga clic en Clear (Borrar).
- Para verificar que ha habilitado las páginas que no son AMP, confirme que se conserva el mismo parámetro "cid" al acceder a una página que no sea de este tipo. Para ello, haga clic en cualquier enlace de una de sus páginas AMP que dirija a una página de otro tipo alojada en su subdominio. Para ver el ID de cliente, filtre de nuevo por la cadena "collect". Seleccione cualquier solicitud de red que vaya a
www.google-analytics.com
. Compruebe que el valor del parámetro de consulta cid coincide con el valor que anotó en el paso 5.
Limitaciones
- La unificación de sesiones con la función AMP Linker no se llevará a cabo si un usuario nuevo cierra la página AMP sin pasar a la página siguiente, ya que para que la unificación funcione hace falta añadir a los enlaces los parámetros correspondientes.