El Modo de Consentimiento de Google es un componente fundamental para que los sitios web que utilizan los servicios de Google mantengan el cumplimiento de las normativas de privacidad como el GDPR. Cuando se configura correctamente, permite que las etiquetas de Google ajusten su comportamiento en función de las opciones de consentimiento del usuario. Sin embargo, una configuración incorrecta puede dar lugar a problemas de cumplimiento y puede afectar a tu capacidad para utilizar eficazmente los servicios de publicidad y análisis de Google.
Esta guía te ayudará a identificar y resolver problemas comunes de configuración del Modo de Consentimiento de Google detectados por el Escáner de Sitios de iubenda.
El Escáner de Sitios de iubenda comprueba automáticamente tu sitio web en busca de varios problemas de configuración del Modo de Consentimiento de Google. Si se detecta algún problema, verás una alerta de “Se han detectado problemas” en tu dashboard. El escáner comprueba:
⚠️ Por qué se produce este problema:
Cuando el script iubenda Privacy Controls and Cookie Solution está incrustado después de scripts de Google (como Google Analytics o Google Tag Manager), los scripts de Google se disparan antes de que los usuarios puedan elegir sus opciones de consentimiento. Esto puede dar lugar a que los consentimientos por defecto se pasen como “concedidos” sin el consentimiento del usuario, lo que lleva al incumplimiento del GDPR
💡 Cómo solucionarlo
Utiliza el plugin iubenda WordPress, que coloca automáticamente el script Privacy Controls and Cookie Solution antes que cualquier script de Google.
Accede al código HTML de tu sitio web
Localiza la sección <head>
de tus páginas donde están incrustados los scripts.
Identifica el script iubenda Privacy Controls and Cookie Solution
Busca un código similar a
<script type="text/javascript" src="https://cs.iubenda.com/autoblocking/[YOUR-SITE-ID].js"></script>
Identificar scripts relacionados con Google
Busca guiones como
gtag.js
(Google Analytics)googletagmanager.com
(Google Tag Manager)Reordena los guiones
Mueve el script de iubenda Privacy Controls and Cookie Solution ANTES que cualquier script de Google.
Ejemplo de orden INCORRECTO del guión:
<!-- WRONG: Google Analytics script placed BEFORE Privacy Controls and Cookie Solution -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-XXXXXXXXXX');
</script>
<!-- iubenda Privacy Controls and Cookie Solution placed AFTER Google scripts -->
<script type="text/javascript">
var _iub = _iub || [];
_iub.csConfiguration = {
"askConsentAtCookiePolicyUpdate":true,
"cookiePolicyInOtherWindow":true,
"countryDetection":true,
"enableGdpr":true,
"floatingPreferencesButtonDisplay":"bottom-right",
"siteId":3258456,
// ... rest of configuration
};
</script>
<script type="text/javascript" src="https://cs.iubenda.com/autoblocking/[YOUR-SITE-ID].js"></script>
<script type="text/javascript" src="//cdn.iubenda.com/cs/gpp/stub.js"></script>
<script type="text/javascript" src="//cdn.iubenda.com/cs/iubenda_cs.js" charset="UTF-8" async></script>
Ejemplo de orden de escritura CORRECTO:
<!-- CORRECT: iubenda Privacy Controls and Cookie Solution placed FIRST -->
<script type="text/javascript">
var _iub = _iub || [];
_iub.csConfiguration = {
"askConsentAtCookiePolicyUpdate":true,
"cookiePolicyInOtherWindow":true,
"countryDetection":true,
"enableGdpr":true,
"floatingPreferencesButtonDisplay":"bottom-right",
"siteId":3258456,
// ... rest of configuration
};
</script>
<script type="text/javascript" src="https://cs.iubenda.com/autoblocking/[YOUR-SITE-ID].js"></script>
<script type="text/javascript" src="//cdn.iubenda.com/cs/gpp/stub.js"></script>
<script type="text/javascript" src="//cdn.iubenda.com/cs/iubenda_cs.js" charset="UTF-8" async></script>
<!-- Google Analytics placed AFTER iubenda -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-XXXXXXXXXX');
</script>
⚠️ Por qué se produce este problema:
La Privacy Controls and Cookie Solution se configura intencionadamente mediante código con el Modo de Consentimiento de Google desactivado, aunque tu sitio web lo requiera para cumplir los requisitos de Google y la normativa sobre privacidad.
💡 Cómo solucionarlo
Con el Autobloqueo activado
<script type="text/javascript" src="https://cs.iubenda.com/autoblocking/[YOUR-SITE-ID].js"></script>
Con Sync.js (Bloqueo automático desactivado)
<script type="text/javascript" src="https://cs.iubenda.com/sync/[YOUR-SITE-ID].js"></script>
Script unificado (última versión)
<script type="text/javascript" src="//embeds.iubenda.com/widgets/[YOUR-WIDGET-ID].js"></script>
"googleConsentMode": true
está establecido en tu configuración"googleConsentMode": false
⚠️ Por qué se produce este problema:
Tu Privacy Controls and Cookie Solution está instalada pero no utiliza ni la función de autobloqueo ni Sync.js, que son necesarias para que el Modo de Consentimiento de Google funcione correctamente.
💡 Cómo solucionarlo
Actualización de guiones obsoletos:
Si utilizas una versión obsoleta del script Privacy Controls and Cookie Solution, sustitúyela por una de estas versiones actualizadas compatibles con el Modo de Consentimiento de Google:
Opción 1 – Con bloqueo automático (Recomendado)
<script type="text/javascript" src="https://cs.iubenda.com/autoblocking/[YOUR-SITE-ID].js"></script>
Opción 2 – Con Sync.js
<script type="text/javascript" src="https://cs.iubenda.com/sync/[YOUR-SITE-ID].js"></script>
Opción 3 – Guión unificado
<script type="text/javascript" src="//embeds.iubenda.com/widgets/[YOUR-WIDGET-ID].js"></script>
⚠️ Por qué se produce este problema:
Uno o más fines de consentimiento se establecen como “concedido” por defecto antes de que los usuarios hagan una elección explícita. Esto viola el principio de obtener el consentimiento mediante una acción explícita y positiva y no se ajusta a las mejores prácticas.
💡 Cómo solucionarlo
Los plugins o aplicaciones externas pueden estar configurando incorrectamente los valores predeterminados de consentimiento. Esto es especialmente común con herramientas que añaden píxeles o configuran servicios de Google.
WordPress + Kit del sitio:
Shopify + aplicación Google y YouTube:
Si anteriormente estableciste manualmente los valores predeterminados de consentimiento mediante gtag, elimina ese código. Busca y elimina código como éste:
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
// REMOVE THIS CODE - it overrides default consent
gtag('consent', 'default', {
'ad_storage': 'granted',
'ad_user_data': 'denied',
'ad_personalization': 'denied',
'analytics_storage': 'denied'
});
</script>
Tras eliminar este código, el CMP de iubenda se encargará de la configuración de consentimiento por defecto, siempre que tengas activado el autobloqueo o Sync.js.
⚠️ Por qué se produce este problema:
Se están enviando múltiples señales de consentimiento por defecto porque hay múltiples banners de cookies (de diferentes CMP) instalados en el sitio web. Esto puede ocurrir cuando se utilizan plataformas como Shopify o cuando los plugins gestionan doblemente el Modo de Consentimiento de Google. Cuando nuestra solución y otros plugins lanzan señales del Modo de Consentimiento de Google, se produce incompatibilidad y múltiples señales.
💡 Cómo solucionarlo
Si estás utilizando la plantilla GTM de iubenda, asegúrate de que no estás utilizando simultáneamente otra plantilla que configure el Modo de Consentimiento de Google (por ejemplo, la plantilla Simo Ahava).
Los plugins o aplicaciones externas pueden estar configurando incorrectamente los valores predeterminados de consentimiento. Esto es especialmente común con herramientas que añaden píxeles o configuran servicios de Google.
WordPress + Kit del sitio:
Shopify + aplicación Google y YouTube:
Si previamente estableciste manualmente los valores predeterminados de consentimiento mediante gtag, elimina ese código, ya que anulará la configuración de CMP.
Ejemplo de código a eliminar:
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
// This code overrides default consent – REMOVE IT
gtag('consent', 'default', {
'ad_storage': 'granted',
'ad_user_data': 'denied',
'ad_personalization': 'denied',
'analytics_storage': 'denied'
});
</script>
Tras eliminar este código, el CMP de iubenda será el único gestor de la configuración de consentimiento.
Para comprobar si hay anomalías en tu Capa de datos:
dataLayer
y pulsa Intro⚠️ Por qué se produce este problema:
La preferencia de consentimiento del usuario (Aceptar o Rechazar) se envía a Google antes de que el usuario haya hecho explícitamente una elección en el banner. Como resultado, cuando el usuario finalmente interactúa con el banner de cookies, su preferencia ya no es tenida en cuenta por Google, puesto que ya se ha enviado antes una señal de consentimiento.
Esto ocurre a menudo cuando el Privacy Controls and Cookie Solution está configurado con enableGdpr: false
, lo que significa que el usuario ha activado involuntariamente la legislación estadounidense y/o la legislación suiza aunque el sitio debería cumplir la legislación GDPR.
💡 Cómo solucionarlo
enableGdpr: true
está establecido en tu configuración si tu sitio sirve a usuarios de la UELas mismas herramientas de terceros mencionadas en los Temas 4 y 5 pueden causar este problema:
WordPress + Kit del sitio:
Shopify + aplicación Google y YouTube:
Si activas la ley de Cookies de EE.UU. en el configurador de Privacy Controls and Cookie Solution, el comportamiento predeterminado para los usuarios de EE.UU. difiere del GDPR:
Nota: Si tienes un plan Gratuito, esto sólo se aplica si desactivas el GDPR y sólo aplicas la legislación estadounidense. Para aplicar el GDPR a los usuarios de la UE y la Ley de EE.UU. a los usuarios de EE.UU., necesitas al menos un plan Advanced.
ad_storage
se concede cuando el usuario no ha optado por la autoexclusión:
analytics_storage
se concede cuando el usuario no ha optado por la autoexclusión:
Para comprobar que tu configuración funciona correctamente:
Si tienes dificultades para resolver estos problemas:
Recuerda que Google requiere una implementación adecuada del Modo de Consentimiento para seguir utilizando sus servicios de publicidad y análisis. Garantizar una configuración correcta es esencial tanto para el cumplimiento como para mantener la funcionalidad de tus servicios de Google.