Configurar Data Streams (web y app)
Configura streams de datos para web, iOS y Android.
Los Data Streams son las fuentes de datos que alimentan tu propiedad GA4. Entender cómo configurarlos correctamente es esencial para recopilar datos precisos y completos de todas tus plataformas digitales.
¿Qué es un Data Stream?
Un Data Stream es un flujo de datos desde una plataforma específica hacia tu propiedad GA4. Puede ser:
- Web: Tu sitio web
- iOS: Tu aplicación para iPhone/iPad
- Android: Tu aplicación para dispositivos Android
Cada stream tiene su propia configuración y genera su propio ID de medición.
Estructura de streams recomendada
Escenario 1: Solo web
Propiedad GA4: Mi Empresa
└── Stream: Website (Web) - G-XXXXX1
Escenario 2: Web + App
Propiedad GA4: Mi Empresa
├── Stream: Website (Web) - G-XXXXX1
├── Stream: App iOS (iOS) - Sin ID visible
└── Stream: App Android (Android) - Sin ID visible
Escenario 3: Múltiples sitios web
Propiedad GA4: Mi Empresa
├── Stream: Sitio Principal (Web) - G-XXXXX1
├── Stream: Blog (Web) - G-XXXXX2
└── Stream: Landing Pages (Web) - G-XXXXX3
Nota: Tener múltiples web streams permite tracking cross-domain nativo, pero requiere configuración adicional para que los usuarios sean identificados correctamente entre dominios.
Configurar un Web Stream
Acceder a la configuración
- Ve a Admin > Data Streams
- Haz clic en tu stream existente o crea uno nuevo
- Se abre el panel de configuración del stream
Configuración básica
Stream URL: El dominio de tu sitio
- Ingresa solo el dominio:
miempresa.com - No incluyas https:// ni www
Stream name: Nombre descriptivo
- Ejemplo: "Website Principal" o "E-commerce ES"
Measurement ID: Tu ID único (G-XXXXXXXXXX)
- Este es el ID que usas en el código de tracking
- No puede cambiarse después de crear el stream
Enhanced Measurement
Esta es una de las funciones más útiles de GA4. Activa tracking automático de eventos comunes sin código adicional.
Para configurarlo:
- En el panel del stream, busca Enhanced measurement
- Haz clic en el ícono de engranaje
- Activa/desactiva cada opción según necesites
| Evento | Qué mide | Recomendación |
|---|---|---|
| Page views | Cada vista de página | Siempre ON |
| Scrolls | Scroll al 90% de la página | ON para contenido |
| Outbound clicks | Clics que salen de tu sitio | ON para todos |
| Site search | Búsquedas internas | ON si tienes buscador |
| Video engagement | Videos de YouTube embebidos | ON si tienes videos |
| File downloads | Descargas de archivos | ON para todos |
| Form interactions | Inicio y envío de formularios | ON para lead gen |
Configuración avanzada de Site Search
Si tu sitio usa parámetros de búsqueda diferentes al estándar:
- Haz clic en Show advanced settings bajo Site search
- Agrega los parámetros que usa tu sitio
- Parámetros comunes:
q,s,search,query,keyword
Ejemplo: Si tu URL de búsqueda es miempresa.com?buscar=zapatos:
- Agrega
buscara la lista de parámetros
Tip: Revisa las URLs de búsqueda en tu sitio para identificar qué parámetro usa.
Configure tag settings
Accede a configuraciones avanzadas del tag:
Dominios para cross-domain tracking
Si tienes múltiples dominios que deben compartir datos:
- Ve a Configure tag settings > Configure your domains
- Agrega cada dominio
- Selecciona el tipo de match: "Contains" o "Exactly matches"
Ejemplo para miempresa.com y tienda.miempresa.com:
Dominio: miempresa.com
Match type: Contains
Tráfico interno
Excluye tu propio tráfico de los reportes:
- Ve a Configure tag settings > Define internal traffic
- Haz clic en Create
- Nombra la regla: "Oficina Principal"
- Agrega condiciones de IP:
- IP equals:
123.456.789.0 - IP begins with:
123.456.
- IP equals:
- Guarda
Después, activa el filtro en: Admin > Data Settings > Data Filters
Lista de referencias no deseadas
Evita que ciertos referrers aparezcan como fuentes de tráfico:
- Ve a Configure tag settings > List unwanted referrals
- Agrega dominios a excluir:
- Pasarelas de pago:
paypal.com,stripe.com - Tu propio dominio (si aplica)
- Servicios de terceros que no son fuentes reales
- Pasarelas de pago:
Ajustar tiempos de sesión
Personaliza cuándo termina una sesión:
- Ve a Configure tag settings > Adjust session timeout
- Configura:
- Session timeout: Tiempo de inactividad para nueva sesión (default: 30 min)
- Engaged session timer: Tiempo mínimo para considerar engagement (default: 10 seg)
Configurar un App Stream (iOS/Android)
Los streams de app funcionan diferente porque requieren el SDK de Firebase.
Requisitos
- Proyecto de Firebase configurado
- SDK de Firebase integrado en la app
- Acceso al código de la app o colaboración con desarrolladores
Pasos generales
- Ve a Admin > Data Streams
- Haz clic en Add stream > iOS app o Android app
- Completa la información:
- Bundle ID (iOS) o Package name (Android)
- App name
- Vincula con Firebase
- Descarga el archivo de configuración
Para iOS
El archivo de configuración es GoogleService-Info.plist:
- Descárgalo desde GA4 o Firebase Console
- Agrégalo al proyecto de Xcode
- Asegúrate de que esté incluido en todos los targets
// En tu AppDelegate.swift
import Firebase
func application(_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
FirebaseApp.configure()
return true
}
Para Android
El archivo de configuración es google-services.json:
- Descárgalo desde GA4 o Firebase Console
- Colócalo en
app/(nivel de módulo) - Configura los plugins de Gradle
// build.gradle (project level)
dependencies {
classpath 'com.google.gms:google-services:4.4.0'
}
// build.gradle (app level)
plugins {
id 'com.google.gms.google-services'
}
dependencies {
implementation platform('com.google.firebase:firebase-bom:32.7.0')
implementation 'com.google.firebase:firebase-analytics'
}
Verificar app stream
A diferencia de web, los datos de app pueden tardar más en aparecer:
- Usa DebugView en GA4
- Activa debug mode en la app:
- iOS: Agrega
-FIRAnalyticsDebugEnabledcomo argumento de ejecución - Android:
adb shell setprop debug.firebase.analytics.app PACKAGE_NAME
- iOS: Agrega
- Los eventos deberían aparecer en DebugView en segundos
Mejores prácticas para múltiples streams
Nomenclatura consistente
Usa nombres claros que identifiquen:
- Plataforma: Web, iOS, Android
- Región (si aplica): ES, MX, US
- Ambiente: Producción, Staging
Ejemplos:
- "Web - Producción - Global"
- "iOS - Producción - ES"
- "Android - Staging"
Un stream por ambiente
No mezcles datos de staging/desarrollo con producción:
Propiedad: Mi App (Producción)
├── Web - Producción
├── iOS - Producción
└── Android - Producción
Propiedad: Mi App (Testing)
├── Web - Staging
├── iOS - Development
└── Android - Development
Eventos consistentes entre plataformas
Si tienes web y app, asegúrate de usar los mismos nombres de eventos:
| Acción | Nombre consistente |
|---|---|
| Ver producto | view_item |
| Agregar al carrito | add_to_cart |
| Comprar | purchase |
| Registrarse | sign_up |
Esto permite analizar el funnel completo independientemente de la plataforma.
Monitorear salud de los streams
Indicadores en GA4
En la lista de Data Streams, GA4 muestra:
- Estado del stream (activo/inactivo)
- Último dato recibido
- Alertas de configuración
Crear alertas personalizadas
- Ve a Admin > Custom alerts
- Crea alerta para detectar caídas:
- Condición: Usuarios = 0
- Período: Último día
- Notificación: Email
Troubleshooting de streams
Stream web no recibe datos
- Verifica el ID de medición en el código
- Comprueba que el código está en todas las páginas
- Revisa la consola del navegador por errores
- Desactiva bloqueadores de ads para testing
Stream app no recibe datos
- Confirma que Firebase está correctamente inicializado
- Verifica el archivo de configuración (plist/json)
- Activa debug mode y revisa DebugView
- Revisa logs de la app por errores de Firebase
Datos inconsistentes entre streams
- Verifica que los eventos tienen los mismos nombres
- Comprueba que los parámetros son consistentes
- Revisa la configuración de sesiones en cada stream
Resumen
Los Data Streams son el punto de entrada de tus datos a GA4:
- Web streams: Configuración de Enhanced Measurement, cross-domain, tráfico interno
- App streams: Integración con Firebase, archivos de configuración específicos
- Múltiples streams: Nomenclatura consistente, separación de ambientes
Una configuración correcta de streams desde el inicio evita problemas de datos difíciles de corregir después. Tómate el tiempo de revisar cada opción de configuración.
En la próxima lección, veremos los ajustes de retención de datos y privacidad para cumplir con regulaciones como GDPR.
Completaste esta leccion?
Marca esta leccion como completada. Tu progreso se guardara en tu navegador.