¿Qué es el dataLayer de Google Tag Manager?
El dataLayer (capa de datos) es el objeto JavaScript que usan Google Tag Manager y gtag.js para pasar información a las etiquetas, según la documentación para desarrolladores de Google (actualizada el 22 de julio de 2026). La web lo alimenta con dataLayer.push() y GTM lee de ahí eventos y valores para enviarlos a Google Analytics 4, Google Ads o Meta.
window.dataLayer = window.dataLayer || [];
window.dataLayer.push({ event: 'generate_lead', form_id: 'contacto' });
Sin dataLayer, GTM solo ve clics y envíos de formulario genéricos: nada de comercio electrónico con importes, de segmentación por estado del usuario ni de atribución de cada contacto a su campaña.
GA4 ocupa el 81,4 % del mercado de analítica web según W3Techs (octubre de 2025). En SMedialab implementamos el dataLayer para empresas de Tenerife —comercio en Santa Cruz, alojamientos del sur, despachos en La Laguna— y lo coordinamos con desarrollo desde el diseño hasta la validación.
Las tres reglas de Google para implementar el dataLayer
La documentación de Google Tag Manager fija tres reglas que aplicamos en cada implementación:
- Declararlo una sola vez y antes del contenedor, arriba del
<head>, conwindow.dataLayer = window.dataLayer || [];. - Añadir datos siempre con
dataLayer.push(): reasignar la variable después del fragmento del contenedor borra lo que ya contenía. - Respetar mayúsculas y minúsculas: un
pushadatalayerno llega a GTM.
¿Qué eventos de comercio electrónico envía el dataLayer a GA4?
En una tienda online, el dataLayer transmite los eventos de comercio electrónico recomendados por GA4, cada uno con su array items[] (item_id, item_name, price, item_brand, item_category):
view_item_listyselect_item: listado de categoría y clic en un producto.view_item: ficha de producto.add_to_cartyremove_from_cart: con cantidad y precio actualizados.begin_checkout,add_shipping_infoyadd_payment_info: los pasos del pago.purchase: contransaction_id,value,currency,tax,shippingeitems[].
Antes de cada evento de comercio electrónico enviamos dataLayer.push({ ecommerce: null }), como recomienda Google, para que los datos de un producto no se arrastren al siguiente. Sin esta instrumentación, los embudos de GA4 quedan vacíos y Google Ads puja con datos parciales, con un CPC medio en búsqueda de 5,26 USD en 2025 según WordStream.
dataLayer en webs de servicios y B2B
En una web sin tienda, el dataLayer aporta el contexto que un clic no da:
- Estado de usuario:
user_typey unuser_idinterno. Nunca enviamos email, teléfono ni nombre: las políticas de Google Analytics no admiten datos personales identificables. - Tipo de página:
page_type(servicio, caso de éxito, blog) para filtrar informes. - Formularios:
form_id,form_stepylead_sourcepara atribuir cada contacto. - Llamadas a la acción:
cta_labelycta_positionpara comparar mensajes.
Así un despacho o un alojamiento turístico ve qué páginas y campañas traen oportunidades reales, no solo formularios enviados. En nuestra propia web, desde agosto de 2026, un push con event: 'web_vitals' lleva a GA4, a través de GTM, las Core Web Vitals que mide el navegador de cada visitante.
Cómo coordinamos el dataLayer con el equipo de desarrollo
El dataLayer vive en el código de la web, así que lo coordinamos con el equipo de desarrollo del cliente o lo programamos nosotros. La especificación que entregamos detalla cada dataLayer.push() con sus claves, el momento del flujo en que se envía, el tipo de cada parámetro y los casos límite: carrito vacío, pago fallido o inicio de sesión con redes sociales.
Diseñamos los nombres dentro de los límites de recogida de GA4 para propiedades estándar: 40 caracteres por nombre de evento, 25 parámetros por evento y 100 caracteres por valor. Cada evento se valida con datos reales en el modo Vista previa de GTM y en DebugView de GA4 antes de publicar.
¿En qué orden van el dataLayer y Consent Mode v2?
Con Consent Mode v2, el estado de consentimiento por defecto tiene que estar en el dataLayer antes de que se active cualquier etiqueta de Google, que lo exige para el tráfico del Espacio Económico Europeo desde el 6 de marzo de 2024. Programamos este orden:
gtag('consent', 'default', ...)conad_storage,analytics_storage,ad_user_datayad_personalizationdenegados por defecto.- La carga del banner de cookies, que envía
gtag('consent', 'update', ...)cuando el usuario decide.
Si el orden se invierte, las etiquetas se evalúan con un consentimiento indefinido.
Versionado del dataLayer
Cada cambio en la especificación lleva número de versión, fecha y nota de compatibilidad, y los campos antiguos se mantienen hasta migrar las etiquetas que los leen. Con exportación a BigQuery, eso permite comparar datos históricos sin romper la serie.
Datos del sector y sus fuentes
- Definición y reglas del dataLayer: documentación de Google Tag Manager para desarrolladores, actualizada el 22 de julio de 2026.
- Cuota de Google Analytics en analítica web: 81,4 % — W3Techs, octubre de 2025.
- CPC medio de Google Ads en búsqueda: 5,26 USD — WordStream, benchmarks 2025.
- Consent Mode v2 exigido en el EEE: 6 de marzo de 2024 — Ayuda de Google Tag Manager.
- Empresas canarias de 10 o más empleados con venta online: 31,4 % — INE, ETICCE 2024-2025.
- Comercio electrónico B2C en Canarias: 4.066 M€ en 2024 — OCTSI.