El viernes cierras un vuelo de Search en Anuncios de Google con CPL en euros que parece decente. El lunes, el mismo formulario de “pide presupuesto” en la landing de Madrid dispara dos eventos, el de Meta no dispara ninguno y GA4 cuenta un lead que Comercial jura que nunca llegó. Eso no es un problema de puja. Es un contenedor de Google Tag Manager que nadie ha auditado con nota.
Una lista de tácticas (“pon el dataLayer”, “activa Consent Mode”) no te dice qué está rompiendo el número de captación. Un scorecard sí: pasas, flojeas o suspendes cada pieza, y el orden de reparación queda claro. En España, con RGPD, banners de cookies que cambian cada rediseño y formularios que mandan a WhatsApp, el fallo se ve en leads duplicados, pujas inteligentes alimentadas con basura y reuniones que no existen.
Este artículo es una auditoría que puedes hacer esta semana sobre tu propio contenedor. No toca el mix de medios. Si el tracking miente, subir presupuesto solo acelera el error.
Doce comprobaciones GTM que deciden si tus conversiones en España son creíbles
Abre el contenedor de producción, no el de “copia de trabajo”. Activa Vista previa en la URL real de captación (la de campaña, no la home). Recorre el formulario, el clic a WhatsApp y el thank you. Anota cada ítem como pasa, flojo o suspenso. Lo que buscas no es “hay etiquetas”: es una sola capa de datos, disparadores que sobreviven a un rediseño de WordPress o Webflow, y cero conversiones duplicadas entre Anuncios de Google, GA4 y Meta.
Si Performance Max “lleva el grueso” y el smart bidding se come el presupuesto, el contenedor es el cuello de botella. Una señal sucia (doble page_view, generate_lead en el botón y otra vez en el thank you) infla el ROAS interno mientras el pipeline real se queda plano. En auditorías de captación vemos el mismo patrón: el equipo de medios discute CPC y el de analítica no puede jurar qué es un lead cualificado.
Si al terminar la lista ves más de tres suspensos en medición, no abras campañas nuevas. Repara señales. Un partner de analítica puede encargarse del contenedor; el enlace de Google Tag Manager and events es el sitio si quieres que alguien más limpie disparadores y duplicados sin que tú toques pujas.
Audit scorecard
-
Un solo contenedor de producción Inspecciona el snippet en el y justo después de . Debe haber un GTM-XXXX de producción. Un segundo contenedor de una agencia anterior, un plugin de WordPress que inyecta gtag.js y GTM a la vez, o un Tag Assistant que ve dos IDs, es suspenso. Lo que cuesta: cada lead se dispara dos veces, Anuncios de Google optimiza a volumen inflado y el CPL “bueno” no cuadra con el CRM.
-
dataLayer antes del snippet El array dataLayer tiene que existir antes de cargar GTM. Si el CMS pinta el snippet y luego empuja page_type o lead_id, las etiquetas de página vista se pierden el primer hit. Pasa: dataLayer declarado, eventos con nombres estables (generate_lead, contact, whatsapp_click). Suspende: variables sueltas tipo “evento1” o empujes desde tres plugins distintos.
-
Consent Mode v2 alineado con el banner En España el banner no es decoración. Comprueba default denied para analytics_storage y ad_storage hasta el consentimiento, y update al aceptar. Si el CMP (Cookiebot, Usercentrics, Iubenda) no habla con GTM, o las etiquetas de Ads disparan en “All Páginas” ignorando consentimiento, suspendes. El coste no es solo AEPD: es un 20% o más de señal perdida mezclado con hits ilegales, y pujas que aprenden de ruido.
-
Google tag (gtag) una sola vez El Google tag de Ads y el de GA4 deben vivir en GTM, no duplicados en el tema. Vista previa: un config de GA4, un config de AW-XXXX. Flojo: Conversión Linker ausente. Suspende: gtag en el HTML y otra vez en GTM. Ahí nace el clásico “GA4 dice 40 leads, Ads dice 73” en una cuenta de Barcelona o Valencia.
-
Disparador de lead, no de clic en el botón El evento de conversión de captación debe disparar cuando el servidor o el thank you confirman el envío, no cuando alguien pulsa “Enviar” con el email vacío. Inspecciona: formulario nativo, HubSpot, Typeform embebido, Gravity Formularios. Pasa: dataLayer.push al éxito, o thank you con URL única y trigger de historial. Suspende: clic CSS en .btn-submit. Eso cuenta intentos, no leads, y el smart bidding se vuelve agresivo con basura.
-
WhatsApp y teléfono como eventos distintos En captación local española el clic a wa.me o al click-to-call es a menudo el lead real. Deben ser eventos propios (whatsapp_click, tel_click) con parámetro de landing y campaña UTM, no mezclados con generate_lead del formulario. Si importas ambos a Ads como la misma conversión primaria, duplicas. Elige una primaria (formulario cualificado) y deja WhatsApp como secundaria o como microconversión.
-
Sin conversiones duplicadas entre canales Abre Anuncios de Google > Conversiónes y GA4 > Eventos el mismo día de prueba. Envía un lead de prueba con un UTM único. Debe verse una vez en cada sitio, no dos. Meta Pixel / CAPI no debe recoger el mismo generate_lead si ya lo mandas por GTM y otra vez por el plugin nativo. Last-click contando el mismo envío en Search y en PMax es el fallo que destruye la asignación de presupuesto.
-
Enhanced Conversións y first-party Con bloqueadores y privacidad, una parte relevante de las conversiones se cae. Enhanced Conversións (email hasheado en el dataLayer, user-provided data en el Google tag) no es un extra. Pasa: el campo se rellena solo si hay consentimiento de ads y el usuario envió email. Suspende: enviar PII en claro en la capa de datos. Sin esto, el ROAS de Search (en benchmarks 2026 alrededor de 4.2x de media, no un objetivo que puedas prometer) se vuelve un número de plataforma, no de negocio.
-
UTM que sobreviven al dominio y al CRM Construye un enlace de prueba con el UTM link builder. Aterriza, rellena, mira si gclid, gbraid/wbraid y UTM llegan al hidden field y al CRM. Flojo: UTM en la landing y se pierden en el paso a HubSpot o a un thank you en otro subdominio. Suspende: campañas de PMax sin ningún identificador de origen en el lead. Entonces “el 20-30% del SEM se desperdicia” deja de ser una frase y se vuelve tu mes.
-
Triggers que no mueren en el rediseño Evita CSS classes que el diseñador cambiará el martes (btn-orange-2). Prefiere data-gtm-cta=“lead-form”, dataLayer de CMS o URL de gracias. Comprueba SPA: si la web es Vue o un theme que no recarga, necesitas History Change, no Page View clásico. Un rediseño en Sevilla que “solo cambió el botón” ha apagado conversiones enteras durante once días sin que medios lo notara.
-
Entornos, versiones y permisos Debe existir entorno Live vs Latest, versiones publicadas con nota (“lead thank-you, no clic”), y dos personas de la empresa con acceso Admin, no solo la agencia. Suspende: 40 versiones “Untitled” y el contenedor a nombre de un freelancer que ya no contesta. Cuando el tracking es el activo, perder el login es perder el histórico de señales.
-
Páginas de captación que aguantan el hit GTM no salva una landing lenta. Si INP se dispara, el usuario abandona antes del dataLayer de éxito. Pasa el Core Web Vitals checker en la URL de campaña. CrUX 2026 deja a muchas orígenes por debajo del listón (solo un 55.9% pasa los tres vitals). Cruza eso con session recordings: si el formulario se abandona en el teléfono, el evento “lead” nunca existirá por muy limpio que esté el contenedor. HeyLead Insights sirve para ver el abandono real, no para adivinarlo.
DIY tools for this section
Herramientas para esta auditoría
Cómo puntuar el contenedor antes de tocar ni un céntimo de media
Tres notas, nada de semáforos de consultora. Pasa: lo has verificado en Vista previa y con un lead de prueba en las últimas 48 horas. Flojo: existe la etiqueta, pero el disparador es frágil o falta un parámetro. Suspende: duplicado, ausente, o contradice el consentimiento. No promedios. Un 10/12 con el ítem 5 en suspenso significa que no puedes fiarte del CPL.
Orden de reparación, no de vanidad: primero consentimiento y un solo contenedor (1-4), luego la definición de lead y la deduplicación (5-8), luego UTM y disparadores estables (9-11), y al final velocidad de landing (12). Escalar Search o PMax con el ítem 7 en suspenso es pagar dos veces por el mismo envío. Arreglar creatividades Meta mientras el pixel y GTM disparan el mismo evento es teatro.
Una responsable de growth en un SaaS B2B de Madrid lo resumió así en una revisión interna: Ads iba “de cine” a 38 € el lead y Comercial solo reconocía uno de cada tres. El contenedor disparaba generate_lead en el clic y otra vez en /gracias. Quitaron el trigger de clic. El CPL subió a 51 € y las reuniones semanales pasaron de 4 a 9. El número feo era el verdadero.
Si el scorecard te deja más de la mitad en flojo, no es un viernes de “ordenamos etiquetas”. Es un sprint de medición. Puedes seguir en configuración y limpieza de GTM cuando el contenedor es demasiado frágil para que un interno lo toque entre campañas.
Solicita una auditoría de marketing gratuita: revisamos tu búsqueda, anuncios y páginas de destino y te decimos qué corregir primero.
Auditoría gratuita

Plan de 30 días para reparar GTM sin cambiar el mix
El objetivo del mes no es “una estrategia de analítica”. Es que un lead de prueba recorra Ads, GA4 y CRM una sola vez, con consentimiento correcto, y que Comercial vea el mismo origen. No lances campañas nuevas. No reestructures PMax. No toques el calendario de creatividades. Solo plomería de datos.
Documenta cada cambio en la nota de versión de GTM. Si algo rompe el volumen de conversiones a los dos días, reviertes la versión, no “pruebas otra etiqueta”. El smart bidding odia los resets: cada ida y vuelta de conversión primaria le cuesta una semana de aprendizaje que pagas tú.
Checklist
-
Días 1-3: inventario. Exporta el contenedor, lista IDs de Ads, GA4, Meta y CMP. Mata el segundo GTM o el gtag del tema. Un lead de prueba con UTM único.
-
Días 4-8: Consent Mode v2 de verdad. Default denied, update al banner, etiquetas de Ads y GA4 con Additional Consent Checks. Prueba en Chrome con cookies bloqueadas y con consentimiento aceptado.
-
Días 9-14: redefine generate_lead. Quita triggers de clic. Empuja el evento solo al éxito. Separa whatsapp_click. Una conversión primaria en Ads.
-
Días 15-21: Enhanced Conversións y campos ocultos de UTM/gclid hacia el CRM. Deduplica Pixel vs GTM. Valida schema de la thank you con el validador de marcado si usas FAQ o lead en JSON-LD.
-
Días 22-30: disparadores data-gtm, entornos Live, permisos de la empresa, y Core Web Vitals de las tres landings que más gasto reciben. Congela el contenedor salvo incidentes.
Al cierre del día 30, el criterio de éxito es aburrido y medible: un envío, un evento, un registro en CRM, origen recuperable. Si GA4 y Ads siguen divergiendo más de un margen razonable de atribución (no last-click clónico), todavía hay un duplicado. No subas presupuesto hasta que esa holgura sea explicable, no misteriosa.
Lo que están viendo los responsables de captación
“El CMP estaba en ‘aceptar todo’ por defecto en mobile. Ads optimizaba a un generate_lead que en desktop ni existía. Apagamos el trigger de clic y el CPL subió, pero las demos reales dejaron de ser un sorteo.” - Head of Growth, SaaS B2B
“Teníamos dos contenedores GTM, uno de la web vieja. PMax se comía el 60% del search y el CRM no veía gclid. Hasta que no unificamos el dataLayer, cualquier discusión de ROAS era teatro.” - Directora de marketing, servicios profesionales

Preguntas frecuentes
¿Puedo auditar GTM sin acceso Admin al contenedor?
Puedes ver el ID en el código y usar Tag Assistant, pero no puedes ver versiones, entornos ni quién publicó el desastre. Sin Admin de la empresa, el contenedor es un activo de otra persona. Pide acceso antes de gastar más en medios.
¿Hace falta GTM si ya tengo el plugin de GA4 en WordPress?
El plugin suele inyectar gtag por su cuenta. Junto a GTM duplicas page_view y a veces conversiones. Elige un sistema. Para captación con Ads, Meta y WhatsApp, GTM como único inyector es más fácil de auditar.
¿El Consent Mode v2 baja mis conversiones en Anuncios de Google?
Verás menos hits observables. A cambio, dejas de alimentar pujas con tráfico sin base legal y modelas de forma más limpia. Inflar el histórico con consentimiento fingido te explota cuando el CMP se pone serio.
¿Qué hago con el clic de WhatsApp: conversión primaria o no?
Si Comercial cierra por WhatsApp y el formulario es testimonial, puede ser primaria. Si WhatsApp es un atajo de curiosos y el presupuesto cualificado entra por form, déjalo secundaria. Nunca las dos como primaria a la vez.
¿Cuánto tarda el smart bidding en digerir el arreglo?
Cuenta varios días de aprendizaje, a veces más de una semana, si cambias la acción de conversión primaria. Por eso el plan de 30 días no mezcla rediseño de campañas con limpieza de tags.
Ponlo en marcha
En los próximos días
-
Abre Vista previa en la landing que más gasta y envía un lead de prueba con UTM único.
-
Anota los doce ítems como pasa, flojo o suspenso. No negocias el 5 ni el 7.
-
Publica una versión que quite el segundo contenedor o el gtag duplicado, con nota clara.
-
Comprueba Consent Mode en móvil, que es donde más se rompe el banner.
-
Pasa Core Web Vitals y el constructor de UTM sobre esa misma URL.
Siguientes 30 días
-
Una sola definición de generate_lead al éxito.
-
WhatsApp y teléfono como eventos aparte.
-
Enhanced Conversións con consentimiento.
-
UTM y gclid hasta el CRM.
-
Permisos Admin de la empresa y contenedor congelado.
Empieza por ese lead de prueba de las últimas 48 horas y no discutas presupuesto hasta que Ads, GA4 y el CRM cuenten el mismo envío. Si el dolor es exactamente ese (disparadores que se duplican, consentimiento mal cableado y conversiones que no sobreviven al rediseño), HeyLead se queda con la limpieza del contenedor GTM y la definición de eventos de captación para que el equipo de marketing deje de pelearse con números que no existen. Chatea con nosotros en WhatsApp
Auditoría de marketing gratuita, o contacta con Martin:
Auditoría gratuita Conecta por WhatsApp · [email protected]