Google Tag Gateway y gestión de consentimiento con UniConsent

¿Qué es Google Tag Gateway?

Google Tag Gateway (GTG) es una función de infraestructura de Google que sirve las etiquetas de Google, incluyendo gtag.js, Google Tag Manager y Google Analytics, desde un dominio de primera parte en lugar de desde los servidores de Google. En lugar de que el navegador obtenga scripts de googletagmanager.com o google-analytics.com, las solicitudes van a una ruta de primera parte en su dominio, como su-dominio.com/gtg/js. Un CDN (Cloudflare, Akamai o Fastly) o un balanceador de carga redirige estas solicitudes a Google de forma transparente.

Para la documentación oficial, consulte la documentación de Google Tag Gateway.

Cómo se despliega GTG

Existen dos métodos de despliegue:

Inyección CDN con un clic

El proveedor de CDN (por ejemplo, Cloudflare) inyecta las etiquetas de medición directamente en el elemento head de la página a través del CDN. Esto elimina su control sobre el orden de carga. El CDN decide cuándo y cómo se reescriben las URLs de las etiquetas de Google, y usted no puede controlar la posición de estos scripts en relación con el fragmento del CMP.

Dado que las etiquetas GTG se cargan como scripts de primera parte (desde su propio dominio en lugar del dominio de Google), el bloqueo del modo de consentimiento básico que busca scripts cargados desde el dominio de Google Tag Manager se vuelve ineficaz. Las etiquetas aparecen como recursos de primera parte y no son capturadas por las reglas de bloqueo basadas en dominio.

Configuración manual de GTG

Usted agrega la ruta del script de primera parte manualmente en el código fuente de la página y controla dónde aparece en relación con otros scripts. Esto le da control total sobre el orden de carga. La configuración manual es el despliegue recomendado cuando el momento del consentimiento es crítico.

Para instrucciones de configuración, consulte Configurar Google Tag Gateway.

Cómo afecta GTG al consentimiento

Cuando GTG no está activo, las etiquetas de Google se cargan desde dominios de terceros. El flujo de consentimiento es predecible: su CMP se carga primero, establece los valores predeterminados de consentimiento, y las etiquetas de Google respetan esos valores cuando se ejecutan.

Cuando GTG está activo, especialmente mediante la inyección CDN con un clic, las etiquetas de Google pueden cargarse más rápido porque se sirven desde un dominio de primera parte. Si el CMP aún no ha establecido los valores predeterminados de consentimiento para cuando se ejecuta la etiqueta de Google, la etiqueta se ejecuta sin señales de consentimiento. Esto se denomina señal de consentimiento "tardía".

Qué significa una señal de consentimiento tardía

  • Las etiquetas de Google pueden establecer cookies o recopilar datos antes de que el usuario haya tomado una decisión de consentimiento
  • Los valores predeterminados de Consent Mode (como denied) no se aplican durante la ejecución inicial de la etiqueta
  • El modelado de conversiones y los datos de analítica pueden ser inexactos
  • El sitio puede violar el RGPD, la Directiva ePrivacy u otras regulaciones que requieren consentimiento antes de la recopilación de datos

Cómo prevenir las señales de consentimiento tardías

Para garantizar que las mediciones se mantengan sin violar el consentimiento, debe establecer un bloque de denegación predeterminado para que las etiquetas de Google comiencen en un estado denegado. El CMP luego se carga y vuelve a otorgar explícitamente el consentimiento para las áreas donde el usuario ya lo ha aceptado. Los eventos se ponen en cola y se reproducen una vez que se otorga el consentimiento.

Si utiliza Google Tag Manager, puede establecer un estado de denegación predeterminado directamente en GTM:

  1. Navegue a "Configuration" en GTM
  2. Vaya a "Manage" > "Override consent mode defaults"
  3. Configure la configuración para denegar todo para esa etiqueta

Esto inyecta un bloque de código de denegación predeterminada antes de que las etiquetas de Google se carguen a través del CDN. También puede usar Data Transmission Controls para evitar que los datos de medición de comportamiento y configuración se envíen a Google cuando el consentimiento es denegado.

Para más información sobre la implementación del consentimiento y solución de problemas, consulte la documentación de Google Consent Mode.

Cómo verificar si una etiqueta está inscrita en GTG

Puede verificar si una etiqueta está inscrita en Google Tag Gateway a través de la configuración de su etiqueta de Google. Consulte Acceder a la configuración de su etiqueta de Google para instrucciones paso a paso sobre cómo verificar el estado de inscripción en GTG.

1. Encontrar el ID de Google Tag o el ID de contenedor de GTM en el sitio

Para verificar si una etiqueta está inscrita en GTG, use https://tagassistant.google.com/ para encontrar el ID del contenedor (GTM-XXXXX) o el ID de la etiqueta en la página. Vaya a https://tagassistant.google.com/, haga clic en "Add domain" e ingrese la URL de su sitio web. Luego verá los IDs de etiquetas de Google como GTM-XXXXX, AW-XXXXX o G-XXXXXXXX.

Haga clic en Summary, luego revise los "Container Details" o "Tag Details" de cada contenedor o ID de etiqueta. Bajo "Container Details" o "Tag Details" hay una etiqueta "source". Si hay un ícono, pase el cursor sobre él — muestra "Tag was loaded by Google tag gateway" si la etiqueta está inscrita en GTG.

Estas etiquetas se cargan desde www.googletagmanager.com por defecto si GTG no está inscrito.

Cuando GTG está inscrito, se cargan desde una URL de primera parte (/xxxxx/) y cargan etiquetas desde una ruta de primera parte (/xxxxx/yyyyyy) en su propio dominio.

PrefijoProductoDatos enviados a
G-Google Analytics 4 (GA4)www.google-analytics.com (+ region1.google-analytics.com, *.analytics.google.com)
GT-Google tag (gtag.js)El "Google tag" unificado — una etiqueta, múltiples destinos
AW-Google Ads (anteriormente AdWords)www.googleadservices.com, googleads.g.doubleclick.net, www.google.com (+ cada TLD de país)
DC-Floodlight (Campaign Manager 360 / Display & Video 360)*.fls.doubleclick.net, ad.doubleclick.net
GTM-Google Tag ManagerNinguno propio — es un despachador que activa las etiquetas en su interior

2. Confirmar en la interfaz de Google Tag Manager

  1. Abra Google Tag Manager en https://tagmanager.google.com/#/home#tags, luego busque el contenedor o la etiqueta en la pestaña "Accounts" o "Google tags" según el ID de la etiqueta y ábralo.
  2. Vaya a la sección "Admin" haciendo clic en la pestaña "Admin".
  3. Busque en "Google Tag Gateway" para confirmar si está marcado como activo, luego haga clic para verificar si su dominio específico está marcado como "First-party". Si es así, la etiqueta está inscrita en GTG.

3. Confirmar en la interfaz de Google Ads

  1. Inicie sesión en su cuenta de Google Ads en https://ads.google.com.
  2. Abra "Tools" > "Data Manager".
  3. Haga clic en el enlace "Administrar" en la etiqueta bajo "Google tag".
  4. Vaya a la sección "Admin" haciendo clic en la pestaña "Admin".
  5. Busque en "Google Tag Gateway" para confirmar si está marcado como activo, luego haga clic para verificar si su dominio específico está marcado como "First-party". Si es así, la etiqueta está inscrita en GTG.

4. Confirmar en la interfaz de Google Analytics

  1. Abra Google Analytics en https://analytics.google.com/ y encuentre la cuenta de su sitio web actual.
  2. Vaya a "Admin" > "Recopilación y modificación de datos" > "Flujos de datos", luego abra los detalles del flujo web y encuentre el ID de medición (por ejemplo, G-XXXXXXXXX).
  3. En la sección "Google tag", haga clic en "Configurar ajustes de etiqueta" para abrir los detalles de la etiqueta.
  4. Vaya a la sección "Admin" haciendo clic en la pestaña "Admin".
  5. Busque en "Google Tag Gateway" para confirmar si está marcado como activo, luego haga clic para verificar si su dominio específico está marcado como "First-party". Si es así, la etiqueta está inscrita en GTG.

5. Usar las herramientas de desarrollador del navegador para verificar

  1. Abra las herramientas de desarrollador (F12) y vaya a la pestaña Network.
  2. Cargue su página y filtre las solicitudes por su propio dominio.
  3. Busque solicitudes a rutas como /RANDOM_STRING/ o rutas de primera parte similares que carguen scripts desde /RANDOM_STRING/LONG_RANDOM_STRING y envíen datos a los dominios de productos de Google mencionados anteriormente o a rutas de productos de Google como pagead/conversion, /collect, etc. Si ve estos patrones, la etiqueta podría estar inscrita en GTG.

Consulte la guía de configuración de Google Tag Gateway para detalles sobre la inscripción y configuración.

Si se detecta una señal de consentimiento tardía

Si las etiquetas de Google están recibiendo señales de consentimiento tardías (después de la ejecución inicial) y se ha verificado la inscripción en GTG, entonces:

Si puede configurar GTG manualmente donde controla el orden de carga de scripts, coloque la Etiqueta de estado predeterminado de Consent Mode antes de la referencia del script de GTG en el código fuente de su página. Advanced Consent Mode es el mecanismo recomendado para etiquetas habilitadas con GTG ya que es compatible con GTG manual.

Si no puede controlar el orden de carga de scripts con una configuración de inyección CDN con un clic, puede migrar todas las etiquetas a un contenedor de Google Tag Manager y desplegar GTM a través de GTG, lo que centraliza el control del orden de carga para que las verificaciones de consentimiento integradas de GTM se apliquen a todas las etiquetas dentro del contenedor.

También puede habilitar Data Transmission Controls para restringir qué datos pueden transmitir las etiquetas de Google según el estado de consentimiento, de acuerdo con sus necesidades.

  1. Establece los valores predeterminados de consentimiento antes de que se active cualquier etiqueta. El fragmento de inicialización de consentimiento de UniConsent se ejecuta de forma síncrona en el <head> de la página, estableciendo todos los tipos de consentimiento en denied por defecto antes de que se ejecuten las etiquetas de Google, independientemente de si se cargan desde los servidores de Google o a través de GTG.

  2. Compatible con GTG manual. Cuando usted controla el orden de carga de scripts (GTG manual), colocar el fragmento de UniConsent antes de la ruta del script GTG garantiza que los valores predeterminados de consentimiento siempre se establezcan primero.

  3. Habilita el modelado de conversiones. Cuando el consentimiento es denegado, las etiquetas de Google aún envían pings sin cookies que alimentan el modelado de conversiones, recuperando una parte significativa de los datos de conversión.

Coloque la Etiqueta de estado predeterminado de Consent Mode en el <head> de la página. Debe aparecer antes de cualquier script de etiquetas de Google, incluyendo las rutas de GTG. Orden de ejemplo:

<head>

  <!-- 1. Consent mode defaults, same as stubgcm.min.js -->
  <script src="https://cmp.uniconsent.com/v2/stubgcm.min.js"></script>
  <!-- Or: Consent mode defaults inline on page, same content as stubgcm.min.js -->
  <script>
  (function() {
      if(!window['gtag']) {
          window['dataLayer'] = window['dataLayer'] || [];
          window['gtag'] = function(){window['dataLayer'].push(arguments);}
      }
      window['gtag']('set', 'developer_id.dZTcxZD', true);
      window['gtag']('consent', 'default', {
          ad_storage: 'denied',
          functionality_storage: 'denied',
          personalization_storage: 'denied',
          analytics_storage: 'denied',
          ad_user_data: 'denied',
          ad_personalization: 'denied',
          security_storage: 'granted',
          wait_for_update: 1000
      });
      window['gtag']("set", "ads_data_redaction", true);
      window['gtag']("set", "url_passthrough", false);
  })();
  </script>

  <!-- 2. UniConsent CMP tag -->
  <script async src="https://cmp.uniconsent.com/v2/YOUR_LICENSE_ID/cmp.js"></script>

  <!-- 3. Google tags / GTG script path (loads after consent defaults are set) -->
  <script async src="https://www.googletagmanager.com/gtag/js?id=YOUR_ID"></script>
</head>

Verifique el momento del consentimiento usando el UniConsent Consent Mode Checker para confirmar que los valores predeterminados de consentimiento se establecen antes de que se ejecuten las etiquetas de Google y que no hay errores.

Monitoree en su panel de control de UniConsent. El informe de auditoría de implementación señala las señales de consentimiento tardías y los valores predeterminados de consentimiento faltantes.

Controles de transmisión de datos y valores predeterminados de consentimiento global

Los Data Transmission Controls de Google restringen qué datos envían las etiquetas de Google según el estado de consentimiento del usuario. Combinados con las señales de consentimiento de UniConsent, esto crea un enfoque por capas:

ControlQué haceCuándo usarlo
Global Consent DefaultsEstablece el estado de consentimiento inicial para todos los tipos de consentimiento antes de la interacción del usuarioSiempre, garantiza que las etiquetas tengan una línea base de consentimiento en la primera carga de página
Data Transmission ControlsRestringe campos de datos específicos para que no se envíen a GoogleCuando necesita un control más granular más allá de los interruptores de tipo de consentimiento
Region-specific defaultsEstablece valores predeterminados diferentes según la región geográficaCuando atiende a usuarios tanto en el EEE/Reino Unido como en otras regiones

Denegación predeterminada global vs regional

Aunque técnicamente puede establecer los valores predeterminados de consentimiento en denied solo en regiones específicas (como el EEE), Google recomienda encarecidamente establecer una denegación predeterminada global. Una denegación global previene problemas de consentimiento tardío si decide cambiar el comportamiento regional del banner en una fecha posterior. Para casos donde las etiquetas de Google no pueden moverse después de los scripts del CMP, Google recomienda específicamente usar la interfaz de Global Consent Defaults en el panel de administración de Tag Manager para establecer los estados de consentimiento predeterminados.

Cómo UniConsent gestiona el consentimiento regional automáticamente

UniConsent actualiza automáticamente el estado de consentimiento según la región detectada del usuario:

  • Para EEE, Reino Unido y Suiza, todos los tipos de consentimiento se establecen en denied por defecto. El usuario debe interactuar con el banner de consentimiento antes de que se otorgue cualquier consentimiento.
  • Para regiones que no requieren consentimiento, UniConsent otorga automáticamente el consentimiento según su configuración. Esto significa que los usuarios en esas regiones no son bloqueados por solicitudes de consentimiento innecesarias, y las etiquetas de Google pueden recopilar datos inmediatamente sin esperar la interacción con el banner.

Este comportamiento basado en la región es completamente configurable en el panel de control de UniConsent, permitiéndole definir qué regiones requieren consentimiento explícito y qué regiones pueden proceder con otorgamiento automático de consentimiento.

Google Tag Gateway vs Server-Side GTM

GTG y Google Tag Manager del lado del servidor (sGTM) son soluciones diferentes que pueden funcionar juntas:

Google Tag GatewayServer-Side GTM
Qué haceSirve los scripts de etiquetas de Google desde un dominio de primera parteEnruta las solicitudes de etiquetas a través de un contenedor del lado del servidor
DespliegueA nivel de CDN (Cloudflare, Akamai, Fastly) o manualRequiere un contenedor sGTM del lado del servidor (Cloud Run, App Engine, etc.)
Impacto en el consentimientoCambia el orden de carga de scripts; puede causar señales de consentimiento tardíasLa verificación de consentimiento ocurre del lado del servidor antes de reenviar los datos
CostoSin costo adicional de Google; requiere CDN o balanceador de carga existenteSe aplican costos de alojamiento del servidor
Ideal paraMejorar las tasas de entrega de etiquetas, reducir el impacto de los bloqueadores de anunciosControl total sobre el flujo de datos, aplicación del consentimiento del lado del servidor

Ambos pueden usarse juntos: GTG sirve la etiqueta del lado del cliente desde un dominio de primera parte, mientras que sGTM procesa los eventos resultantes del lado del servidor con verificaciones de consentimiento aplicadas antes de reenviar a Google.

Tutoriales relacionados

Documentación de Google