Real user monitoring (RUM) is the process of capturing, analyzing, and reporting a real user’s interaction with a website. It helps determine the website’s availability and performance by using a set of tools such as network sniffers, JavaScripts, or agents on user machines.

Graphic of real user monitoring by MaxCDN.


Applications and their components in virtual- and cloud-based systems are usually moved and re-provisioned to meet the changing demands of the modern web. Managing and supporting these applications can become complicated, especially when:

  • Codes are frequently changed or updated
  • Applications sprawl across storage, databases, networks and other tiers
  • Applications are linked to third party sources where one has limited control

RUM systems like Pingdom and New Relic show how people interact with applications and web pages. They also indicate how the aforementioned instances affect the user experience.

How Real User Monitoring Works

RUM analyzes the ease of user interaction across sessions on cloud-, mobile-, or web-based applications. It then generates a performance report that can be used to troubleshoot and fix identified infrastructure or user issues.

The monitoring allows one to capture live sessions, trace a user experience across several tiers, know what the customer clicked, know the response times, and see the malfunctioning pages.

Going Beyond the HTTP

RUM goes beyond what’s seen on the screen by the user and analyzes performance across several tiers. These tiers include storage centers, databases, networks, load balancers and more. It also breaks down user segments to include time stamp, geographical location, browser, operating system, mobile or desktop platform, and parts of application or pages accessed.

RUM yields both the individual visitor data and the aggregate reports. The visitor data is useful for diagnosing issues with the pages and shows if all users are experiencing the same problem, or if it is only a single user affected. The aggregate looks at calculations that give a broad view of the application’s performance as a whole.

Basic Steps in Real User Monitoring

  1. Data capture: RUM system captures the hits on pages and objects from various sources by using tools such as a passive network tap, JavaScript on browser, etc.
  2. Sessionization: The ‘captured hits’ data is re-assembled into a record containing pages, components, and timing information of the individual visit.
  3. Problem Detection: Pages, objects, and visits are analyzed for any unusual behavior such as periods of slowness, errors, navigation problems and other malfunctions.
  4. Individual Visit Reporting: Captured data is used to recreate the individual visits, either as screens as seen by the user or just the summaries.
  5. Reporting and Segmentation: Aggregated data can be used to determine the availability of a specific page and its performance on different browsers and user segments.
  6. Alerting: RUM system triggers an alert mechanism whenever a critical or urgent issue is detected.
  7. A typical RUM system will collect a user’s data on the website page views and the time it takes to completely load a page. It breaks down the load time to show where time is spent, from the moment the user clicks on a page link to the time the page is completely loaded.

    Benefits of Using Real User Monitoring

    • Easily measure service level targets by combining infrastructure performance and user experience data.

    • Detect problems and better prioritize issues by replaying user sessions and tracing user transaction paths.
    • Easily Identify problems at the network and page level.


    The amount of people who’ve turned to the web for content consumption, product shopping, and other experiences once held solely offline is exponential.

    Therefore, improving the “online experience” is as important as improving the “offline experience” has always been. For instance, improving the online experience is as important as improving magazine formatting/delivery and department store layout/selection for optimal user consumption.

    By implementing RUM, a service provider, website owner, or administrator can tell if their website or application is serving visitors well.