Real user monitoring (RUM) tracks and measures the end user experience in an application, including how long it takes for elements on a web page to load, whether a page has errors, and how long AJAX and HTTP requests take. You can also use RUM to better understand how your users interact with your websites, giving you valuable insights on how to improve your sites and deliver value to your customers.

RUM is a core feature of application performance monitoring (APM). Real user monitoring is also sometimes known as browser monitoring because the end user experience happens in the browser. While other aspects of application performance monitoring involve measuring server-side performance (the backend), real user monitoring measures client-side performance—the browser where users interact with your application.

New Relic browser monitoring captures important application metrics such as Google's Core Web Vitals.

Why is real user monitoring important?

Everything in an application—from infrastructure to microservices to browser and mobile experiences—is ultimately built around creating a good experience for your end users. Tools like focus groups, surveys, and A/B testing can provide pieces of the puzzle, but they don’t give you the comprehensive, real-time, and ongoing insights into the user experience that real user monitoring can provide.

Users will abandon a website within seconds if there are slow page loads or other errors. If users have a particularly bad experience with an application, there are further ripple effects. According to one study by Forbes, 12% of users would go as far as to warn others against using a site or application if it doesn’t perform well. Here’s the bottom line: poor user experience negatively impacts not just customer satisfaction but also your brand’s reputation and success. If you wait until your customers are complaining—or worse, quitting your application altogether—it’s already too late. You need the tools to understand the end user experience in real-time.

In addition to avoiding site performance issues, it’s also important to optimize your sites where possible. Improvements in site speed have a strong positive impact on end-user behavior, which significantly benefits the bottom line. According to a study conducted by Deloitte, a 0.1 second improvement in a site’s speed led to an 8.4% increase in conversions with retail consumers. In addition, customer orders increased by 9.2% on average. So even if your site seems to be performing without obvious issues, real user monitoring can still help you improve the user experience by helping you locate and optimize pages that aren’t performing as well as they could.

When end users do have problems, you also need to pinpoint the source of the issue. In order to have full observability into your application, you need to monitor all parts of the stack from the server to the browser.

New Relic browser monitoring displays valuable key metrics such as time taken for first interaction, which is filtered by device type and browser version.

Modern client-side applications have also become increasingly complex, often combining single-page applications (SPAs) with highly dynamic elements and increased interactivity for end users. In order to increase client-side performance, developers often bundle code that runs in the end user’s browser client and minimizes interaction with servers. That means client-side applications are doing more of the heavy lifting than ever before—and rely on complex asynchronous code working correctly in the browser.

Because errors and performance issues often involve browser code, many user interactions aren't recorded in server-side logs. Software teams have limited visibility into what is actually happening in a user’s browser—unless they’re incorporating real user monitoring.

Real user monitoring measures and analyzes browser events that impact your users including page load time, perceived performance data (user satisfaction), JavaScript errors, AJAX requests, and more. By getting a complete picture of how your system is performing for end users, you can ensure your customers are getting the best experience possible.

What can you monitor with a real user monitoring solution?

RUM tracks and analyzes client-side performance. A good real user monitoring solution tracks the following:

  • Timing and performance measurements: By using the Navigation Timing API and cookies, real user monitoring solutions collect client-side performance data, including the time it takes to load and unload documents, overall web page performance, and browser load operations. These include Google’s Core Web Vitals such as the time it takes to load the first contentful paint and the largest contentful paint.
  • Golden signals: It’s important to monitor the four golden signals, which are latency, traffic, errors, and saturation. For instance, New Relic Lookout provides a dashboard that shows deviations in golden signals with no additional configuration required.
  • Transaction times: With real user monitoring, you get insights into how long each user transaction is taking, including AJAX and HTTP requests.
  • User satisfaction: Apdex measures a user’s satisfaction with the response time of your web applications. You can set your own Apdex thresholds based on your own criteria and KPIs.
  • Single-page application (SPA) performance: Track how your SPAs are performing, including initial page load and route change performance details.
  • JavaScript errors: Information about any JavaScript errors that are occurring in the end user’s browser.
  • Basic end user information: Details include web browser type and version, device type, operating system, and geographic location based on IP address.

New Relic browser monitoring provides a page load count with filters for geographic location so you can see exactly where users are interacting with your application.

How to set up real user monitoring

Real user monitoring is usually part of an APM or observability solution. You can implement real user monitoring with instrumentation, which is the process of adding or installing an agent in your application code. Ideally, the instrumentation process should be easy to implement and require minimal additional configuration. For example, you can instrument browser monitoring with New Relic in just a few minutes.

In the case of browser monitoring, the agent is a snippet of JavaScript that you add to your front-end code. It’s usually injected inline into the <head> of a JavaScript page to ensure that the instrumentation code loads before other scripts. The monitoring script captures basic information about the end user’s experience. When a user interacts with a web page that includes the script, the agent collects that interaction data and sends it back to your monitoring solution, where it can take the form of logs, metrics, traces, and events.

Monitoring solutions such as New Relic come with built-in dashboards that display typical metrics related to the user experience such as page load times. You can also build custom dashboards based on the metrics that matter most to you.

Finally, it’s a best practice to set up alerts so your teams are notified when issues arise. For instance, you could set an alert to trigger based on the percentage of transactions that are causing errors or the average HTTP response time.

What is the difference between real user monitoring and synthetic monitoring?

As the name implies, real user monitoring measures how real users are interacting with your website. Synthetic monitoring uses simulated users to measure how your website is performing. As an example, you can use both real user and synthetic monitoring to track the average HTTP request time on your site. While real user monitoring will base its metrics on end user HTTP requests, synthetic monitoring involves using a headless browser to measure how long each HTTP request takes.

Learn more about synthetic monitoring.