trafico unassigned ga4 solucionar
Verificado por Senior Partner
14 min de lectura
Cómo Solucionar el Tráfico "Unassigned" (Sin Asignar) en Google Analytics 4: Guía de Diagnóstico y Reglas UTM
SN
PaidMediaWorld Spanish Editorial Board
Senior Analytics & Technical SEO Lead
31 de Octubre, 2026
Read in EN
## La Pesadilla del Tráfico "Unassigned" en Google Analytics 4
Pocos problemas en la analítica digital moderna provocan tanta frustración entre directores de marketing, especialistas en paid media y analistas de datos como descubrir que entre el **20% y el 50% del tráfico web** en Google Analytics 4 (GA4) aparece etiquetado bajo una categoría opaca: **"Unassigned"** (o **"Sin asignar"** en español).
En la era del marketing basado en datos, donde la toma de decisiones sobre presupuestos de Google Ads, Meta Ads y canales orgánicos depende de la atribución precisa, el tráfico sin asignar es un auténtico destructor de valor:
```
[Tráfico de Campañas de Pago / Email / Social]
|
v
[Parámetros UTM No Reconocidos o Redirección Rota]
|
v
[GA4 no puede emparejar la sesión con ninguna regla]
|
v
+--------------------------------------+
| CANAL PREDETERMINADO: "UNASSIGNED" |
| (Se pierden los datos de atribución)|
+--------------------------------------+
|
v
[El ROI y ROAS de los canales de pago se desploman artificialmente]
```
Cuando un porcentaje significativo de las sesiones y conversiones de tu sitio web cae en "Unassigned", el retorno de la inversión publicitaria (ROAS) de tus campañas de pago queda severamente subestimado. Tu equipo directivo asumirá erróneamente que las campañas no están funcionando, cuando en realidad las ventas se están produciendo pero GA4 es incapaz de asociarlas a sus canales correspondientes.
La documentación oficial de Google suele ser escueta y teórica. Esta guía práctica proporciona el **protocolo forense completo** para auditar el tráfico "Unassigned", identificar las fuentes y medios culpables, estandarizar las nomenclaturas UTM, blindar tu web frente a pasarelas de pago externas (Redsys, Stripe, PayPal) y configurar reglas de canales personalizadas con expresiones regulares (regex).
---
## Diferencias Críticas: "Unassigned" vs. "(not set)" vs. "Direct"
Para solucionar el problema con precisión quirúrgica, primero debemos comprender qué significa técnicamente cada una de estas etiquetas en el modelo de datos de GA4:
| Dimensión / Etiqueta | Significado Técnico en GA4 | ¿Por qué ocurre? | Nivel de Gravedad |
|---|---|---|---|
| **Unassigned (Sin Asignar)** | GA4 **recibió información de fuente y medio**, pero estos valores no cumplen con las reglas sintácticas estrictas de los Grupos de Canales Predeterminados (*Default Channel Groups*). | Parámetros UTM mal escritos (ej. `utm_medium=cpc_ads`), mayúsculas no controladas, o fuentes desconocidas. | **Crítico**: Hay datos de tráfico reales, pero la clasificación de canales está rota. |
| **(not set)** | GA4 **no recibió ningún valor** para esa dimensión específica en el evento enviado. | Eventos personalizados sin parámetros asociados, sesiones donde el evento `session_start` se perdió o retrasos de procesamiento. | **Moderado**: Suele deberse a problemas de implementación de etiquetas en GTM. |
| **Direct (Directo)** | El usuario llegó tecleando la URL directamente, mediante marcadores del navegador o desde aplicaciones que no transmiten encabezados de referencia (*Referrer*). | Ausencia legítima de parámetros de campaña o enlaces en apps de mensajería (WhatsApp, Telegram) sin etiquetar. | **Normal**: Debe representar entre el 10% y el 20% del tráfico total. |
En resumen: En **(not set)** no hay datos. En **Direct** no hay origen detectable. Pero en **Unassigned SÍ hay datos de campaña**, solo que el motor de clasificación de GA4 no sabe en qué cajón guardarlos.
---
## Protocolo de Diagnóstico Forense: ¿De Dónde Proviene el Tráfico Sin Asignar?
Antes de modificar etiquetas o cambiar configuraciones en tu gestor de etiquetas, debes identificar con exactitud qué enlaces o fuentes están disparando la etiqueta "Unassigned".
```
+-----------------------------------------------------------------------------------+
| PASOS DE DIAGNÓSTICO EN GA4 |
+-----------------------------------------------------------------------------------+
Paso 1: Ve a Informes > Adquisición > Adquisición de tráfico.
Paso 2: Localiza la fila "Unassigned" en la tabla principal.
Paso 3: Haz clic en el botón '+' para añadir una Dimensión Secundaria.
Paso 4: Selecciona "Fuente/medio de la sesión" (Session source/medium).
Paso 5: Ordena la tabla por número de sesiones de mayor a menor.
+-----------------------------------------------------------------------------------+
```
Al desglosar por **Fuente/medio de la sesión**, verás de inmediato las combinaciones responsables del problema. Los culpables más habituales suelen ser:
* `facebook / paid` o `instagram / ig_story` (en lugar de los medios reconocidos por Google).
* `newsletter / email` o `mailchimp / newsletter` (donde el medio no es exactamente `email`).
* `cpanel / webmail` o enlaces internos.
* Pasarelas bancarias como `sis.redsys.es / referral` o `checkout.stripe.com / referral`.
* `(direct) / (none)` asociado a eventos que llegan desincronizados.
---
## Causa 1: Parámetros UTM No Estandarizados (El Error del 80%)
Google Analytics 4 utiliza una lógica de concordancia muy estricta y sensible a mayúsculas y minúsculas (*case-sensitive*) para clasificar el tráfico en sus canales predeterminados. Si tu equipo de marketing o tu agencia utiliza nomenclaturas creativas o no estándar, GA4 enviará automáticamente esas visitas a "Unassigned".
### Tabla Maestra de Requisitos UTM en GA4
Para que una sesión se asigne correctamente a un canal oficial, debe cumplir con las siguientes combinaciones exactas:
| Canal Deseado en GA4 | Requisito de `utm_source` | Requisito de `utm_medium` | Errores Habituales que causan "Unassigned" |
|---|---|---|---|
| **Paid Search** | Lista de motores de búsqueda reconocidos (google, bing, yahoo, duckduckgo) | Debe ser exactamente: `cpc`, `ppc` o `paidsearch` | `utm_medium=adwords`, `utm_medium=google_ads`, `utm_medium=cpc-search` |
| **Paid Social** | Redes sociales reconocidas (facebook, instagram, linkedin, tiktok, twitter, pinterest) | Debe contener: `cpv`, `cpa`, `cpp`, `cpc`, `ppc` o coincidir con regex `.*paid.*` | `utm_medium=social`, `utm_medium=stories`, `utm_medium=facebook_ads` |
| **Organic Social** | Redes sociales reconocidas | Coincide con regex: `.*social.*`, `social-network`, `social-media` o `sm` | `utm_medium=linkinbio`, `utm_medium=post`, `utm_medium=feed` |
| **Email** | Cualquier fuente (mailchimp, klaviyo, sendgrid, hubspot) | Debe ser **estrictamente**: `email`, `e-mail`, `e_mail` o `e mail` | `utm_medium=newsletter`, `utm_medium=mailing`, `utm_medium=correo` |
| **Paid Video** | Sitios de vídeo reconocidos (youtube, vimeo, dailymotion) | Coincide con: `cpc`, `ppc`, `paid.*` o `.*video.*` | `utm_medium=video_ad`, `utm_medium=shorts_promo` |
| **Affiliates** | Cualquier fuente de afiliación | Debe ser exactamente: `affiliate` o `affiliates` | `utm_medium=partner`, `utm_medium=afiliados`, `utm_medium=collab` |
### La Regla de Oro de las Minúsculas
GA4 distingue entre mayúsculas y minúsculas. Si etiquetas una campaña con:
`utm_source=Facebook&utm_medium=CPC`
GA4 no reconocerá `CPC` en mayúsculas como equivalente a `cpc` en minúsculas en ciertas comprobaciones de canal, derivando el tráfico a "Unassigned". **Utiliza siempre minúsculas en todos los parámetros UTM.**
---
## Causa 2: Pasarelas de Pago Externas y Autorreferencias (Self-Referrals)
En tiendas online (Shopify, WooCommerce, Magento, PrestaShop), una de las causas más graves de tráfico "Unassigned" y destrucción de atribución son las **pasarelas de pago externas**.
### Cómo Ocurre el Problema:
1. Un usuario llega a tu tienda tras hacer clic en un anuncio de Google Ads (`utm_source=google&utm_medium=cpc`).
2. Añade productos al carrito e inicia el proceso de compra.
3. Para pagar, es redirigido a una pasarela bancaria externa: `sis.redsys.es`, `paypal.com` o el portal de su banco para la autenticación en dos pasos (3D Secure).
4. Tras autorizar el pago, la pasarela bancaria redirige al usuario de vuelta a la página de confirmación de pedido (`/gracias-por-su-compra/` o `/order-received/`).
5. **La Catástrofe**: GA4 detecta que el usuario proviene de un dominio externo (`sis.redsys.es`), rompe la sesión original de Google Ads y abre una nueva sesión atribuida a la pasarela bancaria. Al no tener parámetros de campaña válidos, la compra se adjudica a `Redsys / referral` o pasa a **Unassigned**.
```
[Usuario en Google Ads] ---> [Tienda Online] ---> [Pasarela Externa: Redsys/PayPal]
|
(Retorno tras autorizar compra)
v
[Página de Confirmación]
--> GA4 sobreescribe la sesión con la pasarela bancaria
--> ¡La conversión de Google Ads se pierde en Unassigned!
```
### Cómo Solucionarlo: Lista de Referencias No Deseadas en GA4
Debes indicar a GA4 que ignore las pasarelas de pago como fuentes de referencia para que la sesión original no se interrumpa:
1. Inicia sesión en tu propiedad de **Google Analytics 4**.
2. Ve a **Administrar** (icono de engranaje en la esquina inferior izquierda).
3. En la columna de *Propiedad*, ve a **Flujos de datos** y selecciona tu flujo web.
4. En la parte inferior, haz clic en **Configurar ajustes de etiquetas** (*Configure tag settings*).
5. Haz clic en **Mostrar todo** (*Show all*) para desplegar los ajustes avanzados.
6. Selecciona **Especificar referencias no deseadas** (*List unwanted referrals*).
7. Añade las siguientes condiciones de exclusión (tipo de concordancia: *el dominio contiene*):
* `redsys.es`
* `paypal.com`
* `stripe.com`
* `bizum.es`
* `ceca.es`
* `santander.com` / `bbva.es` / `caixabank.es` (y los dominios de verificación bancaria habituales en tu mercado).
8. Haz clic en **Guardar**.
Una vez guardado, cuando un usuario regrese del banco, GA4 mantendrá intacta la sesión publicitaria inicial y atribuirá la compra al canal de paid media original.
---
## Causa 3: Redirecciones Web que Eliminan Parámetros de URL
Otro fallo habitual se produce a nivel de servidor web (Apache, Nginx, Cloudflare o plugins de redirección de WordPress).
Si un anuncio apunta a:
`http://mitienda.com/oferta?utm_source=google&utm_medium=cpc`
Y el servidor tiene una regla de redirección forzosa a HTTPS mal configurada, puede responder con un código 301 que redirige a:
`https://mitienda.com/oferta/` (¡eliminando toda la cadena de parámetros `?utm_...`!).
El usuario llega a la página web correcta, pero los parámetros de seguimiento han desaparecido en el camino. GA4 solo ve una visita sin parámetros y la clasifica erróneamente como directa o sin asignar.
### Comprobación Rápida con cURL
Abre tu terminal y ejecuta la siguiente orden sustituyendo con tu dominio y una URL de campaña:
```bash
curl -IL "https://mitienda.com/categoria?utm_source=test&utm_medium=cpc"
```
Revisa las cabeceras HTTP de respuesta. Si observas una redirección 301 o 302 hacia una URL que ha perdido los parámetros `utm_`, debes actualizar la configuración de tu archivo `.htaccess` o servidor Nginx para incluir la bandera de preservación de argumentos (`[QSA]` en Apache o `$is_args$args` en Nginx).
---
## Solución Avanzada: Creación de un Grupo de Canales Personalizado
Si tienes campañas históricas con parámetros que no puedes modificar retroactivamente, o acuerdos con socios y medios cuya nomenclatura no puedes cambiar en origen, la solución definitiva es crear un **Grupo de Canales Personalizado** (*Custom Channel Group*) en GA4.
A diferencia del grupo predeterminado, un grupo personalizado te permite definir tus propias reglas mediante expresiones regulares (regex).
### Paso a Paso para Configurar Canales Personalizados:
1. En GA4, dirígete a **Administrar > Visualización de datos > Grupos de canales**.
2. Haz clic en **Crear grupo de canales**.
3. Asigna un nombre al grupo (por ejemplo: `Canales Personalizados de Empresa`).
4. Revisa y edita las reglas de los canales que desees flexibilizar:
```
+------------------------------------------------------------------------------------+
| REGLAS REGEX RECOMENDADAS PARA CANALES PERSONALIZADOS |
+------------------------------------------------------------------------------------+
1. Canal: Email Marketing
- Condición: Medio de la sesión coincide con la regex:
^(email|e-mail|newsletter|mailing|correo|boletin)$
2. Canal: Paid Social (Redes de Pago)
- Condición: Fuente de la sesión coincide con regex de redes sociales Y
Medio de la sesión coincide con la regex:
^(cpc|ppc|paid|paid-social|paid_social|paidsocial|stories|story|ad)$
3. Canal: Afiliados y Partners
- Condición: Medio de la sesión coincide con la regex:
^(affiliate|affiliates|afiliados|partner|partners|influencer|collab)$
+------------------------------------------------------------------------------------+
```
5. Guarda el grupo de canales.
6. En tus informes de Adquisición, podrás cambiar el selector de dimensión principal a tu nuevo grupo personalizado, y observarás cómo el porcentaje de tráfico "Unassigned" disminuye inmediatamente a niveles cercanos a cero.
---
---
## Configuración Avanzada en GTM: Normalización Automática de UTMs y DataLayer
Para erradicar el error humano de raíz en agencias o equipos de marketing descentralizados, no basta con pedir a los colaboradores que escriban en minúsculas. Es aconsejable implementar una **variable de JavaScript personalizada en Google Tag Manager (GTM)** que normalice y fuerce todos los parámetros UTM a minúsculas antes de que se dispare la etiqueta de configuración de GA4:
```javascript
/**
* Normalizador Automático de Parámetros UTM para GTM
* Convierte utm_source, utm_medium y utm_campaign a minúsculas en tiempo real.
*/
function() {
var search = window.location.search;
if (!search) return "";
// Expresión regular para detectar parámetros de campaña
var cleanQuery = search.replace(/[?&](utm_[^&=]+)=([^&]*)/gi, function(match, key, value) {
return match.charAt(0) + key.toLowerCase() + '=' + decodeURIComponent(value).toLowerCase().trim();
});
return cleanQuery;
}
```
Al utilizar esta lógica dentro de la variable de URL de la página, garantizas que si un influencer o afiliado comparte un enlace con `utm_medium=Social_Story`, el navegador lo limpie automáticamente a `utm_medium=social_story` antes de enviarlo a los servidores de Google, reduciendo las probabilidades de caer en "Unassigned".
### El Problema de las Sesiones Huérfanas y Pérdida de session_id
En aplicaciones web de una sola página (SPA, como React, Angular o Next.js) o tiendas con navegación asíncrona, si la etiqueta de evento personalizado se dispara milisegundos antes que el evento principal `session_start`, GA4 procesa dicho evento sin contexto de sesión.
Al carecer de identificador de sesión (`ga_session_id`), el motor de atribución no puede asociar el evento a ninguna fuente o medio previo, enviando las métricas de interacción a "(not set)" o "Unassigned". Asegúrate de que en GTM la etiqueta de configuración de GA4 (`Google Tag`) tenga prioridad absoluta en el orden de activación (*Tag Firing Priority: 1000*) sobre las etiquetas de eventos específicos.
---
## Solución en BigQuery: Consulta SQL para Reclasificar Tráfico Unassigned
Para los analistas de datos e ingenieros de BI que explotan los datos crudos de GA4 a través de la integración con **Google BigQuery**, el tráfico "Unassigned" de la interfaz estándar puede corregirse de forma retrospectiva y definitiva mediante consultas SQL avanzadas.
A continuación se muestra la consulta oficial de ingeniería para normalizar y reclasificar los eventos históricos:
```sql
-- Consulta SQL en BigQuery para Reclasificar Tráfico Unassigned en GA4
WITH raw_events AS (
SELECT
event_date,
event_timestamp,
event_name,
user_pseudo_id,
(SELECT value.int_value FROM UNNEST(event_params) WHERE key = 'ga_session_id') AS session_id,
LOWER((SELECT value.string_value FROM UNNEST(event_params) WHERE key = 'source')) AS traffic_source,
LOWER((SELECT value.string_value FROM UNNEST(event_params) WHERE key = 'medium')) AS traffic_medium,
LOWER((SELECT value.string_value FROM UNNEST(event_params) WHERE key = 'campaign')) AS traffic_campaign
FROM
`tu-proyecto-gcp.analytics_XXXXXXXXX.events_*`
WHERE
_TABLE_SUFFIX BETWEEN '20260101' AND '20261113'
)
SELECT
session_id,
traffic_source,
traffic_medium,
traffic_campaign,
-- Lógica de clasificación a prueba de errores
CASE
-- Búsqueda de Pago (Paid Search)
WHEN traffic_medium IN ('cpc', 'ppc', 'paidsearch')
OR traffic_source IN ('google', 'bing', 'yahoo') AND REGEXP_CONTAINS(traffic_medium, r'^(cpc|ppc)$')
THEN 'Paid Search'
-- Redes Sociales de Pago (Paid Social)
WHEN REGEXP_CONTAINS(traffic_source, r'(facebook|instagram|tiktok|linkedin|twitter|pinterest)')
AND REGEXP_CONTAINS(traffic_medium, r'(cpc|ppc|paid|social-paid|paid_social|stories|ad)')
THEN 'Paid Social'
-- Redes Sociales Orgánicas
WHEN REGEXP_CONTAINS(traffic_source, r'(facebook|instagram|tiktok|linkedin|twitter|pinterest)')
OR REGEXP_CONTAINS(traffic_medium, r'(social|organic_social|post|linkinbio)')
THEN 'Organic Social'
-- Email Marketing
WHEN REGEXP_CONTAINS(traffic_medium, r'(email|e-mail|newsletter|mailing|boletin)')
THEN 'Email Marketing'
-- Afiliados
WHEN REGEXP_CONTAINS(traffic_medium, r'(affiliate|affiliates|afiliados|partner|collab)')
THEN 'Affiliates'
-- Tráfico Directo
WHEN (traffic_source IS NULL OR traffic_source = '(direct)')
AND (traffic_medium IS NULL OR traffic_medium = '(none)')
THEN 'Direct'
-- Tráfico Residual Reclasificado
ELSE 'Other / Custom Referrals'
END AS corrected_channel_grouping,
COUNT(1) AS total_events
FROM
raw_events
GROUP BY
1, 2, 3, 4, 5
ORDER BY
total_events DESC;
```
Con este modelado en BigQuery, tu almacén de datos empresarial y tus paneles de Looker Studio reflejarán la realidad operativa de tus canales con 0% de pérdidas por "Unassigned".
---
## Checklist de Prevención de Tráfico Sin Asignar
Aplica esta lista de comprobación en tu flujo de trabajo operativo para garantizar que tu analítica permanezca limpia:
- [ ] Todos los enlaces de campañas de pago, redes sociales y email utilizan el constructor oficial de URLs (*Google Campaign URL Builder*).
- [ ] Todas las etiquetas UTM están estrictamente escritas en **minúsculas**.
- [ ] Los correos electrónicos utilizan exclusivamente `utm_medium=email`.
- [ ] Las pasarelas de pago (`redsys.es`, `paypal.com`, `stripe.com`) están añadidas a la lista de **referencias no deseadas** en GA4.
- [ ] Se ha verificado que las redirecciones de servidor preservan los parámetros de consulta (`?utm_` y `gclid`).
- [ ] La vinculación entre **Google Ads y GA4** está activa y el etiquetado automático (*Auto-tagging*) está habilitado.
- [ ] Se ha implementado un Grupo de Canales Personalizado para clasificar excepciones operativas de la empresa.
---
## Preguntas Frecuentes (FAQ)
### ¿El tráfico "Unassigned" se puede corregir de forma retroactiva en GA4?
En el Grupo de Canales Predeterminado (*Default Channel Group*), los datos históricos no se reclasifican retrospectivamente. Sin embargo, si creas un **Grupo de Canales Personalizado**, GA4 aplicará tus nuevas reglas sobre los datos ya registrados en tu propiedad, permitiéndote limpiar los informes históricos de forma instantánea.
### ¿Por qué veo tráfico Unassigned en campañas de Google Ads vinculadas?
Si tienes la cuenta de Google Ads vinculada a GA4 pero observas tráfico sin asignar, suele deberse a dos motivos: o bien el **etiquetado automático (Auto-tagging)** está desactivado en Google Ads, o bien tu web tiene redirecciones intermedias que eliminan el parámetro identificador de clic `gclid`.
### ¿Cuánto tiempo tarda GA4 en procesar las correcciones?
Las modificaciones en las listas de exclusión de referencias y la corrección de enlaces UTM se aplican a las nuevas sesiones entrantes de inmediato. No obstante, recuerda que los informes estándar de GA4 pueden tardar entre **24 y 48 horas** en procesar y consolidar la atribución definitiva de canales.
SN
Subhranil Naskar
Principal Growth Architect & Fundador de Paid Media World
Especialista sénior en ingeniería de performance marketing con más de una década de experiencia gestionando cuentas multirregionales en Google Ads y Meta Ads. Ha liderado estrategias de adquisición y analítica para más de 120 marcas globales, con un enfoque estricto en modelos de POAS, economía unitaria y atribución de servidor.
Auditoría de Inversión Publicitaria
¿Buscas Reducir tu CPA o Escalar el ROAS de tus Campañas?
Revisamos la arquitectura de tu cuenta, las consultas de búsqueda que desperdician presupuesto y tu configuración técnica de CAPI para eliminar ineficiencias de raíz.
Respuesta en menos de 4 horas • 100% Confidencial • Atención por Subhranil Naskar
