Skip to content
Anexet
Abstract illustration for “Real User Monitoring”

Real User Monitoring

Real user monitoring (RUM) measures how a website or app performs for actual visitors, using timing and error data collected from their browsers and devices during real sessions. It shows the speed and reliability people really experience.

Anexet Team
October 21, 2026Read 5 min

What real user monitoring is

Real user monitoring (RUM) is a way of measuring how a website or application behaves for the people who actually use it. A small piece of code in the page, or an SDK in a mobile app, records timings and errors during each real visit and sends them to a collection service for analysis.

The word “real” is the point. A lab test shows how a page loads on one fast machine in one data center. RUM shows how it loads on a three-year-old phone on a train, over a weak network, with a browser extension injecting its own scripts. Those conditions are too varied to reproduce, so the only way to know them is to measure them where they happen.

RUM is passive: it adds no test traffic and only observes. It is one half of digital experience measurement, the other being synthetic monitoring, and it is one reading of the wider term end user monitoring, which also covers activity tracking. It belongs to the general practice of monitoring. Despite the name, the “user” here is a visitor session, not an employee under review.

How the data travels

Whatever the vendor, a RUM setup follows the same path from the visitor's device to a dashboard.

  1. 1
    Instrument

    Add a script to the page or an SDK to the app. It registers observers for the performance data the browser already exposes.

  2. 2
    Collect

    As the visit goes on, the script reads timings for navigation, resources, painting, and interactions, and notes JavaScript errors and failed requests.

  3. 3
    Enrich

    Each record gets context: the page or screen, browser, device class, connection type, rough location, and a session identifier.

  4. 4
    Send

    The script sends the data in small batches as a beacon, ideally when the page is hidden or closed, so the visit itself is not slowed down.

  5. 5
    Aggregate

    The backend groups records by page, release, country or device and shows distributions, trends, and alerts.

What it measures

RUM records many signals, but three are standard in web work. They are called Core Web Vitals, and Google publishes target values that count as good when they are met for at least 75 percent of visits. Beyond these, RUM usually tracks server response time (TTFB), JavaScript errors, the duration of API calls made by the page and, in mobile apps, crashes and start-up time.

MetricWhat it capturesGood result
Largest Contentful Paint (LCP)How long the main content takes to appear≤ 2.5 s
Interaction to Next Paint (INP)How quickly the page reacts to taps and clicks≤ 200 ms
Cumulative Layout Shift (CLS)How much content jumps around while loading≤ 0.1

Reading the numbers

RUM data is a distribution, not a single number. An average hides the visitors who suffer most, so teams read percentiles: the median shows the typical visit, while the 75th or 95th percentile shows the slow tail. Compare the same percentile across releases, or a change in the mix of visitors will look like a change in the site.

The real value comes from slicing. Break the data down by device class, browser, connection type, page template and geolocation, and the problem usually names itself: a heavy script that hurts only low-end phones, a region far from the nearest server, a release that raised the error rate for one browser version. The method has blind spots too. It sees only the visits that loaded the script, and blockers and consent choices remove some of them.

RUM, synthetic monitoring, and APM

RUM is rarely used alone. Synthetic monitoring runs scripted checks from fixed locations on a schedule, and application performance monitoring (APM) traces what happens inside the servers. Each answers a different question:

CapabilityReal user monitoringSynthetic monitoringAPM
Measures what real visitors experienced
Detects an outage when nobody is visiting
Covers real devices, browsers, and networks
Shows which server code or query is slow

Common mistakes

Most disappointing RUM projects fail in familiar ways:

A page that is fast for the average visitor can still be broken for a whole group. Check the tail before declaring success.

  • Reading averages instead of percentiles, so the slowest visitors stay invisible
  • Comparing periods with a different mix of devices, countries or traffic sources, then crediting the last release
  • Collecting full URLs with query strings, form values or user identifiers the question never needed, a problem that anonymization at the source would remove
  • Sampling so aggressively that rare pages and rare errors disappear
  • Watching speed alone and never linking it to outcomes such as bounce rate, conversion or support requests

Who uses the data

RUM data serves several teams, and each wants a different cut of it. It is also worth saying what RUM is not for: it is not a tool for watching individual employees, and that job belongs to user activity monitoring.

RoleUses RUM data toTypical view
Front-end engineerWeb and mobile developersFind slow templates, heavy scripts, and layout shiftsPage-level timings and errors by release
Site reliability engineerOperationsConfirm that a deployment did not hurt visitorsError rates and percentiles with alerts
Product or marketing ownerBusiness sideLink speed to bounce rate and conversionSegments by campaign, country, and device
Privacy officerLegal and complianceCheck what is collected and for how longField list, retention and consent settings

Privacy and first steps

RUM is performance data, but it can still be personal data. IP addresses, device characteristics, session identifiers and URLs can point to a person, so data protection law may apply, and in the EU the ePrivacy rules on storing or reading information on a device can require consent. A privacy-friendly setup avoids persistent identifiers, shortens IP addresses, strips query strings, and respects the choice made in the consent banner. Check the details for your markets with legal counsel.

A sensible start is small. Pick the three or four pages that earn the most, measure the Core Web Vitals on them, set an alert on the 75th percentile and review it after each release. If your question is about what employees do rather than how a site performs, the right category is employee activity monitoring, which uses different data and different safeguards.

Speed is what the visitor on the weakest connection felt, not what the test machine measured.

Anexet Team

Frequently Asked Questions

Common questions about this term and how Anexet handles it.

No. Real user monitoring measures the visits of actual people as they happen, while synthetic monitoring runs scripted tests on a schedule. RUM shows real conditions, synthetic checks catch problems when nobody is online, and most teams use both.

Only slightly if it is built well. A good script is small, loads asynchronously, and sends data in batches when the page is idle or closing. As with any added script, measure the overhead on a test group before a full rollout.

No. RUM measures how sites and apps perform for their users. Watching what employees do on company computers is user activity monitoring, which collects different data and carries different legal duties. The two share the word “user” and little else.

It depends on what is collected and how. Data that identifies a person falls under data protection law, and in the EU storing or reading identifiers on a device can require consent. Collecting only anonymous, aggregated timings reduces the burden, but confirm the rules with legal counsel.

Protect your data with Anexet

See how Anexet stops data leaks, monitors employee activity, and keeps you compliant, in a quick live demo.

Request a demo