Thu. Nov 21st, 2024

Medir el impacto de los bloqueadores de contenido y anuncios


Entonces, parece que iOS 9 tiene soporte incorporado para integrar “bloqueo de contenido”Extensiones en tu iPhone. Ahora bien, bloquear anuncios y otros contenidos intrusivos no es nada nuevo, ni quiero entrar en un debate sobre si es algo bueno o no. Pero como experto en datos, estoy muy interesado en saber qué parte del seguimiento de mi sitio tiene habilitado algún bloqueador de contenido. En esta publicación, mostraré dos trucos (fáciles y avanzados) para exponer estos bloqueadores de contenido. Siempre es una buena thought controlar los números, especialmente si le preocupa que también bloqueen sus herramientas de análisis (¡como debería ser!).

Las dos soluciones que voy a presentar difieren en su precisión. Ambos requieren que cargue un archivo pequeño en su servidor net. Después de eso, la precisión depende de si estás interesado o no en saber cuántos de estos bloqueadores de contenido terminan bloqueando. Administrador de etiquetas de Google ¡también! Resulta que hay algunos que sí lo hacen y es posible que también quieras medir ese tráfico.

NOTA! Sólo para disipar cualquier confusión, las siguientes soluciones no lo hará funciona si el seguimiento de Google Analytics está bloqueado evitando que la solicitud HTTP abandone el sitio. El truco usando un XMLHttpRequest() Eludirá los bloqueadores que simplemente impiden que se cargue Analytics.js, pero no ayudará si la solicitud HTTP a Google Analytics está bloqueada. Para medir ESA proporción de tráfico en GA, deberá transmitir las visitas a través de un punto remaining del servidor net native y enviar la visita del Protocolo de medición a Google Analytics desde su servidor net, donde los bloqueadores de anuncios y contenido no pueden alcanzarlo.


incógnita


El boletín a fuego lento

Suscríbete al Boletín a fuego lento para recibir las últimas noticias y contenido de Simo Ahava en su bandeja de entrada de correo electrónico.

Crea el archivo JavaScript y cárgalo

Lo primero que debe hacer es crear un archivo JavaScript easy llamado commercial.js y subirlo al servidor net. Este archivo tiene una sola línea:

window('noBlocker') = true;

Este archivo funciona como carnada. Tiene el nombre más descarado que se le pueda ocurrir a una biblioteca de anuncios, por lo que la mayoría de los bloqueadores deberían aferrarse a él con sus codiciosos zarcillos que diezman el sustento de los editores.

Debe cargar este archivo en alguna ubicación de su servidor net donde pueda vincularlo desde la plantilla de su página (o desde GTM). Como estoy usando WordPress, lo subí al directorio. /wp-content/.

Una vez que haya hecho esto, puede seguir la solución fácil (que aparecerá próximamente) o la más compleja (que aparecerá más adelante en el artículo). Pero comience leyendo la configuración genérica de GTM que necesitará para cualquiera de los dos enfoques.

Configuración del Administrador de etiquetas de Google

Primero, necesitarás un Variable de JavaScript personalizadaque llamaremos {{JS – noBlocker}}. Esta Variable tiene el siguiente código dentro:

operate() {
  return window('noBlocker') ? undefined : 'true';
}

Esto no devolverá nada si el commercial.js archivo cargado y creado la variable international, y ‘verdadero’ si el archivo no fue cargado. En otras palabras, si un bloqueador de contenido bloquea commercial.jsesta variable devolverá “verdadero”.

A continuación, deberá crear una dimensión personalizada en Google Analytics. he elegido Sesión como el alcance, ya que el nivel de acceso puede ser demasiado granular y el nivel de usuario puede ser demasiado amplio. Pero depende de ti. Cuando cree la dimensión personalizada, tome nota de la Índice número que GA le asigna.

A continuación, edite su genérico. Vista de página Etiqueta. Debe agregarle una nueva fila de Dimensión personalizada, con el número de índice derivado de la configuración de Google Analytics, donde acaba de crear la nueva dimensión. El valor de esta dimensión debe ser la variable JavaScript personalizada que creó anteriormente. Entonces quedaría así:

Veamos lo que está pasando aquí. Cuando esta etiqueta se activa, intenta completar la dimensión personalizada con el índice número 4 con cualquier variable {{JS – noBlocker}} regresa. Si el sitio no cargó el archivo commercial.jsesta dimensión obtiene el valor ‘verdadero’que es lo que se envía a Google Analytics. Si el archivo hizo carga, la variable regresa undefinedy la dimensión no se envía.

¡Y esa es la configuración genérica! Así sabremos si se está ejecutando un bloqueador de contenido en el sitio o no.

A continuación, tendremos que elegir cómo vincular el archivo al sitio y si queremos o no tener en cuenta los bloqueadores que también bloquean GTM.

Esta es la configuración “fácil”, ya que solo usaremos Google Tag Supervisor para cargar commercial.js.

Comience creando un nuevo Etiqueta HTML personalizadallamado CONFIGURACIÓN: enlace a publicidad.js. Este tiene el siguiente código dentro:

<script>
  (operate() {
    var d = doc.createElement('script');
    d.src = '/wp-content/commercial.js'; // Modify this!
    doc.head.appendChild(d);
  })();
script>

Esto crea un nuevo elemento en el DOM (un script elemento), agrega un enlace al archivo que cargó anteriormente y luego lo agrega al head del documento. Recuerde modificar la línea con d.src = ... para reflejar la ubicación actual donde subiste el archivo.

Guarde la etiqueta. ¡Nota! NO le agregue ningún desencadenante. Sólo guárdalo. Bien.

A continuación, abre tu Etiqueta de vista de página (aquel donde acaba de agregar la dimensión personalizada) y abra Configuración avanzada -> Secuenciación de etiquetas.

En Secuenciación de etiquetas, marque la casilla “Activar una etiqueta antes Etiqueta de vista de página incendios”, y elija el CONFIGURACIÓN: enlace a publicidad.js de la lista desplegable.

Guarde la etiqueta de vista de página.

Esto es lo que va a pasar. Cuando llega el momento de activar la etiqueta de vista de página, primero se ejecuta la etiqueta HTML personalizada. Esta etiqueta vincula y ejecuta el commercial.js archivo que has subido a tu servidor net. A continuación, se activa la etiqueta de vista de página y la variable JavaScript personalizada detecta un bloqueador de contenido (si hay uno activado) o no (si no está activado) y envía la dimensión personalizada en consecuencia.

¿Aún conmigo? Eso es todo lo que necesitarás. Después de esto, los datos comenzarán a fluir con sus etiquetas de vista de página, anotando las sesiones que tienen un bloqueador de contenido con el valor ‘verdadero’ en el nuevo campo Dimensión personalizada.

Avanzado: Plantilla de página mágica

Esto es más avanzado, ya que requiere que modifiques la plantilla de la página, pero también tendrá en cuenta el tráfico que también bloquea Google Tag Supervisor (¡los b*stardos!). No es una proporción grande desde ningún punto de vista, pero aun así es algo de lo que quizás quieras tener cuidado.

¡NOTA! Esta solución utiliza un XMLHttpRequest para enviar los datos a GA, y muchos bloqueadores también bloquean estas solicitudes. Por lo tanto, es posible que no le quede otra opción que enviar los datos a un punto remaining de su propiedad y que esté seguro de que estas herramientas no bloquean. Eso, por supuesto, depende de ti y de tus desarrolladores.

Comencemos primero con las cuestiones técnicas.

Deberá agregar la siguiente etiqueta a la plantilla de página antes del fragmento de contenedor de Google Tag Supervisor. El lugar lógico para ello es en el of the doc.

<script src="/wp-content/commercial.js">script>

Recuerde cambiar el valor del src atributo para reflejar la ubicación actual del archivo.

A continuación, agregue también el siguiente código JavaScript minimizado a la plantilla. Puede agregarlo en cualquier lugar que desee en la plantilla, aunque agregarlo hasta el remaining es lógico ya que es solo JavaScript sincrónico.

<script>!operate(d,e){window.addEventListener('load',operate(){if(!window.noBlocker&&!window.google_tag_manager){for(var t=new XMLHttpRequest,n=(new Date).getTime()+Math.ground(1e8*Math.random()),o='ab_gc=',a=doc.cookie.break up(';'),i=0;ifor(var c=a(i);' '==c.charAt(0);)c=c.substring(1);0==c.indexOf(o)&&(n=c.substring(o.size,c.size))}t.open('POST','https://www.google-analytics.com/gather');var r='tid='+e+'&cd'+d+'=true&t=pageview&dp='+doc.location.pathname+'&v=1&cid='+n;t.ship(r);var g=new Date;g.setTime(g.getTime()+63072e6);var d='expires='+g.toUTCString();doc.cookie='ab_gc='+n+'; '+d}})}('1','UA-1234567-1');script>

¡Se ve desagradable, lo sé! Lea atentamente el siguiente fragmento.

Este script añade un ventana.onload oyente, que se dispara después de todo el window El objeto se ha cargado. En otras palabras, espera a que se cargue la página. y todos los scripts, imágenes y recursos externos para cargar también.

A continuación se comprueba la existencia del noBlocker variable international, que, si recuerdas, se crea en el commercial.js archivo. También verifica la existencia de google_tag_manager objeto, que es creado por Google Tag Supervisor.

Si faltan ambos, significa que se ha instalado un bloqueador de contenido. bloqueado ambos commercial.js y GTM!. ¡Qué grosero!

Si están bloqueados, el script continúa con lo siguiente:

  1. Cree un nuevo ID de cliente aleatorio, utilizando la marca de tiempo precise y un número aleatorio.

  2. Si una cookie llamada ab_gc existe, utilice su valor como clientId en su lugar.

  3. Encienda un hit del Protocolo de medición a Google Analytics, utilizando el ID de cliente establecido en el paso (1) o (2), y envíe el hit como una vista de página, utilizando la página precise como ubicación y estableciendo el valor “verdadero” en un dimensión personalizada.

  4. Escribir/actualizar la cookie ab_gc con el ID del cliente.

Una cosa importante a tener en cuenta aquí. Vea los últimos paréntesis del guión: ('1','UA-1234567-1')? Debe actualizarlos usted mismo.

El primer valor entre paréntesis es el número de índice de la dimensión personalizada a la que desea enviar detalles sobre el bloqueador de anuncios. Puedes, por ejemplo, simplemente usar la dimensión personalizada que creaste anteriormente o puedes hacer lo que yo hice.

Creé un nueva propiedad de Google Analytics para recopilar estos hits, y la dimensión personalizada es una dimensión con alcance de hit, utilizada en un Incluir sólo filtrar en la vista de informes. En otras palabras, esta nueva propiedad solo aceptará visitas que tengan esta dimensión personalizada, lo que significa que solo recopilará datos de los usuarios que bloqueen ambas. commercial.js y GTM (¡grrr!).

Entonces ese es el segundo valor entre paréntesis. Es el ID de propiedad al que desea enviar los datos. Personalmente, no usaría mi propiedad principal, ya que estos datos simplemente no son comparables. Se crea mediante programación y es muy limitado en cuanto a la información que se envía. Por supuesto, puedes completar todos los campos de dimensión con algo de magia inteligente de JavaScript, pero no estoy tan interesado en todos esos trucos.

Sólo me interesa saber cuántas sesiones están bloqueando ambos anuncios. y GTM (¡basta!).

Resumen

Lo que hagas a continuación depende de ti. Puede crear un informe personalizado con sesiones compartidas para aquellos que tienen un bloqueador de anuncios y aquellos que no lo tienen. Con estos datos, puede optimizar su sitio, asegurándose de que no haya información crítica detrás de fuentes potencialmente bloqueadas.

Hay otro soluciones por ahí también que tal vez quieras revisar.

Subiendo el commercial.js Puede que no sea la solución más sólida que existe, ya que no requiere demasiada imaginación por parte de los bloqueadores de contenido para ignorar este archivo en el futuro. Algunos métodos de detección de bloqueadores incluyen la creación de elementos en el DOM que se asemejan a espacios para anuncios. Probablemente estos también funcionen bien.

Con esta solución, obtendrá información útil sobre los recursos compartidos de bloqueadores de contenido en su sitio y podrá actuar de inmediato en función de esta información.

Realmente desearía que Google Tag Supervisor no fuera bloqueado, ya que no es una plataforma de publicidad o distribución de contenido en sí misma. Es solo un inyector de JavaScript que también puede usarse para cosas interesantes y benévolas.

Tenga en cuenta que una cosa que falta es comprobar si Google Analytics fue bloqueado pero Administrador de etiquetas de Google no lo fue. Este también es un caso de uso interesante y es bastante easy de hacer con una verificación de window('GoogleAnalyticsObject') al cargar la página. Puedes hacerlo a través de GTM o también en la plantilla de página; solo requiere algo de personalización.

¿Tiene otros consejos para detectar bloqueadores de publicidad y contenido? ¿Qué resultados estás viendo? En mi weblog, los bloqueadores de contenido representan aproximadamente 25 % de las sesiones, y los que bloquean también GTM son muy pocos (pero existen).

Related Post

Leave a Reply

Your email address will not be published. Required fields are marked *