# Session Replay: See What Users See, Fix What Broke

> Watch video-like replays of real user sessions tied to stack traces, errors, and network calls. Spot rage clicks, UI jank, and broken flows across web and mobile

**URL:** https://sentry.io/product/session-replay/

---

Debug production issues faster with replays that show exactly what your user experienced: the error, and everything leading up to it. Sensitive data is masked by default.

## Features

### Debug with context-connected replays

Watch a reproduction of user actions alongside a stream of relevant context: [web vitals](https://sentry.io/for/web-vitals/), console output, logs, network calls, errors, and [traces](https://sentry.io/product/tracing/). When replays are tied to errors, they appear directly in issue details and include any user feedback.

### Protect your users' privacy

See what your users see without sacrificing their privacy. By default, all text, inputs, and media are masked before data leaves the user's browser. Additional server-side scrubbing, custom masking rules, and element-level controls let you decide exactly what gets recorded.

### Debug mobile issues with device context

Understand exactly what the user was experiencing when something went wrong. Battery level, device orientation, and connectivity show up alongside every mobile session replay.

## Features

- **Connected to AI**: Every replay comes with an AI summary out of the box. Use Seer Agent to search for sessions by behavior, page, or any pattern. Plug replay context into your existing AI tools via MCP. — [Learn more](https://docs.sentry.io/product/ai-in-sentry/)

- **Connected to errors and performance issues**: Configure Session Replay to show up in issue details. No hunting required. — [Learn more](https://docs.sentry.io/product/session-replay/web/#supported-sdks)

- **Private by Default**: By default, the Session Replay SDK masks all text content and blocks all media elements before they're sent to the server. — [Learn more](https://docs.sentry.io/platforms/javascript/session-replay/privacy/)

- **Hydration error diff tool**: See what's not loading in React, with side-by-side and slider comparisons. — [Learn more](https://docs.sentry.io/product/issues/issue-details/replay-issues/hydration-error/)

- **Rage Click & Dead Click detection**: Using Session Replay surfaces the unresponsive elements frustrating your users as trackable issues. — [Learn more](https://docs.sentry.io/product/issues/issue-details/replay-issues/rage-clicks/)

- **Connect replays to user feedback**: See user feedback pop up within session replays, and see replays in user feedback details. — [Learn more](https://docs.sentry.io/product/user-feedback/)

## FAQ

**What is Session Replay**

Sentry’s Session Replay provides a video-like reproduction of user interactions on a web or mobile app, giving developers the details they need to resolve errors and performance issues faster. All user interactions - including page visits, mouse movements, clicks, and scrolls - are captured, helping developers connect the dots between a known issue and how a user experienced it in the UI.

**Which platforms does Session Replay support?**

Session Replay is available for web-based and mobile applications. It supports all web applications whether it’s static or dynamic, server-side rendered or single-page applications.

It is built to work with `@sentry/browser`, and our browser framework SDKs:

[Vanilla JavaScript](https://docs.sentry.io/platforms/javascript/session-replay/)

[Angular](https://docs.sentry.io/platforms/javascript/guides/angular/session-replay/)

[Capacitor](https://docs.sentry.io/platforms/javascript/guides/capacitor/session-replay/)

[Electron](https://docs.sentry.io/platforms/javascript/guides/electron/session-replay/)

[Ember](https://docs.sentry.io/platforms/javascript/guides/ember/session-replay/)

[Gatsby](https://docs.sentry.io/platforms/javascript/guides/gatsby/session-replay/)

[Next.js](https://docs.sentry.io/platforms/javascript/guides/nextjs/session-replay/)

[React](https://docs.sentry.io/platforms/javascript/guides/react/session-replay/)

[Remix](https://docs.sentry.io/platforms/javascript/guides/remix/session-replay/)

[Solid](https://docs.sentry.io/platforms/javascript/guides/solid/session-replay/)

[Svelte](https://docs.sentry.io/platforms/javascript/guides/svelte/session-replay/)

[Vue](https://docs.sentry.io/platforms/javascript/guides/vue/session-replay/)
This means Session Replay is supported on server-side rendered Web applications such as Express, Laravel, Rails, Django, [ASP.NET](http://asp.net/), Spring Boot and others. We recommend creating a separate project in Sentry to track frontend errors from your backend. And adding Session Replay to your frontend via npm, or [using the loader](https://docs.sentry.io/platforms/javascript/install/loader/).

Session Replay for mobile supports the following SDKs:

[iOS](https://docs.sentry.io/platforms/apple/guides/ios/session-replay/)

[Android](https://docs.sentry.io/platforms/android/session-replay/)

[React Native](https://docs.sentry.io/platforms/react-native/session-replay/)

[Flutter](https://docs.sentry.io/platforms/dart/guides/flutter/session-replay/)

**What is the performance overhead of Session Replay?**

Session Replay has minimal impact on the performance on your web application. We employ standard optimizations such as data compression, which is performed in a web worker outside of the browser’s UI thread in such a way that minimizes impact on your application. You can measure the overhead of Session Replay on your application without deploying to production by following [these instructions](https://blog.sentry.io/measuring-session-replay-overhead/).

**Is Session Replay easy to set up?**

You will be able to set up Session Replay with only a few lines of code. Your existing `@sentry/browser` basic setup + DSN can be used for configuration.

**How do you protect user data?**

We offer a range of privacy controls to ensure that no sensitive user information leaves the browser. By default, our privacy configuration is very aggressive and masks all text and images, but you can – for example – choose to just mask user input text. More on that can be found in our [documentation](https://docs.sentry.io/security-legal-pii/scrubbing/protecting-user-privacy/). We also provide server-side scrubbing to additionally filter on the server in case anything slips by.
Additionally, we offer a self-serve deletion capability of individual replays in the UI.
Session Replay adheres to the same security standards and is subject to the same compliance requirements as all of our software. Please see our [Security page](https://sentry.io/security/) for further details.

**How much does Session Replay cost?**

Please check out our [pricing page](https://sentry.io/pricing/) for details.

**Can I inspect the DOM or use DevTools from Session Replay?**

Sentry's Session Replay is a visual recreation of the DOM, so yeah, you can inspect the DOM. Just right click in the replay area and click Inspect to pull up DevTools. That's in addition to the AI summary and stream of activity, console logs, logs, network requests, errors, traces, memory use and tags. [Read more](https://docs.sentry.io/product/session-replay/)

**Can I set up Session Replay to run on specific pages or features?**

You can manually instrument Session Replay anywhere you'd like; for example on a new feature you're testing, or in a critical flow like a checkout. Read more about how to customize replay triggers in [this blog](https://blog.sentry.io/sampling-strategy-sentry/#smart-sampling-with-session-replay-5), or check out the [docs](https://docs.sentry.io/platforms/javascript/session-replay/understanding-sessions/#manually-add-replay-integration).

**Can I get a Session Replay when a user leaves feedback?**

Yes. When you set up User Feedback, and you set `replaysOnErrorSampleRate` greater than 0, the Replay SDK will buffer up to 30 seconds of the user's session until the user opens the User Feedback widget. If the user submits feedback, you'll be able to view the feedback, including the replay. [Read more](https://docs.sentry.io/platforms/javascript/guides/nextjs/user-feedback/)

## Of course we have more content

- [Session Replay: Becoming your own digital secret shopper](https://blog.sentry.io/session-replay-becoming-your-own-digital-secret-shopper/): Session Replay is the digital secret shopper. Watch real user clicks, diagnose checkout issues, and reduce cart abandonment with Sentry.

- [Watching everything is watching nothing: Sampling strategy for Sentry](https://blog.sentry.io/sampling-strategy-sentry/): Learn how to move beyond blanket sampling and optimize telemetry at scale with tracesSampler, manual replays, and strategic log filtering.

- [Debugging context](https://sentry.io/features/context/): Understand the conditions of each error by viewing the associated release, environment, tags and more.

- [Reproduce Errors Without User Feedback](https://sentry.io/features/breadcrumbs/): Sentry Breadcrumbs show you the events your app and users took prior to an error. View events like user interactions, API calls, network requests before an error.

## Testimonials

> Session Replay has been instrumental in helping us resolve hydration errors. With Replay, we can visually see the jankiness of the page and pinpoint which components were impacted, saving us hours of manual debugging.

> — Laszlo Gaal, Lablab.ai

> I have been using Session Replay in a few of my company's apps and it is a really great feature! Not only has it helped me and my team to be more efficient on resolving very oddly-specific issues and things related to UI, but also has helped me spot issues with non-error sessions as well.

> — John Victor, Jornadayu

---

*Source: [sentry.io/product/session-replay/](https://sentry.io/product/session-replay/)*
