Ver opiniones
Problema HubSpot tracking

HubSpot no captura UTMs en formularios

Si HubSpot no guarda UTMs en los contactos, no asumas que la campaña está mal medida ni que HubSpot falla. Muchas veces el dato sí existió en la primera URL, pero se perdió antes del submit: una redirección limpió la query, el usuario navegó a otra página, el CTA no arrastró parámetros, el formulario no tenía campos ocultos, el tracking code no estaba en la landing o el consentimiento bloqueó parte de la señal.

HubSpot puede atribuir fuente de tráfico y también puede auto-popular campos con query strings, pero los UTMs brutos no aparecen mágicamente en cualquier propiedad personalizada. Necesitas propiedades con nombres internos correctos, campos ocultos en el formulario adecuado o una capa técnica que conserve los parámetros hasta el envío.

El diagnóstico serio separa tres cosas: la atribución nativa de HubSpot, los campos UTM personalizados que quieres ver en el contacto y la señal que Google Ads/GA4 necesita para optimizar. Si mezclas esas tres capas, el informe parece roto aunque cada sistema esté haciendo una parte distinta.

UTM
source / medium / campaign
HubSpot
forms + tracking code
P1
atribución comercial

Qué está pasando probablemente

1

Las propiedades UTM no existen o tienen nombres internos distintos

Para guardar utm_source, utm_medium o utm_campaign como campos visibles del contacto, las propiedades deben existir y el nombre interno que recibe el formulario debe coincidir con el parámetro o con el mapeo técnico que uses.

2

El formulario no tiene hidden fields en la versión correcta

Puede que hayas añadido campos ocultos a un formulario, pero la landing usa otro formulario, otra versión, un embed diferente, una página standalone o un flujo que no acepta el mismo tratamiento.

3

La UTM se pierde entre landing y formulario

Si el usuario aterriza con UTMs en una página y luego hace clic a otra, abre un modal, cambia de idioma, pasa por una redirección o llega a un calendario, la URL final puede no conservar los parámetros.

4

HubSpot tracking code falta o no cubre el dominio externo

En webs externas, HubSpot necesita su tracking code y configuración de dominios para reconocer visitas, páginas y actividad. Si falta en una parte del recorrido, la fuente puede quedar incompleta o separada del formulario.

5

Consentimiento, bloqueadores o privacidad reducen la señal

CMP, Consent Mode, ad blockers, Safari, iOS o políticas internas pueden impedir cookies o scripts. En ese caso conviene preservar UTMs en campos propios y no depender solo de reconocimiento de visitante.

6

La web es SPA o cambia ruta sin pageview real

En React, Next.js o una single-page app, el usuario puede navegar sin recargar la página. Si HubSpot no recibe el cambio de ruta correcto, la fuente y la página asociada pueden quedar mal leídas.

7

El contacto ya existía y la propiedad no se sobrescribe como esperas

Un contacto existente puede conservar valores antiguos, actualizar solo algunas propiedades o mezclar fuente original, última fuente y UTMs personalizados. Hay que mirar historial de propiedades, no solo el valor actual.

Cómo comprobarlo sin romper nada

Crea una URL de prueba con UTMs claras: ?utm_source=qa&utm_medium=test&utm_campaign=hubspot_utm_debug y abre la landing en incógnito.

Antes de enviar, confirma si esas UTMs siguen en la URL final donde vive el formulario. Si ya no están, el problema no está en HubSpot: está en navegación, redirección, CTA o persistencia.

Revisa si existen propiedades de contacto para utm_source, utm_medium, utm_campaign, utm_content y utm_term, y copia sus nombres internos exactos.

Comprueba que esos campos están añadidos como ocultos en el formulario exacto que se está usando en producción.

Envía un formulario con un email nuevo y luego revisa el contacto, el submission, el historial de propiedades, la página de conversión y la fuente original/última fuente.

Repite con un contacto existente para detectar reglas de overwrite, preservación de first-touch o valores que no se actualizan.

Abre DevTools y revisa si el tracking code de HubSpot carga una sola vez en landing, formulario y subdominios relevantes.

Si usas Next.js, React o SPA, valida que HubSpot recibe pageviews de rutas virtuales o que al menos no dependes de esa ruta para guardar UTMs.

Prueba aceptar y rechazar cookies. Si las UTMs personalizadas desaparecen al rechazar, tu arquitectura está dependiendo demasiado de cookies y no de campos de formulario.

Compara campos UTM personalizados con la atribución nativa de HubSpot Ads/Traffic. No esperes que sean idénticos: responden a preguntas distintas.

Cómo lo resolvería paso a paso

1

Define qué quieres conservar

Decide si necesitas first-touch UTM, last-touch UTM, UTM del último formulario, GCLID/GBRAID/WBRAID, landing page, referrer o campaña HubSpot. Sin esa regla, cualquier solución técnica acaba sobrescribiendo datos útiles.

2

Crea propiedades y hidden fields limpios

Crea propiedades de contacto para los UTMs que quieras guardar y añádelas como campos ocultos en el formulario correcto. Usa nombres internos consistentes y documenta qué campos se pueden sobrescribir.

3

Preserva UTMs durante la navegación

Si el formulario no está en la primera URL, arrastra parámetros en enlaces internos o guárdalos temporalmente en una cookie/localStorage propia y rellena los hidden fields al submit. Hazlo respetando consentimiento y privacidad.

4

Valida tracking code y dominios

Instala el tracking code de HubSpot en páginas externas, evita múltiples códigos, añade dominios/subdominios relevantes y revisa si blockers o consentimientos cambian el comportamiento.

5

Diseña la lógica para contactos existentes

Una buena arquitectura suele separar first-touch y last-touch. El primer origen no debería borrarse cada vez que alguien vuelve; el último origen sí puede actualizarse si eso ayuda al equipo comercial.

6

Cierra el circuito con Ads y CRM

Cuando UTMs y click IDs llegan limpios al CRM, puedes comparar campaña, lead, oportunidad y venta. Solo entonces tiene sentido devolver calidad a Google Ads o construir reporting ejecutivo fiable.

Si se vuelve técnico

Puedes seguir esta ruta por tu cuenta. Si al comprobarlo aparece una discrepancia rara, una configuración de tracking delicada, una decisión de puja con riesgo o un bloqueo que requiere acceso a la cuenta, Lia guarda este contexto y te lleva a CreatikLab para continuar sin empezar desde cero.

Llevar este contexto a Lia

Qué no haría

Confundir Original source de HubSpot con campos UTM personalizados.

Crear propiedades visibles pero no añadirlas al formulario como hidden fields.

Usar nombres de propiedad bonitos en lugar del nombre interno exacto.

Probar solo en la landing inicial y no en la URL final del formulario.

Perder UTMs al cambiar idioma, pasar por un redirect o abrir un calendario.

No probar con contacto nuevo y contacto existente.

Depender solo de cookies cuando el dato también puede guardarse en el submit.

Enviar los UTMs a HubSpot pero no guardar GCLID/GBRAID/WBRAID para análisis posterior de Google Ads.

Preguntas frecuentes

¿HubSpot captura UTMs automáticamente?

HubSpot puede analizar fuentes de tráfico y puede auto-popular campos con query strings, pero si quieres ver utm_source o utm_campaign en propiedades concretas del contacto necesitas propiedades, hidden fields o una implementación que pase esos valores.

¿Por qué veo UTMs en la landing pero no en HubSpot?

Porque el formulario puede estar en otra URL, el CTA puede no arrastrar la query, una redirección puede limpiarla o el formulario puede no tener campos ocultos configurados. Hay que mirar la URL en el momento exacto del submit.

¿Debo sobrescribir siempre los UTMs del contacto?

No siempre. Para análisis serio conviene separar primer origen, último origen y último formulario. Sobrescribir todo puede destruir la lectura de adquisición original.

¿Qué hago si el usuario rechaza cookies?

No intentes saltarte el consentimiento. Conserva lo que puedas de forma transparente en el propio formulario y acepta que algunas señales de sesión o atribución serán menos completas.

¿Esto arregla también Google Ads?

Ayuda, pero no lo garantiza. Para Google Ads necesitas además conversion tracking, conversiones mejoradas para leads u offline conversions bien diseñadas si quieres optimizar por calidad o ventas reales.

CreatikLab

Amplía Tu Alcance, Domina Tu Mercado

Google Premier Partner badge

Suscríbete al Boletín

Recibe nuestras últimas novedades sobre productos y promociones.

Al suscribirte, aceptas recibir emails de marketing de Creatiklab. Puedes darte de baja en cualquier momento. Revisa tu correo para confirmar la suscripción.

  ©2024 CreatikLab. All Rights Reserved