What Is Real User Monitoring (RUM)? RUM vs Synthetic Testing
Real user monitoring measures performance as actual visitors experience it. Learn what RUM collects, how it differs from synthetic testing and Lighthouse, and when you need each.
Short answer: real user monitoring, or RUM, collects performance measurements from the browsers of actual visitors as they use your site. Synthetic testing runs a scripted visit from a controlled machine. RUM tells you what users really experience; synthetic tells you whether something changed under fixed conditions.
Table of Contents
- What RUM Collects
- RUM vs Synthetic Testing
- Why Lab Scores and Reality Differ
- How to Read RUM Data
- When You Need Each
- RUM in DeepSync
- Key Takeaways
What RUM Collects
A small script uses the browser's performance interfaces to record, for each visit:
- Core Web Vitals: LCP (loading), CLS (layout stability), INP (responsiveness)
- Navigation timing: how long the server took, when the page became usable
- Resource timing: how long each image, script, and font took
- Context: device, browser, connection type, country, page
Because it runs for every visitor, RUM captures the full range of real conditions.
RUM vs Synthetic Testing
| RUM (field data) | Synthetic (lab data) | |
|---|---|---|
| Source | Real visitors | A scripted test |
| Conditions | Whatever visitors have | Fixed device and network |
| Coverage | Pages people actually visit | Pages you choose to test |
| Before launch | Not possible | Possible |
| Repeatable | No | Yes |
| Interaction metrics | Real (INP) | Approximated |
| Finds | What users experience | What changed between runs |
Lighthouse and similar audits are synthetic. They are valuable, and they are not a measurement of your users.
Why Lab Scores and Reality Differ
A lab test runs on one device profile, one network speed, with an empty cache and no logged-in state. Your visitors have:
- Phones across a wide range of processing power
- Mobile networks that vary by the minute
- Browser extensions
- Logged-in pages with more data and more scripts
- Consent banners, chat widgets, and personalisation
DeepSync's docs make the point directly: a lab score from a fast machine on fibre tells you very little about a visitor on a mid-range phone. It is common for a page to pass in the lab and fail in the field.
How to Read RUM Data
- Use percentiles, not averages. The 75th percentile is the standard for Core Web Vitals. An average hides the slow tail where people give up.
- Segment by device. Mobile is nearly always worse.
- Segment by page type. Product pages, checkout, and landing pages behave differently.
- Segment by country and connection if you serve several regions.
- Watch trends after releases. A step change on a release date is a regression.
- Weight by traffic. A slow page nobody visits matters less than a slightly slow page everyone visits.
Start with the pages that earn money
Rank pages by traffic times slowness, then filter to the conversion path. That list is your performance backlog.
When You Need Each
| Need | Use |
|---|---|
| Know what customers experience | RUM |
| Catch a regression before release | Synthetic, in your build pipeline |
| Find which pages to fix first | RUM |
| Debug why one page is slow | Synthetic, then confirm in RUM |
| Check availability every minute | Synthetic |
| Prove a fix worked for real users | RUM |
Mature teams use both: synthetic tests guard the door, and RUM reports the truth.
RUM in DeepSync
On Pro and above, the SDK captures web vitals and resource timing from real visitor sessions (performance docs). The Performance section shows:
- Your Core Web Vitals distribution (LCP, CLS, INP)
- A ranked list of your slowest pages
- Your slowest individual resources, so a regression can be traced to what shipped
Because the same script records sessions, performance is joined to behavior. From a slow page you can open the recordings and see what waiting looked like for the visitor, and whether they left.
Key Takeaways
- RUM measures real visits; synthetic tests measure scripted ones.
- Lab scores often look better than field results.
- Read RUM at the 75th percentile, segmented by device and page.
- Use synthetic to prevent regressions and RUM to prioritise and verify.
Conclusion
A performance score is a prediction. Real user monitoring is the result. Make decisions on the result.
Frequently Asked Questions
Related articles
Stay in the loop
Get the latest insights on product analytics and user behavior delivered to your inbox.



