
Index: Todo lo que precisas saber sobre Triggers en GTM
Los
Activadores de Google Tag Managerson las condiciones que
hacen que se activen las etiquetasen diferentes unas partes del sitio web o acontecimientos clave,
en donde decidamosy
cuando decidamos. En consecuencia, las etiquetas se dispararán (o bien no) si se cumplen los activadores de cada una de ellas. Cada etiqueta debe tener como mínimo un activador o bien trigger para que se ejecute.
Por otro lado, los triggers o bien activadores también pueden definirse como “
Excepciones” o bien reglas de bloqueo, en tal caso, si se cumplen las condiciones del activador, lo que conseguiremos es que no se ejecute la etiqueta. Por ej. podríamos escoger el trigger All Pages y crear salvedades donde no queremos que salte la etiqueta.
*
All Pageses el único activador por defecto en GTM y hará que la etiqueta se active en todas y cada una de las páginas que tengan el snippet de código de Tag Manager insertado (y el contenedor publicado). Es el que usaremos para trackings de Google Analytics, Hotjar, píxeles de remarketing, etc.
**Para poder generar una excepción debemos haber elegido anteriormente sí o sí un activador o más. Si no, no tiene sentido.
Cada
activadorestá compuesto como mínimo por
un evento(que indica cuándo queremos activar), más opcionalmente, por
una condición o varias(que limitan el evento a los casos específicos donde queremos que se active la etiqueta)
Las
condiciones, a sus vez, están formadas cada una por una
variable de GTM que comparamos con un valor.
*Y de manera adicional vemos que ciertos activadores tienen configuraciones auxiliares, ahora ahondaremos…
Podemos crearlos como atajo y con ciertas simplificaciones desde la propia interfaz de creación de la etiqueta. Pero también tienen su menú exclusivo:
Activadores, con unas opciones de configuración más completas.
Desde la interfaz de
creación de etiqueta pinchando en Más / Nuevo también podemos llegar al mismo sitio:
Si vamos de cualquiera de las dos formas a la opción más completa, lo primero al crear un activador es
seleccionar el género de evento, en función de esto la configuración podrá ser diferente:
Después
la configuración de cada género de activador será diferente en función del eventoseleccionado. Vamos por partes:
En este género de activadores son
los más utilizados frecuentementey se fundamentan en
eventos automatizados de GTM. Estos eventos ya se han “
estandarizado” y están
disponibles para todo el mundo, incluidos dentro de la
programación del propio Google Tag Managerpara que podamos utilizarlos
sin tener unos conocimientos de desarrollos muy altos. Una de las grandes ventajas de accesibilidad web es exactamente que
podemos medir y activar códigos y etiquetas en acontecimientos de tipo:
Y normalmente podremos hacerlo sin añadir nada de código adicional en la página (salvo algún identificador ID o Class), solo con las lógicas de activación y las variables existentes, y las que pueden ser creadas en Google Tag Mánager.
Está basado en la carga de una URL concreta o bien varias. Lo más común para cargar etiquetas sencillas de conversión es que empleemos el acontecimiento
Page Viewo
Página vista.
Si configuramos el activador desde el
menú Activadoreso desde “
More/New“, encontramos que tenemos
tres eventos de activación diferentes en la carga de página: gtm.js (cuando empieza la carga –
Page Viewo
Página Vista-), gtm.dom (cuando se ha cargado el HTML –
DOM Readyo
DOM Preparado-) y gtm.load (cuando se han cargado también todos los ficheros externos –
Window Loadedo
La ventana se ha cargado -). Estos 3 eventos se envían siempre en la dataLayer inicial de carga de página de GTM:
Cuando escogemos desde este menú se activará en la opción por defecto:
Page View.
Debemos decidir si la etiqueta se activa
en todas las cargas de página o solo en algunasde ellas.
Al escoger ciertas páginas, aparecerán los filtros o condiciones:
Para entender las condicionesy poder marcar adecuadamente en qué página o bien páginas específicas activar una etiqueta, nos serviremos de las
variables predefinidas de tipo página(que vamos a deber activar anteriormente en el menú
Variables), y también de
variables personalizadasque podemos crear a nuestro antojo. Mas empecemos por lo más fácil, éstas son las variables de página predeterminadas:
¡Ojo! Si elegimos
Algunas páginas desde la interfaz de creación de la Etiqueta nos saldrá una configuración más fácil y solo para el evento estándar de Page View, momento de carga: Página Vista.
También podemos
cargar etiquetas de seguimiento o bien de HTMLpersonalizado al hacer
clic en elementos o links. Al elegir esta opción, tenemos primero que
decidir entre clics Solo en links / Just Links(<a href>…) o bien en
Todos los elementos / All Elements (cualquier etiqueta <html>).
A continuación decidiremos si lanzar en
cualquier click o en alguno/s concreto/s(opción más normal).
Al elegir Algunos clics, aparecerán los
filtros o condiciones. ¡OJO! Para crear filtros de clicks, primero debemos ir a Variables y
activar las variables predefinidas de clic(Click ID, Classes, Element, Text). También podemos crear personalizadas.
En caso de seleccionar
Segmentación: Click en enlacestenemos un paso auxiliar (antes de las condiciones) para configurar el activador que lleva por nombre
Habilitar cuando / Enable when:
*Por lo general, dejamos que mida clic en enlaces en Todas las Páginas (expresión regular .* ).
Este campo SOLO para
filtros de página.
Teóricamente
este activador debería servir para activar una etiqueta al enviarse
correctamenteun formulario. La configuración es parecida a la de Click. Debemos decidir primero si deseamos medir
todos los formularios o
solo ciertos.
Campos de configuración adicional:
En la diseño web economico en wordpress , en la
mayoría de los casos, recurriremos a
eventos adaptados para trackear los envíos adecuados de formularios. Puedes hacer la
prueba con los formulariosde tu página. Y si no, mandar la dataLayer, como os contamos en este otra artículo sobre. Si empleas el
contact Form 7, ¡estás de suerte! Ahí te damos la
solución.
Podemos
medir, contar y enviar eventos. Válido para, lanzar llamadas a la acción, formularios, encuestas… Sencillísimo de configurar, solo precisamos un nombre de evento, el número de milisegundos y cuántas veces queremos que se ejecute el timer. Por ej. para crear un activador de temporizador a los 30 segundos de la carga de página:
Configuramos treinta.000 milisegundos y límite 1 para que no se esté repitiendo el conteo periódicamente, sino más bien solo 1 vez.
Muy sencillo. Un
detector de errores de código JS. Si deseas un caso, prueba a activar el código de ejemplo y la etiqueta del artículo: . Verás que es fácil 🙂
Básicamente trataría de c
onfigurar una etiqueta de acontecimiento de Analytics con la que poder compilar estos errores, siguiendo de nuevo a Simo y mejorando a nuestro gusto la definición de los campos de evento, podríamos hacerlo así:
– En
Categoría de eventotendríamos nuestra categoría de Errores genérica.
– En
Acciónel género de Fallo concreto: Fallo JS.
– En
Etiquetala info del fallo desglosada: Error URL – Error Message – Error Line.
– En
Valorsi queremos podemos poner algo… mas al no poder emplearse enteros negativos, no le veo mucho sentido.
– Fundamental:
Evento sin interacción / Non-Interaction Hit – True-> para no producir hits con los fallos que nos puedan distorsionar la tasa de rebote.
Para seguir la
navegación HTML5 y AJAX en una página sin cambios de URL, para esto activamos las variables y etiquetas del siguiente post: .
Queda pendiente un blog post actualizado sobre este tema para un futuro…
Permiten crear un nuevo
activador a medida, para
cuando no funcionan los eventos automáticos. Los usamos para
enviar accionesa mano
con dataLayer, por ej. para Elaboraros AJAX, interacciones con formularios, tracking de erroes en procesos de compra / registro / login…
Si queremos, podemos expedir
valores asociadoscomo
parámetros de eventoo
dimensiones personalizadas,
aprovechando la misma dataLayer. Es más, visto desde la otra dirección:
siempre que deseemos expedir valores adaptados en una dataLayeres recomendable no está de más,
mandar también un evento personalizado, así vamos a tener un punto específico a partir del cual vamos a poder contar con de esos valores y donde podremos activar etiquetas en un futuro.
Código de dataLayer de ejemplo y
cómo crear un activador basado en un acontecimiento personalizadoque enviamos por dataLayer:
Los
triggers pueden ser
de activación o bien de bloqueo (salvedades).
Para
crear una excepción o bien trigger de bloqueo, primero hemos de seleccionar algún activador para la etiqueta:
El proceso de creación es idéntico al de cualquier trigger.
Si una etiqueta tiene
activadores y excepciones (triggers de activación y bloqueo)
sus condiciones “se suman” entre sí. Es decir, tienen que cumplirse las condiciones de inclusión y las de bloqueo al unísono, a fin de que se active la etiqueta.
Por ejemplo: incluir en URI “/gracias/” (inclusión), salvo si nombre de host es “aaa.com” (bloqueo).
Resultado:
– En
bbb.com/gracias/se activará la etiqueta
– Mas no se activará en
aaa.com/gracias/
Por otro lado, el
bloqueo tendría prioridad sobre la activación, si es que entran en conflicto triggers de distinto tipo. Ejemplo: incluir en URI “/contacto/gracias/” (inclusión), excepto si la URI contiene “/gracias/” (bloqueo), el trigger de bloqueo “ganaría” y se bloquearía la etiqueta en un caso así.
Se pueden acotar
diferentes activadores o triggers para una misma etiqueta.
En caso de tener
más de un trigger de activación/bloqueo para exactamente la misma etiqueta, entre sí son
opcionales/alternativos. Esto es, si se cumple uno o se cumple el otro, se activa/bloquea la etiqueta en consecuencia.
En este caso, hemos definido
dos activadores separados, uno de
tipo Pageview(All Pages: el único activador creado por defecto en GTM, mas que si tuviésemos que delimitar sería como en el pantallazo izquierdo de abajo) y otro de
tipo DOM, con lo que se genera un
rebote 0 por ciento en Google Analytics, pues el código de la etiqueta se carga dos veces y en 2 eventos distintos** (
dos páginas vistas en cada URL = rebote 0 por ciento ); como cuando está dos veces repetido el mismo UA- en una página web.
Insistimos, con
dos activadores separados, decimos que se ejecute la etiqueta CUANDO se visualice una página por completo (evento gtm.dom), O CUANDO se comience a cargar la página (acontecimiento gtm.js),
una cosa O la otra. Y como afirmamos ya antes, los eventos gtm.js -> gtm.dom -> gtm.load, van en secuencia y se producen en todas las cargas de página uno tras otro. Por consiguiente, la etiqueta en cuestión se cargará dos veces, es decir: gtm.js (1a vez) -> gtm.dom (2a vez) -> gtm.load
Conclusión importante:
no confundir el trigger All Pages(todas y cada una de las páginas en acontecimiento Pageview o bien gtm.js),
con la condición todas y cada una de las páginas – por ej. Page URL regEx .* – que vamos a poner en muchas etiquetas. Son cosas plenamente diferentes. Una es un activador completo con su momento de activación “Página vista” o bien “Pageview” y lo otro es una condición que puede ir en cualquier activador y puede ir unida a cualquier otro evento.
**IMPORTANTE: Acontecimientos distintos** >>solo una matización y vuelta de tuerca más: si ponemos
2 activadores alternativosa la vez
pero que hacen referencia al mismo evento(ej. un activador con condición de Click Classes y otro con condición de Click ID para el mismo evento Clic – gtm.click -)
esto no hará saltar dos veces la etiqueta, es la única excepción y un caso bastante avanzado.
Sin embargo, si tenemos varias condiciones en un mismo Activador, deben cumplirse simultáneamente para que se dispare la etiqueta (como cuando arriba en el punto 1) “sumábamos” condiciones de activación y bloqueo).
Como vemos arriba,
dentro de un mismo activador, pueden existir diferentes condiciones, las cuales siempre y en toda circunstancia deben
cumplirse a la vez, para que el trigger active/bloquee la etiqueta.
Ejemplo 1:
Evento: Click (gtm.click) / Segmentación: Todos los elementos, se lanza cuando se hace click en cualquier elemento HTML de la página (sean enlaces o no, por ej. en etiqueta <button> o bien <input>.
Condición 1 – Activar: Click Text contiene Buy now!, activará la etiqueta si el factor clicado tiene ese texto
Condición dos – Activar: Click Path contiene /buy-, la activará solo si además, la senda de destino contiene /buy-.
Resultado:
– haciendo click en <button action=”/buy-product-872.php”>Buy now!</button> se activará
– haciendo clic en <button action=”/buy-next-week.php”>Buy next week</button>NO se activará
Ejemplo 2:
Tipo: DOM preparado / ready (gtm.dom):
eventoque se lanza cuando
se ha cargado completamente la página, útil cuando queremos forzar que una etiqueta se active después del resto de código de la página, lo equivalente a introducir un código al
final del </body>
Condición 1 – Activar: Page Path coincide con RegEx (.*)engloba
Todas las posibles paths, sendas o URIs (parte que va tras el nombre de dominio: midominio.com
/URI, incluyendo la barra)
Condición 2 – Activar: Page Hostname contiene mydomainname.com, nos cercioramos de que solo se active en nuestro dominio
Resultado:
Hay algunos aspectos que están dentro de la configuración avanzada de todas las etiquetas de Google Tag Manager que afectan en la activación de éstas con independencia de los triggers o activadores asociados a las etiquetas:
Advanced Settings
Todas las etiquetasindependientemente de su tipo incluyen unos campos comunes de
configuración avanzada. En todos y cada uno de los casos, el empleo de estas opciones avanzadas es opcional y en la mayoría de ocasiones no las necesitaremos. Son los siguientes:
Para definir un intervalo de datas y horas en los cuales la etiqueta estará disponible – fuera del intervalo no se activará. Nos puede valer para dejar creada y publicada con antelación una etiqueta que no queremos que esté en activo hasta un día y hora exactos.
Hace que la etiqueta no se active si estamos en modo de pruebas/depuración. Ya solamente se activará cuando el contenedor que la incluya esté publicado. Puede ser útil para casos de etiquetas cuya activación a lo largo de pruebas puede suponer un coste económico o bien generación de estadísticas incorrectas.
El campo Prioridad de activación de etiqueta deja introducir un valor numérico para supervisar la prioridad relativa de activación de una etiqueta. Las etiquetas con mayor valor se activan primero. Para que sea efectivo las etiquetas ordenadas/priorizadas deben activarse en un mismo momento/evento.
Se trata solo de un control parcial sobre el orden de ejecución. Se define el orden en que empieza la carga mas no el orden en que termina, ni si una etiqueta tiene que finalizar o no cuando empieza otra.
Es importante saber que todas las etiquetas de Google Tag Mánager
se ejecutan de forma asíncrona.
Podemos
definir una etiqueta que sea setup (y se active justo antes) o bien cleanup de otra (y se active justo depués). Nuevamente, lo tienes explicado al máximo nivel de detalle en este post de Simo Ahava sobre.
A continuación de la secuenciación de etiquetas, corresponde charlar de las opciones de activación, ya que están muy relacionadas. Puedes ver un.
Respecto a las opciones de activación de etiqueta: