-
-
Notifications
You must be signed in to change notification settings - Fork 359
Description
ScreenRecording_02-11-2026.14-51-51_1.mov
Description
When replaysOnErrorSampleRate is set to a value greater than 0, the app experiences periodic ~1 second UI stalls/jitter. This appears to be caused by Session Replay's screenshot capture mechanism blocking the main thread.
The jitter occurs roughly every 1-2 seconds and is clearly visible during animations or fast gesture interactions. Setting replaysOnErrorSampleRate: 0 eliminates the issue entirely.
Reproduction
Minimal repro app: https://github.com/thomasttvo/sentry-replay-jitter-repro
The app animates a ball in a circle while measuring frame-to-frame intervals on the UI thread via Reanimated's useFrameCallback. Frames exceeding 20ms are flagged as jitter and displayed as red spikes on a chart.
Steps:
- Clone the repo,
yarn install,cd ios && pod install - Run the app on a physical iOS device
- Press "Run Test (6s)" with Replay OFF — observe minimal/no jitter spikes
- Toggle Replay ON, kill and restart the app
- Press "Run Test (6s)" again — observe periodic red jitter spikes in the chart
Sentry Config
Sentry.init({
dsn: '...',
enableAutoPerformanceTracing: false,
tracesSampleRate: 0,
replaysOnErrorSampleRate: 1.0, // jitter occurs when > 0
replaysSessionSampleRate: 0,
});Environment
@sentry/react-native: ^6.14.0react-native: 0.83.2react-native-reanimated: ^3.19.4- Device: iPad Pro (physical device)
- iOS version: 18.x
Note: This has only been tested on iOS. It would be good to verify whether Android is also affected.
Metadata
Metadata
Assignees
Labels
Projects
Status