Real user monitoring (RUM) gathers information about the performance of websites when they are accessed by actual visitors rather than by automated tests.
RUM isn’t interested in the actions of individual users – this is not a tracking method. The purpose of RUM is to aggregate data on user actions to see which parts of a site attract users and to check that all expected journeys through the site are actually followed by real users.
A major justification of RUM is to check that the design of the website really does induce visitors to explore pages that the creators wanted to highlight. It also checks that interactive elements on each page really work.
System testing before a site goes live might show that everything is working fine. However, once the site is available to the public, estimates on traffic volumes might prove to be incorrect. No matter how good you are at forecasting, you can never really predict exactly what will happen when a site is visible to search engines and promoted by advertising.
Who needs real user monitoring?
Real user monitoring was created as a method to confirm that elements in a page really work as intended. The metrics gathered by RUM save the complexity of trying to think up every possible combination of actions. This is because once a site is live there are bound to be users that try actions that the website designers hadn’t even thought of.
Websites are designed to attract the public to a product, a cause, or an interest. So, website design is closely tied to marketing strategy. Inevitably, therefore, RUM is also a technique that will interest marketers.
Real user monitoring is one channel of End-User Experience Monitoring (EUEM). The other methodology of EUEM is synthetic monitoring. Synthetic monitoring checks on all of the logistics of delivering a website. Synthetic monitoring assures that the site is available all the time from all points of the globe and that all of the elements on each page load in a timely manner. Synthetic Transaction Monitoring (STM) also tests whether interactive elements work in concert.
There is a lot of overlap between synthetic transaction monitoring and RUM. The main difference between the two disciplines is that STM checks a known combination of actions, whereas RUM quantifies usage and identifies unexpected actions.
Some performance issues won’t be revealed until the website is put under stress by high traffic volumes and unexpected actions reveal coding errors. So, website administrators can also benefit from real user monitoring.
Iterative website design
Real user monitoring is particularly important today in the website creation process because of agile development and the field of user experience (UX).
Agile development focuses on getting a website up and running quickly. Although the owners of the site that commission its development have an aim in mind, the exact way to achieve that aim isn’t always apparent at the start of a project.
Marketers traditionally use market testing and audience surveys when designing a new product or advertising campaign. As websites are now used to sample public opinion on a wide range of subjects, it is not unreasonable to “ask” the public what they think of a website’s design. However, as it is very difficult to get a straight answer out of the average person in the street, the easiest way to check on a design’s suitability is to put something out there and see what the public does with it.
The purpose of agile development is to include market testing in the development process, so feedback on website usage is an essential input to the recursive design phase. Once the overall look and feel of the site are fixed, features can be added. Each addition needs to be tested and adjusted for both performance and attractiveness. The services of RUM are very well suited to this process.
Development acceptance testing
Few companies have an in-house web development team. When a business needs a new website, it hires a specialist consultancy to create the site. This situation means that the website owner doesn’t have staff onsite with competent skills to monitor performance and improve response times.
Integrating RUM as part of the development contract give the commissioning company an opportunity to catch problems with a new site once it is launched. With this aid, the owner of the site can ensure that all problems are fixed before they sign off on the development. Once the web design consultancy walks away, the buyer of their services will have to pay again to get the design team back.
RUM offers a good method to confirm that a website is fit for its purpose and delivers services that are appealing to the target market.
Application performance monitoring
Systems administrators understand the need to monitor applications to ensure that they are delivered to users in a timely manner. A website employs a range of applications, so it seems that monitoring website performance is a complicated task. What’s more, much of the infrastructure behind websites is often in the hands of others. It is common to outsource the hosting of sites and the transmission medium for them is the internet, which is beyond the control of any network manager.
RUM simplifies the application performance monitoring tasks for websites because user access to the site happens all the time, around the clock from every part of the world. Gathering statistics on how a website responds to user action is the obvious solution to the need for application performance monitoring for websites.
RUM is based on the front-end of a website but indicates activity on pages and features. By linking a real user monitor to an application performance monitor, a website manager can identify the underlying infrastructure that supports the site and map performance issues from website features back to supporting services.
Continuing the trace of performance links through server and network performance, a systems administrator can quickly identify the root cause of any changes in performance on the website.
Web application performance improvement
The first step in improving the performance of a website is to register that there is a problem. The next stage is to investigate where that problem arises. With websites, a lack of activity on one page or service is an indication of a problem – remember, website users are not as vocal as in-house staff when it comes to reporting problems.
A website visitor will go elsewhere rather than contact the Help Desk to get a problem fixed. Therefore, problem resolution for websites has a different triggering mechanism than that expected for on-site applications. Unfortunately, the warning signs of a problem is an absence of activity. If systems administrators don’t look for those signs, they could easily ignore major performance issues, assuming that everything is OK.
Combining RUM and synthetic monitoring
RUM can identify the existence of a problem with a site by highlighting parts of a site that are ignored by the general public or consistently appear to be the cause of visitors leaving the site or abandoning the buyer’s journey.
Synthetic monitoring techniques offer tests that can be performed on sites and their services to try to identify the cause of those problems. It is likely that any website manager who is charged with ensuring good website application performance will use both real user monitoring and synthetic monitoring techniques in combination.
RUM can feed directly into synthetic monitoring to provide source data for system tests. A typical visitor’s actions can be recorded and replayed while diagnostic tools are active. This enables a step by step analysis of what actually happened to cause that visitor to leave a site.
RUM initially offers live data, which can pass by too quickly to provide any insights. However, aggregation of actions highlight areas that require further investigation. As a passive monitoring method, RUM isn’t a tool for root caused analysis. However, it is a data-gathering tool and will feed source data into analytical tools.
Real user monitoring establishes regular patterns of user behavior on a website. This is useful information for website designers and marketers who want to add new products or features to a site. With knowledge of the heavy-traffic areas of the website, designers can observe where best to insert links through to new pages in order to attract attention to the new area of the site. Marketers can also note what features on the site interest the general audience the most and understand successful strategies that can be reapplied to other presentations on the site to improve their attractiveness.
Usage statistics also provide a baseline for AI-based machine learning performance assessments. Network managers are familiar with alert-based monitoring tools that send out notifications if a performance threshold is breached. Those thresholds are difficult to set on website activity. However, through RUM data analysis, machine learning modules can establish normal levels and patterns of activity and raise an alarm when those levels drop.
Sudden changes in activity patterns could indicate a problem with access, for example, if a DDoS attack prevents users from connecting to the site. An alert-based system means that website managers don’t have to sit and watch user activity all of the time. They can get on with other tasks and return to the website control panel and monitoring dashboard when notified by the RUM system of changes in usage patterns.
Implementing real user monitoring
The process of real user monitoring is complicated and there is no point in setting up an in-house department to create a RUM platform when there are already many efficient edge service providers that have excellent real user monitoring systems already available.
A RUM provider charges for its services by subscription. Usually, the customer of one of these services takes out a monthly subscription that is a credit for a number of tests. There is a certain amount of information that can easily be gathered in the control panel of a hosting service, such as the number of hits, the number of elements loaded, and the number of visitors per minute/hour/day/week.
RUM data collection is a little more complicated and as the monitoring services are separate from the development consultancy, gathering metrics requires that bits of code need to be inserted into the structure of the site. These bits of code are calls to monitoring functions that are implemented as APIs.
Ironically, these calls are to microservices, which exist on faraway servers. Microservices are often composed of APIs through to other microservices, resident on other servers, which themselves call more microservices running on other servers. The inclusion of RUM processes causes more fetches to be executed, requiring a lot of extra servers to be running at optimum speed. So, implementing RUM can create an impairment in load times for websites.
As a result of RUM delays on response times, you need to be picky about which RUM platform you opt for. Fortunately, the best RUM services offer free trial periods, so you can test the effects that each has on the response times of your sites without paying out. You can find out more about real user monitoring services in TheBest Real User Monitoring Tools & Services.
Integrating real user monitoring
Real user monitoring is the missing piece in the interconnected monitoring landscape that all IT systems require in order to ensure business success. The services of RUM can feed through data to other monitoring and management systems to keep the full system stack finely tuned and ensure that websites are successful.
Combine real user monitoring data gathering with synthetic monitoring tests, application performance monitoring, and server and network monitoring. Real user monitoring is not a complete monitoring tool that can be implemented in isolation. It makes a contribution to full performance assurance for websites.