Atribución y Tracking
Mide de dónde vienen tus clientes con tracking links, Meta Pixel y UTM parameters.
Qué es la atribución
La atribución te permite saber de dónde vienen tus clientes: si llegaron por un anuncio de Meta, Google Ads, un link de email, un QR, etc. SouthGames captura estos datos automáticamente cuando usas tracking links y la Conversions API (CAPI).
Guía paso a paso: Meta Ads
Paso 1 — Configurar credenciales (una vez por organización)
Ve a Configuración > Integraciones > Tracking & Conversiones y activa Meta:
- Pixel ID: Lo encuentras en Meta Business Suite > Events Manager. Es un número como
123456789012345. - Access Token (CAPI): En Events Manager > Settings, haz click en "Generate access token". Copia el token y pégalo en SouthGames.
Haz click en Guardar. SouthGames ahora puede enviar eventos de conversión server-side a Meta.
Paso 2 — Crear un tracking link
En Insights > Atribución, haz click en Crear link:
- Nombre:
Black Friday - Meta Ads - Fuente:
meta - Medio:
cpc - Campaña:
black-friday-2026 - URL web:
https://tuapp.com/landing(donde redirigir en desktop) - URL Play Store: Tu link de Google Play (para Android)
- URL App Store: Tu link de App Store (para iOS)
Esto genera un link corto como:
https://southgames.ai/go/bf2026
Paso 3 — Usar el link en Meta Ads
Pega el link de SouthGames como URL de destino en tu anuncio de Meta Ads. Cuando un usuario clickea:
- Se registra el click (plataforma, timestamp, IP hasheado)
- Se setea una cookie
sg_attrcon los datos de atribución (30 días) - El usuario se redirige a tu app, store o landing page
Paso 4 — El tracking ocurre automáticamente
Cuando el usuario se registra en tu app vía SDK (con los datos de atribución), pasan dos cosas:
Se guarda en el cliente:
{
"attribution": {
"utmSource": "meta",
"utmMedium": "cpc",
"utmCampaign": "black-friday-2026",
"firstTouchChannel": "meta",
"linkId": "abc123"
}
}
Se envía a Meta vía CAPI (server-side):
Un evento CompleteRegistration se dispara automáticamente a la Conversions API de Meta con el email hasheado (SHA-256) del usuario. Meta lo matchea con el usuario que clickeó el ad.
Paso 5 — Ver resultados
- En Insights > Atribución > Dashboard: clientes por fuente, campaña y medio
- En Meta Ads Manager: conversiones atribuidas a cada anuncio
Tracking Links
Crea links cortos desde el dashboard (Insights > Atribución) con parámetros UTM pre-configurados:
https://southgames.ai/go/bf2026
Redirect inteligente
El link detecta la plataforma del usuario automáticamente:
| Plataforma | Comportamiento |
|---|---|
| Android | Redirige a Play Store con referrer UTM params |
| iOS | Redirige a App Store |
| Web/Desktop | Redirige a la URL de destino con UTM params |
Click tracking
Cada click se registra con:
- Timestamp
- User-Agent
- IP (hasheado SHA-256)
- Plataforma detectada (Android, iOS, Web)
- Referer
- País (si disponible)
UTM Parameters
Los parámetros UTM se guardan en el documento del cliente al registrarse:
| Parámetro | Descripción | Ejemplo |
|---|---|---|
utm_source | Canal de tráfico | meta, google, tiktok, email |
utm_medium | Mecanismo | cpc, social, email, organic |
utm_campaign | Campaña específica | black-friday-2026 |
utm_content | Variación (A/B test) | banner-azul, video-ad |
utm_term | Keyword (search ads) | juegos-gratis |
First Touch vs Last Touch
SouthGames guarda dos niveles de atribución:
- First Touch: Se establece cuando el cliente se registra por primera vez. Es inmutable — siempre sabrás cómo llegó originalmente.
- Last Touch: Se actualiza cada vez que el cliente se identifica con nuevos datos de atribución.
Esto te permite comparar qué canal atrajo al usuario vs qué canal lo reactivó.
Integración Web
- El usuario clickea un tracking link (
/go/bf2026) - Se registra el click y se setea una cookie
sg_attr(30 días) - El usuario llega a tu landing page con UTM params en la URL
- Al registrarse vía API, envías los datos de atribución:
// Leer UTMs de la URL
const params = new URLSearchParams(window.location.search);
const attribution = {
utmSource: params.get('utm_source'),
utmMedium: params.get('utm_medium'),
utmCampaign: params.get('utm_campaign'),
linkId: params.get('linkId'),
};
// Enviar al registrar
await fetch('/api/v1/clients/register', {
method: 'POST',
headers: {
'Authorization': 'Bearer sg_live_xxx',
'X-Org-Id': 'mi-org',
'Content-Type': 'application/json',
},
body: JSON.stringify({
externalId: 'user_123',
attribution,
}),
});
Integración Mobile (Flutter)
- El usuario clickea un tracking link
- Se redirige al Store con referrer params (Android) o URL (iOS)
- El usuario instala y abre la app
- La app parsea los datos de atribución y los envía:
// Opción 1: Desde un deep link
final attr = Attribution.fromUri(deepLinkUri);
await SouthGamesSDK.instance.identify(
externalId: 'user_123',
attribution: attr,
);
// Opción 2: Desde Android Install Referrer
final attr = Attribution.fromMap(referrerParams);
SouthGamesSDK.instance.setAttribution(attr);
// Se envía automáticamente en el próximo identify()
// Opción 3: Manual
await SouthGamesSDK.instance.identify(
externalId: 'user_123',
attribution: Attribution(
utmSource: 'meta',
utmMedium: 'cpc',
utmCampaign: 'black-friday',
),
);
CAPI (Conversion API) — Server-Side
SouthGames envía eventos de conversión directamente a los servidores de las plataformas de anuncios, sin depender del navegador. Esto es más confiable que el pixel client-side porque:
- No lo bloquean ad blockers ni extensiones de privacidad
- No lo afecta iOS 14.5+ (App Tracking Transparency)
- Captura ~30% más conversiones que el pixel solo
Plataformas soportadas
| Plataforma | API | Configuración |
|---|---|---|
| Meta | Conversions API | Pixel ID + Access Token |
| Measurement Protocol (GA4) | Measurement ID + API Secret | |
| TikTok | Events API | Pixel Code + Access Token |
Configurar credenciales
Ve a Configuración > Integraciones > Tracking & Conversiones:
- Activa la plataforma con el switch
- Ingresa las credenciales (se guardan encriptadas con AES-256-GCM)
- Haz click en Guardar
Eventos que se envían automáticamente
| Evento SouthGames | Evento Meta | Evento Google | Evento TikTok |
|---|---|---|---|
| Nuevo cliente registrado | CompleteRegistration | sign_up | CompleteRegistration |
| Juego jugado | ViewContent | view_item | ViewContent |
| Código canjeado | Purchase | purchase | PlaceAnOrder |
Los datos PII (email, teléfono) se hashean con SHA-256 antes de enviarse, cumpliendo con los requisitos de cada plataforma.
Pixel client-side vs CAPI
| Pixel (client-side) | CAPI (server-side) | |
|---|---|---|
| Requiere JS en el navegador | Sí | No |
| Bloqueado por ad blockers | Sí | No |
| Afectado por iOS 14.5+ | Sí | No |
| Precisión de datos | ~60-70% | ~90-95% |
| Implementación | Script en HTML | Automático en SouthGames |
SouthGames implementa CAPI (server-side), que es la opción recomendada por Meta, Google y TikTok para 2025+.
Dashboard de Atribución
En Insights > Atribución puedes ver:
- Links activos: Lista de tracking links con clicks y conversiones
- Clientes por fuente: Distribución por
utm_source(meta, google, etc.) - Clientes por campaña: Distribución por
utm_campaign - Clientes por medio: Distribución por
utm_medium(cpc, social, etc.) - Analytics por link: Clicks por día, desglose por plataforma (Android/iOS/Web)