Skip to main content

Overview

Real-time monitoring, error tracking, performance insights, and user behavior tracking for React Native apps — powered by OpenTelemetry.

How it works

The Pulse React Native SDK is a thin layer on top of the same native stacks documented in iOS APIs and Android APIs. The JS layer handles three things:

  • JS crash detection — unhandled exceptions and promise rejections
  • Network interception — fetch, XHR, and axios requests
  • Screen tracking — React Navigation screen transitions

Everything else — crashes, sessions, app startup, tap tracking, ANR, frozen frames, and all other native telemetry — is powered by the underlying native SDKs.

Features

  • Crash detection — JS exceptions, promise rejections, and native crashes on iOS and Android
  • Network monitoring — fetch, XHR, axios, and native HTTP clients; tracks URL, method, status, and duration
  • Screen tracking — React Navigation transitions and native screen lifecycle
  • Interactions — User journeys across screens, derived from auto-captured telemetry signals
  • App startup — Cold and warm startup time from process launch to first screen render
  • Session Replay — Screenshot-based screen recording with privacy masking
  • Tap tracking — UIKit touch events and rage-click detection (iOS), View/Compose click events (Android)
  • ANR detection and frozen frames (Android)
  • Location — Coarse location to correlate issues with geography
  • Metrics — Performance metrics aggregated from captured telemetry
  • Error boundaries — React rendering errors with component context

Supports both Old and New React Native architecture, with Expo plugin support for zero-config native setup.

Next Steps

Pick the path for your stack:

  • Bare React Native — Native ios/ + android/ you edit yourself.
  • Expo — Expo + Pulse config plugin / prebuild.