Get started with the Connect SDK in a React Native app
The Connect SDK for React Native captures how users interact with your app — screen views, touches, and exceptions — and delivers the data to Acoustic Connect for analytics, session replay, and audience targeting. It also enables identity-aware reporting and mobile push notifications. The SDK supports both bare React Native and Expo managed workflow projects.
Language: TypeScript and JavaScript
Availability: Pro, Premium, and Ultimate. Session replay and PII masking in session replay require Ultimate.
What's included in your plan
| Capability | Pro | Premium | Ultimate |
|---|---|---|---|
| Behavioral analytics | ✓ | ✓ | ✓ |
| Push notifications | ✓ | ✓ | ✓ |
| Identity signals | ✓ | ✓ | ✓ |
| Session replay | ✓ | ||
| PII masking in session replay | ✓ |
What the SDK captures
Automatically
The SDK captures the following data without any additional code beyond the initial <Connect> setup.
- Screen views — automatic when your app uses React Navigation and passes a
navigationRefto<Connect>. Apps using a different navigation library (or none) callsetCurrentScreenName()from each screen instead. - Touches and keyboard input — tap capture is automatic. Enable
captureKeyboardEventson<Connect>to also capture text input interactions. - Device and session context — device and app metadata, locale, and changes in network connectivity, captured automatically by the same native Connect, Tealeaf, and EOCore modules used on native Android and iOS.
- Exceptions — uncaught JavaScript exceptions are forwarded automatically. Log a caught exception with
logExceptionEvent().
With additional setup
| Capability | Description | Guide |
|---|---|---|
| Push notifications | Send targeted messages via Apple Push Notification service (APNs) on iOS and Firebase Cloud Messaging (FCM) on Android. Your marketing team authors thumbnail images, expandable content, and tappable actions from Connect — no extra code per campaign. | Enable push notifications in a React Native app |
| Identity signals | Match anonymous app sessions to known contacts in your Connect audience by firing a signal at sign-in or registration. | User identification signals in a React Native app |
| Custom events and signals | Log any event the SDK doesn't capture automatically — for example, a business-significant action — or a generic signal with your own attributes. | Connect React Native SDK API reference |
| Location | Log the device's current location. Opt-in only — the SDK does not collect location automatically. | Connect React Native SDK API reference |
| Session replay and PII masking | Visual reconstruction of sessions for UX analysis, with the option to mask sensitive fields — such as card numbers or names — before capture. Requires Ultimate. | Mask PII in session replay |
Requirements
| Language | TypeScript and JavaScript |
| Workflows | Bare React Native and Expo (managed workflow) |
| React Native versions | 0.82.0–0.85.x |
| Development environment | Node.js 20 or later. iOS builds require Xcode 26 or later. |
| Mobile app compatibility | iOS 15.1–26.2, Android 8–16 (API level 26–36) |
See the integration guide for your workflow for the full requirements.
Integration path
The React Native integration is split into focused steps. Start with SDK integration, then add the features your app needs — identity and push are independent and can be adopted in either order.
- Integrate the SDK into your app: Bare React Native or Expo.
- Identify your users at sign-in and at registration.
- Enable push notifications — iOS and Android, for both bare React Native and Expo.
- Move your integration to production.
Sample apps
Two reference implementations are available:
