Real User Monitoring (RUM) is a testing technique that collects and analyzes the user’s interactions with the website pages or app.
It is a passive monitoring solution that involves collecting data when pages begin loading and continues doing so as a visitor navigates through the website. This provides insights into how actual visitors experience the site, including the performance based on the user’s country, browser, device, and other variables.
In practice, the RUM tool will constantly observe a user’s interactions with a website or app while analyzing the availability, functionality, and responsiveness of the different components and services. It analyses the user experience by checking metrics such as the transaction path, load time, responsiveness, and others, hence allowing you to identify components that are degrading performance and those that require optimization.
Consequently, administrators or developers can identify and address user-facing issues such as slow pages, malfunctioning links, network delays due to geographical regions, browser incompatibility issues, etc.
Some of the information RUM shows include;
Performance of the monitored pages including the slowest loading components
Pages a user accesses, actions, and if there are any issues
Types of users with the best experience as well as those encountering issues such as slow responses together with user-specific data, such as locations, devices, browsers, and OS types and versions
If the latest updates, upgraded or code changes are affecting the user experience
Synthetic Testing & RUM
Website performance is a critical part of the user experience, as almost every visitor expects a fast loading page and smooth navigation. A website with poor performance will keep visitors and users away, hence the need to monitor and address any performance issues.
According to a recent study, over 50% of mobile users often leave a website or app when it takes longer than 3 seconds to load. Out of these, about 40% of unsatisfied visitors may never come back. As such, website monitoring is critical in ensuring that it meets the user’s expectations.
Today, there is a wide range of website testing tools that give the administrators and business owner insights into various performance metrics, availability, loading time, and others.
These solutions include complimentary synthetic testing and real user monitoring. The synthetic testing analyses the website based on automated software scripts or robots that imitate user actions. On the other hand, the RUM analyses the users’ activities as they log in and interact with website pages or web apps.
In the real world, the user’s actions and experience are dynamic and unpredictable, hence the need to see how the web services respond to various requests under different conditions.
For example, on an e-commerce website, a user may have a problem with the payment method may be due to location or other reasons. If it fails, the developer needs to find out what will happen if the user clicks an unexpected link, back button, etc. (I.e., what will happen to the cart?).
The real user monitoring tools provide insights into how the real visitor interacts with the website, while synthetic testing provides a similar assessment of what an expected user will experience.
Need for RUM
The majority of today’s websites and apps have evolved into dynamic systems distributed across different technologies that change daily. Most often, some updates, upgrades, or code modifications may affect the performance for certain or all users. To ensure that the changes do not degrade performance, there is a need to monitor the website components and fix any issues.
As websites grow in size and audience, the number of locations and variety of devices, operating systems, and browsers also increases. And each of these has an impact on the user experience. Analyzing how each of the visitors interacts with the website pages or apps provides useful insights and a way of identifying areas or components that require attention or optimization.
While there are several web testing tools, the RUM provides a better analysis of the user’s transaction path based on the various unique metrics. It is particularly useful in detecting user issues that may arise after hardware and software upgrades, updates, code changes, website modifications, network changes, etc.
Benefits of RUM
This monitoring enables the website administrators to see when and where performance degradation occurs, the traffic at this time, affected metric, and more.
Main advantages of real user monitoring include;
Providing insights into how real users are interacting and using the application. In addition to determining optimization opportunities, the RUM is useful for determining future upgrade needs or enhancements.
Determines the geographical distribution of users, and how the application or pages respond to requests from different regions.
Establish actual usage by real users; this includes determining how the utilization of the network, server, and other resources based on actual users.
Gain full visibility of the website, hence identify and address performance issues faster
Find the high-performance page, see how different features respond and address issues with the slow components.
Eliminate blind spots, hence improve user experience and service
Trace the visitors’ transaction path and see at what point the problems occur hence faster resolution
How does RUM Work?
The RUM solution uses a set of a client- or server-based tools such as testing scripts, agents, and network sniffers to check the website components as users interact with the pages or app.
As visitors navigate through the website or interact with the pages, the agent listens to all the traffic while gathering the performance, engagement, and other useful metrics.
Performance metrics include page load times, responsiveness, bandwidth usage, etc.
Engagement metrics such as bounce rates, conversions, and more.
User-specific metrics such as the location a user is coming from, device, browser type, and version, carrier speed, and other variables that influence the user experience.
Once the agent collects the data for the user, it sends it to an analyzing platform where it is sorted and arranged according to defined parameters. The solution then represents the analysis in easy to understand and actionable formats such as charts, bars, graphs, and other visualizations.
During the monitoring process, the RUM tool follows the following steps to collect the user experience data.
Loading the script: This injectssmall script in the head tags of the pages to monitor pages as they load.
Recording: The script collects relevant performance data as the monitored page continues loading. This includes the page, timing information, components, etc.
Send data: Once the page loads completely, the script will send the data collected to a server.
Processing: The servers will then process the data and pull the user environment, performance data, and other relevant information which it then saves in a database. This will also identify slowness, errors, navigation problems, and other issues for each page and user.
Aggregation: To generate actionable reports, the server organizes the received data based on variables such as the location, viewed pages, device type operating system, and browser types and versions. This makes it easier to view the pages, availability, and performance-based on users’ different devices, browsers, and regions.
Alerting: Once the RUM tool identifies a critical issue, it can alert the relevant for action.
Some tools organize the data into page views – showing detail for every page. It also shows all the successive page views during a single visit for each user in addition to other actions. They also have options to sort out data by details such as the URL, page views and time visited, and any other user-specific information such as device, browser, region, etc.
Data Collection Method
There are various RUM techniques with different features and deployment methods. In most cases, the choice of the tool or method to use depends on what needs monitoring, budget, scale, reporting, etc. The common tools are based on one of the following data collection techniques.
Server-side data collection using cookies
A hybrid method combining the server and browser-side data collection
Who requires RUM?
The RUM reports, usually presented in dashboards, are useful to webmasters, developers, managers, business people, and other stakeholders.
The digital product managers can verify that the apps or websites are meeting the requirements, and have them rectified if offering degraded performance.
Front-end developers: to ensure that the codes, changes, new features, and other components are working properly.
Technical leads: the dashboards or reports enables the technical people to access the website or app and determine if there are issues that need attention.
Anyone running an online business and serious about user experience should consider real user monitoring.
With the complex combination of the diverse network, hardware, and software components in today’s websites and apps, delivering a meaningful user experience can be a challenge, especially when some of these malfunctions. The real user monitoring provides a means to analyze the website and get results based on real-world data visitors.
Amos Kingatua is an ICT consultant and technical writer who assists businesses to set up, secure, and efficiently run a wide range of in-house and virtual data centers, IT systems and networks.