Exclusión de referencias en Google Analytics 4
El problema: pasarelas de pago como fuentes de datos

Es una situación habitual en comercio electrónico: el usuario pasa por todo el proceso de compra y al ir a realizar el pago, sale fuera de la web a la de un servicio externo (pasarela de pago, motor de reservas…) sobre el que no tenemos control.
Aunque el usuario sea redirigido de vuelta a nuestro sitio web tras completar la operación, sea al siguiente paso del proceso o a una página de confirmación en la que medir la conversión final… si nuestro setup de analítica no está correctamente configurado, para entonces ya es tarde: Google Analytics detecta un cambio en la procedencia de tráfico (la propia web de la pasarela, de la que no ha tenido conocimiento hasta entonces), genera una nueva sesión y origen de tráfico y esto genera pérdida de datos y de la atribución de la conversión.
Para mitigar este problema, en Universal Analytics (el Google Analytics web de toda la vida, vaya) disponemos de una opción para intentar solucionarlo: la lista de exclusiones de referencia.
En esta sección de configuración de la propiedad podemos especificar todos los dominios y subdominios que no deben contar como potenciales fuentes de tráfico referral: Normalmente, el propio dominio asociado a la propiedad (o varios, de haber seguimiento multidominio), y cualquier pasarela de pago u otros dominios externos que puedan formar parte de un flujo normal de navegación, más que representar un origen real del mismo.
El funcionamiento es sencillo: para cada hit enviado a Analytics, su Referrer o página anterior se compara con la lista y de haber coincidencia, se anula y contará como una entrada directa (tráfico directo o de origen desconocido), que a su vez revertirá a la fuente de tráfico anterior si la hubiera —el tráfico (direct) / (none) solo se contabiliza como tal si no se conociera campaña u origen de tráfico previos—.
Sin embargo, en el nuevo Google Analytics 4 (o Analytics App+Web, vamos, el basado en Firebase) no disponemos de esta opción, al menos de momento.
¿Qué podemos hacer si nos encontramos con este problema en una propiedad GA4?
Pues si no hay filtro… ¡lo creamos nosotros, por supuesto!
SPOILER WARNING: usaremos Google Tag Manager, así que presuponemos un setup de analítica en el que ya está instalado e integrado. Si esto te pilla de sorpresa, supongo que no eres habitual de este blog 😛
La solución: filtro de exclusión en GTM
Como ejemplo práctico, vamos a partir de un caso real.
Sitio web con ecommerce concurrido, posibilidad de pagos con tarjeta via pasarela bancaria o PayPal, y seguimiento dual Universal Analytics / GA4, todo ello implementado con Google Tag Manager.
En la interfaz de Google Analytics 4, entramos en Comportamiento, de ahí al informe Sesiones por fuente/medio y clic en Ver todas las campañas para verlo completo…

Y nos encontramos con esto:
Sabemos que esos dominios que aparecen como fuentes de tráfico referral corresponden a las pasarelas de pago de la tienda: PayPal y Redsys, respectivamente.
Sabemos también que esas entradas no son “reales”: evidentemente no pueden corresponder a verdaderos inicios de sesión de navegación ni a verdadero tráfico referral, así que solo puede tratarse de sesiones reiniciadas durante el proceso de pago, provocadas por la salida y reentrada desde una web externa.
Estas entradas pueden implicar flujos de navegación interrumpidos y datos incorrectos de atribución de conversiones, así que nos interesa corregirlo cuanto antes.
Para ello vamos a aprovechar el control total sobre los datos que nos da Google Tag Manager para capturar esta información y, donde sea necesario, filtrarla o corregirla antes de enviarla a Google Analytics.
Filtro de exclusión de referencias con Google Tag Manager: paso a paso
Los requisitos que tomaremos como punto de partida son:
- Un contenedor de Google Tag Manager correctamente instalado en todas las páginas de nuestra web.
- Permisos de edición y publicación.
- Una instalación existente —da igual que sea simple o compleja, solo modificaremos la etiqueta de configuración base— de Google Analytics 4, implementada sobre dicho contenedor GTM.
Si no estás en este punto, quizás haya artículos anteriores que puedan ayudarte.
Paso 1: Datos auxiliares
Lo primero de todo, dado que vamos a filtrar los referrers en base a su dominio o hostname, vamos a capturarlo en una variable aparte para que sea más limpio.
Para ello, creamos una nueva variable personalizada, de tipo HTTP Referrer y componente Nombre del host:
Y la guardamos como Referrer Hostname.
Paso 2: Crear el filtro
Para el filtro propiamente dicho, vamos a crear una tabla configurable a la que ir añadiendo los hostnames a filtrar, usando expresiones regulares para mayor flexibilidad.
Creamos una variable personalizada de tipo Tabla RegEx como la siguiente:
La configuración de la variable queda así:
- Como Variable de entrada, la recién creada: {{Referrer Hostname}}.
- Marcamos Definir valor predeterminado, y seleccionamos {{Referrer}} como variable de salida por defecto, para que los referrers que no entren en el filtro pasen sin ser modificados.
- Dejamos marcadas las opciones No distinguir entre mayúsculas y minúsculas y Solo coincidencias totales.
Y ya en la tabla, añadimos una linea para cada uno de los dominios a excluir, dejando el campo Salida en blanco y el campo Patrón siguiendo este formato:
(.+\.)?dominioaexcluir\.com
En este ejemplo, hemos añadido entradas para redsys.es y paypal.com, dominios correspondientes a las pasarelas de pago a excluir.
- Escapamos los puntos (sustituimos cada “
.
” por “\.
“). No es estrictamente necesario, pero sí más exacto (“.
” haría coincidencia con cualquier cosa, no solo puntos). - El
(.+\.)?
que añadimos al principio sirve para que se excluya el dominio indicado y todos sus subdominios. Es decir, filtrará dominioaexcluir.com y también www.dominioaexcluir.com o tienda.dominioaexcluir.com (pero ojo, NO estenoesundominioaexcluir.com. Aquí aprovechamos para mejorar y corregir el fallo recurrente de la exclusión de referencias de GA, que sí que lo hace).Si solo quisiéramos filtrar un hostname exacto, sin subdominios, en ese caso bastaría con omitir el(.+\.)?
en esa línea. - Por lo demás, como hemos marcado Solo coincidencias totales, no tendremos que preocuparnos por matches parciales o incompletos.
Por supuesto, dado que estamos utilizando expresiones regulares, nada nos impide introducir patrones más generales o complejos si nos conviene:
(www\.)?sirnotappearingonthisfilm\.com
filtraría sirnotappearingonthisfilm.com con o sin “www”, pero no sus subdominiosfusfus\.(com|net|es)
filtraría fusfus.com, fusfus.net y fusfus.es.fusfus\..+
, directamente todas sus variantes..*nodeberiaestaraqui.*
filtraría todos los nombres de host que contengan “nodeberiaestaraqui“- etc!
Paso 3: Aplicar el filtro
Editamos la etiqueta base de Google Analytics 4 (la de tipo Configuración), y en Campos para configurar, añadimos un parámetro con nombre page_referrer
y valor la variable {{GA Filtered Referrer}}
que hemos creado.
¡Guardar, probar, y publicar!
A partir de aquí, todos los hits en páginas con referrals filtrados lo enviarán vacío, como si fuera tráfico directo (fuente/medio (direct) / (none) en lugar de dominio / referral), origen de datos por defecto que, al no tomar precedencia sobre el anterior, conseguiremos así no perderlo por el camino.
Si todo ha ido bien, en los siguientes días deberíamos ver como van desapareciendo esas sesiones pasarela / referral. 🙂
Otros casos de uso
En este artículo hemos tomado como ejemplo una de sus aplicaciones más críticas, como es el problema de atribución de ventas de ecommerce a pasarelas de pago, pero por supuesto esta solución también nos sirve para cualquier otro caso en el que nos resulte útil la exclusión de referencias o la “corrección” de fuentes de tráfico referral en general.

¡Vamos a ver otros ejemplos!
Ejemplo 1: Excluir dominio propio (self-referrals)
Por defecto, la lista de exclusión de referencias de Universal Analytics incluye el dominio principal asociado a la propiedad.
Esto se hace así para evitar problemas de autorreferencias o self-referrals: apariciones del dominio propio como fuente de datos (fuente/medio tudominio / referral), por páginas mal etiquetadas, problemas con cookies, sesiones rotas o caducadas… Cuando ocurre esto, ignorar el dominio actual como referrer servirá para mantener la fuente original de tráfico en lugar de generar una que no nos aporta nada.
Dado que GA4 no es ajeno a este mismo problema, normalmente será buena idea hacer lo mismo en este filtro y si lo creamos, aprovechar para añadir una entrada con el dominio propio a la tabla:
Ejemplo 2: Seguimiento multidominio
Por supuesto, en el caso de un seguimiento multidominio nos encontramos con un caso similar: normalmente no nos interesa que los enlaces entre dominios asociados a un mismo seguimiento y propiedad generen cambios de sesión y fuente de tráfico, con lo que lo habitual es añadirlos todos a la lista de exclusión para evitarlo.
En este filtro podremos hacer lo mismo:
Ejemplo 3: Corregir tráfico orgánico
Una ventaja de este tipo de filtro es que como tenemos control total sobre el valor del campo referrer, no solo tenemos la opción de anularlo: también de sobreescribirlo con algún otro valor que nos interese.
Esto nos puede servir para corregir o manipular el fuente/medio generado automáticamente por GA (en base al referrer y en la presencia en el mismo de determinados hostnames, parámetros…) y hacer que determinado tipo de tráfico se clasifique o no como de un canal determinado.
En el caso del tráfico orgánico de buscadores, en Universal Analytics tenemos opciones de configuración adicional (Fuentes de búsqueda orgánica, Lista de exclusión de términos de búsqueda) que nos permiten afectar de forma limitada a la configuración interna por defecto de Analytics, pero no cubren todos los casos ni tenemos equivalente en GA4.
Un ejemplo lo podemos ver en el mismo caso anterior. En el informe de fuente/medio vemos algunas entradas que provienen de buscadores conocidos pero que se registran como medio referral, no como organic o cpc. Por ejemplo, esta procedente de Yahoo:
Si consideremos que esta clasificación es incorrecta y preferimos que se registre siempre como tráfico orgánico (en este caso, yahoo / organic), lo que podemos hacer es utilizar el filtro para capturar todas las entradas desde este referrer y reescribirlo con uno que creamos que sí va a pasar el filtro automático.
Así, en este caso, podríamos probar a sustituir todo lo que venga del hostname regional es.search.yahoo.com y hacer como que viene del buscador general: https://search.yahoo.com
O ya puestos, podemos incluso darle un URL completo que incluya el parámetro de búsqueda que GA espera encontrar: normalmente q, s, search… o en el caso de yahoo, p
Ejemplo 4: Utilización con Universal Analytics
Hasta aquí hemos aplicado esta solución exclusivamente a Google Analytics 4 por ser la que —de momento— lo necesita.
Pero, en realidad, nada nos impide utilizar este mismo filtro con Universal Analytics (por el motivo que sea: problemas con su lista de exclusión de referencias nativa, necesidad de filtros más complejos o restrictivos, comodidad de gestión unificada/externa…).
El procedimiento a seguir sería el mismo, pero especificando el valor del referrer ya filtrado en el parámetro referrer
(en lugar de page_referrer
), en cada hit.
Para ello, podemos editar la etiqueta o etiquetas de Google Analytics: Universal Analytics correspondientes… o mejor aún, añadirlo en la Variable de Configuración de Google Analytics común que idealmente ya deberíamos tener creada y asignada (en caso contrario, salga por aquí, alinéese a la izquierda, una cruz por persona).
Quedaría algo así:
Asimismo, lo mismo nos servirá potencialmente para cualquier otra plataforma de analítica o marketing externa, siempre y cuando cumpla las mismas condiciones:
- La gestionamos con GTM.
- Recopila el valor del referrer.
- Nos permite enviarlo explícitamente en algún parámetro configurable.
Y seguir el mismo procedimiento: buscar el parámetro que corresponda al referrer, si lo hay, y configurarlo en la etiqueta o script correspondiente. 😉
Hola Aitor,
¿Has testeado esto? Lo he aplicado tal y como comentas y no funciona. En mi caso excluyo mis subdominios, porque me están entrando como referral en mi SPA. Mi dominio es “dominio.com” y me aparece como referral para “add.dominio.com”.
Gracias!
Hola!
Sí. No he comprobado si las actualizaciones más recientes de GA4 (en las que ya se incluyen las primeras opciones de filtros, pero aún está verde) rompen algo, pero en principio sólo se me ocurre un caso en el que podría ocurrir.
Comprueba lo siguiente:
– En GA4, en qué eventos se envía page_referrer sin filtrar? Primero da el parámetro de alta como dimensión personalizada si fuera necesario, y luego compruébalo para eventos concretos (particularmente, page_view vs otros eventos)
– Puedes confirmar si en el lado web (preview GTM, peticiones salientes de red, etc) el pixel GA4 se lanza correctamente con el parámetro en blanco (ojo, tiene que existir pero estar en blanco, no es lo mismo que si no existe)?
Hola de nuevo!
Si, justo probé poner el filtro como dimensión personalizada y ahí si que funciona, pero en el evento page_view, que es el que estoy testando, se manda con el referral sin filtrar.
Lo que he hecho, y conseguido que funcione, es desactivar en GA la medición mejorada (tenía configurado el page_view cuando carga la página y cuando hay cambio en el historial, ya que somos SPA). Luego, he activado ese trigger en GTM y de repente me funciona!
El filtro hace que no me aparezca siquiera el campo referral. Lo estoy mirando en el debugview de GA.
Si quieres podemos mantener una vía de contacto más estrecha, justo estoy configurando GA4 y no me importaría compartir conocimientos y crear algo de comunidad hispanohablante.
Puedes escribirme https://www.linkedin.com/in/raul-ferher/
Hoy he creado esas variables siguiendo tus indicaciones. No tengo idea se va a funcionar. Espero que si. Si al cabo de una semana veo que self-referral y paypal desaparece volvere y lo publico aqui en el post.
Mucha gracias!
Genial, buscaba justo esto y me lo has resuelto a la perfección.
Tengo ventas de fichas gratuitas de google shopping, pero no sé cómo identificarlas como fuente de tráfico. Me aparece fuente Google, pero me gustaría saber qué ventas vienen de las fichas gratuitas de google (shopping) y cuál del resto del tráfico orgánico. ¿Es posible?
Gracias y enhorabuena por el tutorial
Hola! En principio Google no aporta esa información; el tráfico de fichas de Shopping se registra como google/cpc (anuncios) o google/organic (gratuitas), como el resto de tráfico del buscador. https://support.google.com/merchants/answer/188492
Si lo necesitas diferenciar, podría hacerse usando URLs de destino distintos.
hola, hice el proceso para el tráfico de páginas externas, pero no sé qué activador usar para poder guardar la etiqueta final… podrían informarme por favor. Gracias.
¿La etiqueta base de GA? Salvo que deba restringir los pageviews por algún motivo, el All Pages de toda la vida. Salvo que estés empezando de cero (en cuyo caso, lanzarse inmediatamente a configuraciones experimentales no es la mejor idea), lo normal es que estuviera creada ya.