Sentry for Real User Monitoring (RUM)

Not all bugs crash. Some just make people quit, and you’re left staring at green dashboards, wondering what went wrong. Sentry’s Real User Monitoring shows what actually happens, revealing what backend metrics miss: session-level insights, slow pages, rage clicks — all directly tied to real users and the code-level issues behind the pain.


Video thumbnail

Debug errors faster while protecting user privacy with Session Replay

Debug errors faster while protecting user privacy with Session Replay. See how Tilled uses Session Replay for faster debugging, and how Sentry helps them protect their users’ privacy.

Tolerated by 4 million developers

Github logo
Disney logo
Atlassian logo
Vercel logo
Airtable logo
Duolingo logo
Cloudflare logo
Slack logo
Metronome logo
Autodesk logo
Microsoft logo
Instacart logo
lyft
Miro logo
Monday logo
Cursor logo
Anthropic logo

From rage click to root cause

See the full user journey with Session Replay

See the full user journey with Session Replay

You know someone’s session went off the rails, but you don’t know why. Metrics alone can’t tell you what really happened.

Session Replay gives you a complete picture of problems real users are experiencing. Developers get the context they need to fix it fast. No need to go through hoops to reproduce an evasive bug on that one specific device version.

Learn about Session Replay
Video thumbnail

Follow the trace to the point of failure

You can’t replicate the issue. The dashboard says everything is fine. But your users are still stuck waiting on something.

Sentry's RUM captures what actually happened in the user’s browser: slow scripts, blocked rendering, flaky API calls. 

Watch the session, follow the trace, and fix it—no assumptions required.

Learn about Tracing
Fix what’s hurting users (and revenue) the most

Fix what’s hurting users (and revenue) the most

Not every issue that you spend time debugging on hits the bottom line—but slow checkout flows and clunky product pages do.

Sentry's Real User Monitoring highlights the sessions and slowdowns that are affecting the most users. You can track patterns, sort by impact, and focus on the problems that really need attention.

Make smarter decisions with fewer resources by seeing exactly which metrics are affecting your users. Prioritize based on user impact, not just technical severity.

Learn about Insights

Monitor your Web Vitals

Web Vitals for Developers

Sluggish pages frustrate users, dent search rankings, and chip away at revenue. Sentry’s Web Vitals Monitoring rolls up real-user data into a single weighted score, then flags the routes with the most room to improve. Track key metrics like:

  • Largest Contentful Paint (LCP)

  • Cumulative Layout Shift (CLS)

  • First Contentful Paint (FCP)

  • Time To First Byte (TTFB)

  • Interaction to Next Paint (INP)

Waterfalls and flame graphs trace the path to the slow operation and the exact line of code behind it. Fix the lag, deploy with confidence, and keep both users and vitals comfortably in the green.

Learn more about Web Vitals
Metrics for monitoring, context for fixing

Metrics for monitoring, context for fixing

You have plenty of metrics, but they don’t tell you why something is broken. And they definitely don’t help you fix it.

Sentry's RUM combines frontend metrics, session replay, trace waterfalls, and error context into one clear view. You can even turn spans into custom metrics for what matters to your app.

Monitoring tools show symptoms. Sentry helps you solve the problem.

Learn More About Trace Explorer
Find the exact line of code that slows you down

Find the exact line of code that slows you down

Struggling with Core Web Vitals in the yellow? Deeply buried CPU hogs turn into slow requests and ultimately impact your web vitals. Sentry Profiling samples live code roughly 100 times a second, then turns that data into flame graphs that spotlight the few functions doing the most damage. Span overlays link each hot frame back to its trace, so you can hop straight to the exact line that needs a tweak. Patch the hotspot, redeploy, and watch LCP and INP cruise back into the green.

Learn about profiling

Fix issues before users notice

Get real-time alerts in production

With Alerts you spots the culprits in real time, whether it’s a spike in LCP, a burst of 500s, or a failing uptime check.  Get alerts in production for:

  • Issues - Trigger when an issue matches a specific criteria.

  • Metrics - Trigger when macro-level metrics cross specific thresholds.

  • Uptime - Trigger when an HTTP request doesn't return a successful response.

These rules fire the moment thresholds are breached, piping actionable pings to Slack, PagerDuty, or any webhook you trust. You can even set up anomaly alerts, which lets you know whenever metrics are outside of their expected bounds. Smart muting and team-level routing keep the noise low, so you fix fast and ship on schedule.

Learn About Real-Time Alerts
Understand user behavior

Understand user behavior

Analyze and monitor real user traffic to spot the moments where visitors hesitate, rage-click, or just bail. Track Core Web Vitals and load times in real time, then drill down to the span, query, or asset dragging the page. Follow live traffic through Session Replay, where every click, scroll, and rage-tap is stitched next to its stack trace. Because Sentry correlates resources, errors, and user actions automatically, you get the full story. No redeploy, no guessing.

Explore the interactive sandbox
Protect your users' privacy

Protect your users' privacy

User privacy comes baked in. Sentry strips credit cards, passwords, and other PII on the server by default, and you can layer on custom regex rules or run Relay in static mode so raw data never leaves your network. Session Replay automatically masks form inputs and other sensitive UI elements, so you see the bug without seeing the user. Full context for you, zero oversharing from them.

Need finer control? Add custom “Additional Sensitive Fields,” mark “Safe Fields” you want to keep, or drop IP- and geo-data entirely with point-and-click Advanced Scrubbing rules. No need to redeploy, and no annoying regex matching required (unless you want to, we support regex too).

How we handle data scrubbing

Traditional RUM

Black‑Box Metrics: You’re staring at waterfall charts and percentile graphs that tell you something is slow, but not why‑or which user flows are paying the price.

Context Vacuum: RUM dashboards sit in their own silo, so you’re forced to juggle separate tools for errors, traces, and logs—good luck matching a Core Web Vital spike to the deploy that caused it.

Privacy Panic: Instrumenting the browser feels risky; masking, scrubbing, and compliance settings live in a different console (or worse, a legal doc), so teams ship half‑baked configs—or none at all.

Single‑Page‑App Blind Spots: Traditional RUM still thinks every navigation is a full page load, so route changes, lazy‑loaded bundles, and long tasks hide in plain sight.

Developer Disengagement: The performance team cares, the business team cares, but the people who can actually fix the code? They’re busy because the RUM tool speaks in metrics, not stack traces.

RUM with Sentry

Full Visibility into Performance: Web Vitals, custom spans, and error events land in one place—right next to the exact release, commit, and line of code. Move directly from symptom to fix without tab‑surfing.

Session‑Aware Debugging: Jump straight from a 400 ms INP outlier to a Session Replay of the actual click path, console logs, and network chatter that caused it. No more “can you record your screen?”.

Privacy Built‑In: Field‑level scrubbing, domain‑level blocking, and one‑click GDPR/CCPA modes ship with the SDK, so legal sleeps well and you still get the diagnostics you need.

Instrumentation built for SPAs: Route changes, virtual pages, and long tasks are auto‑captured, so modern frameworks (React, Vue, Next, Remix—you name it) finally get monitoring that understands them.

Developer‑First UX: Clean UI, GitHub‑linked stack traces, and IDE‑ready deep links mean the folks writing code actually use the tool—turning “somebody should fix this” into “PR #457 closes it.”

Getting started with Sentry is simple

We support every technology (except the ones we don't).
Get started with just a few lines of code.

Install

The Replay integration is already included in your browser or framework SDK NPM packages. If you’re using CDN bundles instead of NPM packages, you need to load the Replay integration CDN bundle in addition to your browser bundle:

Click to Copy
npm install --save @sentry/browser

Set Up

To set up the integration, add the following to your Sentry initialization. There are several options you can pass to the integration constructor. See the configuration documentation for more details.

Click to Copy
// import Sentry from your framework SDK (e.g. @sentry/react) instead of @sentry/browser import * as Sentry from "@sentry/browser"; Sentry.init({ dsn: "https://examplePublicKey@o0.ingest.sentry.io/0", // This sets the sample rate to be 10%. You may want this to be 100% while // in development and sample at a lower rate in production replaysSessionSampleRate: 0.1, // If the entire session is not sampled, use the below sample rate to sample // sessions when an error occurs. replaysOnErrorSampleRate: 1.0, integrations: [ Sentry.replayIntegration({ // Additional SDK configuration goes in here, for example: maskAllText: true, blockAllMedia: true, }), ], });

That's it. Check out our documentation to ensure you have the latest instructions.

"We’re shipping six to seven times a day across more than 100 teams, keeping up this pace with the visibility we had was nearly impossible before moving to Sentry SaaS."
Coveo
Since adopting Sentry, Coveo has seen...
2x

release pace without risking undetected issues in production

50%

decrease in debugging time

250

projects migrated to Sentry in <2 months

read more

More RUM content

© 2025 • Sentry is a registered Trademark of Functional Software, Inc.