Las plantillas personalizadas son una de las últimas características que han aparecido en Google Tag Manager. Y de haber aparecido un par de meses antes, me hubieran ahorrado una cantidad de tiempo enorme implementando Yandex.Metrica en un proyecto reciente.
La plantilla sobre la que trata este artículo es una plantilla para implementar el código de seguimiento de Yandex.Metrica a través de Google Tag Manager. Su interfaz está en español y tiene casi todas las opciones y características que tiene disponibles Metrica para su código de seguimiento:
- Inicialización
- Hit / Página vista
- Objetivo
- Enlace saliente
- Descarga de fichero
- Parámetros de sesión
- ID de usuario
- Parámetros de usuario
Unos muy buenos recursos que me han ayudado son la Custom templates quick start guide, de Google; la Custom Templates Guide For Google Tag Manager, de Simo Ahava; y la Google Tag Manager Custom Template – Yandex Metrica, de David Vallejo (en inglés, disponible también en GoogleTagManagerTemplates de GitHub, donde supongo que se irá actualizando, además de recoger en ese repositorio otras muchas plantillas).
Puedes descargar la plantilla de Yandex.Metrica para GTM con este enlace, y si necesitas ayuda para importarla en tu contenedor de GTM, puedes echar un vistazo a este tutorial de introducción a las plantillas personalizadas.
Versión 3: 31.07.2020
Versión 2: 25.09.2019
Versión 1: 16.06.2019
1. Inicialización
Método: init
Para inicializar el código de seguimiento de Metrica. Se pueden configurar las principales opciones y características sin tener que editar el contador en la administración de nuestra cuenta de Metrica. No obstante, hay algunas cosas que deberías dejar configuradas cuando crees el contador y otras que tendrás que hacer impepinablemente en la interfaz de Metrica.
Te recomiendo que en la configuración de tu contador dejes marcadas las opciones para la grabación de sesiones, envío de datos de comercio electrónico y divisa por defecto tal como lo necesites. Respecto a la grabación de sesiones, tienes que usar Session Replay 2.0, ya que esta plantilla no es compatible con el código anterior de Metrica. También has de indicar si quieres grabar las pulsaciones de teclado en la grabación de sesiones (siempre lo puedes desactivar de forma específica usando el CSS que indica Metrica para estos casos).
Para habilitar los informes de comercio electrónico en Metrica, tienes que habilitar esta opción en el código de seguimiento, y además incluir en el código de tu página el dataLayer (que puede ser el mismo que uses para Google Tag Manager / Google Analytics).
<script type="text/javascript">
window.dataLayer = window.dataLayer || [];
</script>
Filtros y objetivos, lógicamente, los tienes que seguir creando desde la interfaz de Metrica, así como exclusión de visitas propias o la activación y gestión de las notificaciones que puedes tener sobre el estado del sitio web configurado.
Sobre el debug de Yandex.Metrica, lo puedes activar en las opciones de inicialización, pero solo funcionará si el contenedor de GTM está en modo de vista previa.
2. Hit / Página vista
Método: hit
Para enviar páginas vistas / páginas virtuales. El único parámetro obligatorio es el de la URL de la página que envías.
3. Objetivo
Método: reachGoal
Envia información sobre la consecución de un objetivo. Previamente lo has tenido que definir en la interfaz de Metrica. Cuidado con el nombre del objetivo, ha de coincidir con lo que hayas puesto en Metrica. Importe y divisa son opcionales, en las divisas he añadido Euro, Dólar americano, Rublo y Libra esterlina (puedes añadir lo que necesites editando la plantilla o vía variable de GTM).
Si se trata de un objetivo de comercio electrónico (venta), puedes enviar el ID del objetivo usando el dataLayer, no hace falta usar reachGoal. En este caso, no se usa el nombre del objetivo, si no el ID numérico del objetivo (lo obtienes igualmente de la interfaz de Metrica).
4. Enlace saliente
Método: extLink
Si has configurado el código de seguimiento para que registre enlaces salientes, puede que no uses esta opción, aunque la tienes disponible para enviar a Metrica datos de enlaces externos que puedas usar vía ajax o técnicas similares. El único parámetro obligatorio es la URL del enlace externo. Si no pasas el título de la página, Metrica registrará document.title como valor por defecto.
5. Descarga de fichero
Método: file
Como el método anterior, si has configurado el registro de descarga de ficheros en el código de seguimiento de Metrica, puede que no necesites esta opción. En la configuración del código de seguimiento puedes añadir extensiones de fichero que quieras registrar de forma automática, si la que necesites no está incluida en las numerosas extensiones de fichero que registra Metrica por defecto.
6. Parámetros de sesión
Método: params
Los parámetros de sesión están disponibles como opciones en los métodos init, hit, reachGoal, file y extLink. Puedes usar hasta 10 niveles en los parámetros de sesión, aunque tendrás que echarle algo de imaginación para usar más de 2 niveles con la tabla que te permite crear GTM.
7. ID de usuario
Método: setUserID
Fácil. Enviar el ID de usuario interno que utilices en tu sitio web. Puedes enviarlo en cualquier momento durante una sesión para asociar el clientID de Metrica con el ID de usuario que especifiques.
8. Parámetros de usuario
Método: userParams
Metrica permite pasar parámetros de usuario y recomienda pasar datos de usuario que no cambien de una sesión a otra y que no contengan datos personales como el nombre del usuario. Para comprender un poco mejor la diferencia entre parámetros de usuario y parámetros de sesión, puedes echar un ojo a esta página donde explican cómo se procesan y almacenan los datos.
¿Y el resto de métodos?
Del resto de métodos (getClientID, addFileExtension y notBounce), el único que no está disponible en esta plantilla es getClientID. Los otros dos, addFileExtension y notBounce he decidido incluirlos como opciones en la configuración para la inicialización del código de seguimiento y se ejecutan, en caso de estar configurados, en el momento de inicializar el código de Yandex Metrica.