Cómo atribuir las instalaciones de una app React Native
La atribución de instalaciones en React Native es el proceso de determinar qué clic publicitario provocó cada instalación de una app construida con React Native, a partir de señales nativas de la plataforma que la capa JavaScript no puede leer por sí sola. Traqio es un mobile measurement partner (MMP) para apps y sitios web: atribuye instalaciones de apps, registros en sitios web y los eventos que los siguen a campañas publicitarias e informa del retorno de la inversión publicitaria, con precios por conversión publicados de antemano. El SDK de React Native de Traqio atribuye las instalaciones de Android mediante el Google Play Install Referrer y las de iOS mediante SKAdNetwork de Apple, sin IDFA, sin GAID y sin aviso de App Tracking Transparency.
¿Por qué la atribución en React Native necesita un módulo nativo?
Las dos señales que atribuyen una instalación de app son API nativas, así que una app React Native no puede leerlas solo desde JavaScript. En Android la señal es el Google Play Install Referrer; en iOS es SKAdNetwork, el framework de atribución de Apple.
La API Google Play Install Referrer devuelve la cadena de referrer asociada a una visita a la ficha de Play Store, junto con las marcas de tiempo del clic y de la instalación, lo que permite a una app leer en su primer arranque qué clic publicitario precedió a su propia instalación. La documentación de Google indica que la información del referrer está disponible durante 90 días.
SKAdNetwork (SKAN) es el framework de atribución de Apple: en lugar de datos por usuario, Apple envía a la red publicitaria un postback firmado, diferido y agregado que indica que una campaña produjo una instalación, junto con un pequeño conversion value que describe el comportamiento inicial en la app. La parte de la app es registrar la instalación y actualizar ese conversion value, ambas mediante llamadas a StoreKit.
El SDK de React Native de Traqio, @traqio/react-native, es un único paquete: un módulo nativo con autolink escrito en Kotlin y Swift, más el motor JavaScript que pone los eventos en cola y los envía. La app importa todo desde ese único paquete.
¿Cómo se atribuye una instalación React Native en Android?
Una instalación Android de una app React Native se atribuye de forma determinista: un identificador de clic viaja desde el enlace de seguimiento del anuncio a través de Play Store, y el SDK lo vuelve a leer en el primer arranque. La atribución determinista vincula un clic con una conversión mediante un identificador presente en ambos lados, de modo que la coincidencia es exacta y no inferida.
No se requiere ningún permiso de Android y no se lee ningún identificador publicitario (GAID) en ningún paso. El módulo declara la entrada de manifiesto que le permite ver Google Play a partir de Android 11, así que el manifiesto de la app no necesita ningún cambio para la atribución.
- Un enlace de seguimiento de Traqio registra el clic y su identificador antes de enviar al usuario a Google Play.
- Google Play conserva el identificador de clic en la cadena de referrer de instalación.
- En el primer arranque, el módulo nativo del SDK lee el referrer y el servidor de Traqio vincula el identificador de clic con exactamente un clic registrado.
- Si Google Play no responde en el primer arranque, el SDK retiene la instalación y lo reintenta en los arranques siguientes, hasta tres, en lugar de declararla orgánica.
¿Cómo se atribuye una instalación React Native en iOS?
Una instalación iOS de una app React Native se atribuye mediante los postbacks de SKAdNetwork, que Apple envía a nivel de campaña y no por usuario. La app declara a Traqio como endpoint de informes de SKAdNetwork en su Info.plist, e iOS envía entonces a Traqio una copia de cada postback de esa app.
El SDK registra la instalación en SKAdNetwork y actualiza el conversion value a partir del mapeo publicado para la app en la consola de Traqio. Una app que ya gestiona su propio esquema de conversion values puede desactivar esa gestión en el SDK, porque dos escritores sobrescribirían el mismo valor.
La atribución SKAN es a nivel de campaña, no de usuario: la documentación de Apple indica que el primer postback llega tras un retraso aleatorio de 24 a 48 horas una vez cerrada su ventana de conversión. Por eso no existe un ROAS de iOS por usuario con SKAN, y Traqio no modela uno.
App Tracking Transparency (ATT) es el framework de iOS, obligatorio desde iOS 14.5, que exige a una app pedir permiso al usuario antes de acceder al IDFA o de rastrearlo en apps y sitios web de otras empresas. El SDK no muestra ese aviso ni lo necesita, porque la atribución SKAN no depende de él.
¿Cómo es la configuración en una app React Native?
Configurar la atribución de Traqio en una app React Native lleva cinco pasos, todos en el código y la configuración de la propia app.
@traqio/react-native está publicado en npm; la guía de configuración de la documentación da cada comando y cada archivo completos.
- Activar Expo Modules una vez con npx install-expo-modules@latest, porque la mitad nativa del SDK es un módulo de Expo; esto añade el runtime de Expo Modules, no un flujo Expo gestionado ni un servicio de Expo.
- Instalar @traqio/react-native junto con @react-native-async-storage/async-storage y ejecutar pod install para iOS. AsyncStorage es lo que permite al SDK declarar la instalación una sola vez y conservar los eventos en cola entre reinicios.
- Llamar a Traqio.init en index.js, antes de AppRegistry.registerComponent, con la clave SDK de la app, el endpoint https://api.traqio.app y el bridge nativo.
- Añadir NSAdvertisingAttributionReportEndpoint con el valor https://api.traqio.app al Info.plist de iOS.
- Llamar a Traqio.setUserId con el identificador que la app da a RevenueCat, y a Traqio.track para las compras, con un identificador de transacción para que cada pago cuente una sola vez.
¿Qué versiones y builds de React Native se admiten?
El SDK de React Native de Traqio requiere React Native 0.74 o posterior con Expo Modules instalado, e iOS 15.1 o posterior; Android no necesita ningún permiso. El SDK funciona en un development build o en un build de release, no en Expo Go.
Expo Go es una app precompilada con un conjunto fijo de bibliotecas nativas, así que no puede cargar un módulo nativo que no contenga ya. Un development build es la app compilada con su propio código nativo, que es lo que requieren el lector de Install Referrer y las llamadas a SKAdNetwork.
Una app Expo usa @traqio/expo, un alias que reexporta el mismo módulo con un nombre que buscan los usuarios de Expo. Una app instala uno de los dos paquetes, nunca ambos.
El SDK de React Native es el SDK de Traqio verificado de extremo a extremo en un dispositivo: un clic, una instalación desde Google Play, el referrer leído en el primer arranque y una instalación atribuida de forma determinista.
Después de la instalación: eventos, ingresos y deep links
Tras la instalación, el SDK vincula los eventos en la app y los ingresos a la campaña a la que se atribuyó la instalación, lo que hace calculable el ROAS por campaña una vez conectadas las cuentas publicitarias de Meta y TikTok para la inversión.
El deferred deep linking es la técnica que conserva el destino de un enlace pulsado antes de la instalación, para que un usuario que instala la app llegue a esa pantalla concreta en el primer arranque en lugar de a la pantalla de inicio.
- Los eventos se ponen en cola sin conexión y se envían cuando la app pasa a segundo plano; se registra una apertura cuando la app vuelve tras 30 minutos o más. En React Native no hace falta ningún flush manual.
- Los ingresos de suscripción que informa RevenueCat se unen al mismo usuario cuando la app pasa el app_user_id de RevenueCat a Traqio.setUserId.
- El SDK escucha el módulo Linking de React Native y entrega los enlaces de Traqio a un callback onDeepLink, incluido el enlace diferido de una instalación nueva.
Lo que Traqio no hace en una app React Native
El SDK de Traqio no recoge ni el IDFA ni el GAID, nunca lee el portapapeles y no hace fingerprinting del dispositivo, ni en iOS ni en Android. Las instalaciones por clic solo se vinculan mediante un identificador de clic.
La única coincidencia probabilística que hace Traqio es la atribución view-through, desactivada por defecto y activada app por app: cuando ningún clic coincide, una impresión publicitaria puede vincularse a la instalación mediante la dirección IP con hash, dentro de la ventana view-through. Con view-through desactivado, una instalación que ningún identificador de clic vincula a un clic se cuenta como orgánica en lugar de adivinarse.
La atribución de clics y vistas dentro del inventario de instalación de apps de Meta y TikTok requiere ser partner de medición listado de cada red, y Traqio todavía no lo es. Los equipos que necesitan esa cobertura, muchas más redes publicitarias o puntuación antifraude la encontrarán en los MMP establecidos.
FAQ
- ¿Cómo se rastrean las instalaciones procedentes de anuncios en React Native?
- Instalando un SDK de medición móvil con un módulo nativo: la capa JavaScript de React Native no puede leer el Google Play Install Referrer ni llamar a SKAdNetwork por sí sola. Con Traqio, la app instala @traqio/react-native, llama a Traqio.init antes de registrar la app y declara el endpoint SKAdNetwork de Traqio en el Info.plist; los enlaces de los anuncios pasan por un enlace de seguimiento de Traqio.
- ¿La atribución en React Native necesita el IDFA o un aviso ATT?
- No. Traqio atribuye las instalaciones de Android mediante el Google Play Install Referrer y las de iOS mediante postbacks de SKAdNetwork, y ninguno de los dos requiere el IDFA, el GAID ni el permiso de App Tracking Transparency. El SDK nunca muestra el aviso ATT.
- ¿Funciona el SDK de React Native de Traqio en Expo Go?
- No. El SDK contiene código nativo, y Expo Go solo ejecuta las bibliotecas nativas que incluye. El SDK funciona en un development build o en un build de release; las apps Expo instalan el alias @traqio/expo del mismo módulo.
- ¿Qué versión de React Native se necesita?
- React Native 0.74 o posterior, con Expo Modules instalado en el proyecto, e iOS 15.1 o posterior. Android no necesita ningún permiso.
- ¿Se pueden atribuir instalaciones React Native a campañas de Meta y TikTok?
- Sí, para el tráfico que pasa por un enlace de seguimiento de Traqio en Android y para los postbacks SKAN en iOS, donde Traqio reconoce los identificadores de red de Meta y TikTok. Conectar las cuentas publicitarias de Meta y TikTok añade su inversión, lo que convierte los ingresos atribuidos en ROAS por campaña.
- ¿Gestiona el SDK los deep links diferidos en React Native?
- Sí. El SDK escucha el módulo Linking de React Native y pasa los enlaces de Traqio —aperturas directas y el enlace diferido de una instalación nueva— al callback onDeepLink de la app. La app debe declarar su dominio de enlaces para que estos la abran.
Fuentes
- Google Play Install Referrer Library — Android Developers — consultado el 2026-09-19
- Apple — Receiving ad attributions and postbacks (SKAdNetwork) — consultado el 2026-09-19
- Expo — Install Expo modules in an existing React Native project — consultado el 2026-10-22
- Expo — Introduction to development builds — consultado el 2026-10-22
Mide tu ROAS — gratis.
2.000 conversiones/mes gratis · sin mínimo · sin llamada comercial.
Empezar gratisRelacionado
Otras guías
Actualizado el 2026-10-22