Performance Monitoring

RUM vs Lab Data: Which Performance Metrics Should You Trust?

RUM vs lab data: understand when to trust each, how they differ, and how to reconcile gaps between synthetic test results and real user experience data.

AzMonitor TeamNovember 10, 20257 min read · 975 wordsUpdated January 20, 2026
RUMlab dataperformance metricsCore Web Vitalssynthetic monitoring

Your Lighthouse score is 95, but your Google Search Console shows 40% of URLs have "Poor" Core Web Vitals. Your WebPageTest LCP is 1.8 seconds, but real users in your analytics are bouncing at higher rates than expected. This disconnect between lab data and real user monitoring (RUM) data is one of the most confusing aspects of web performance — and it has important implications for how you optimize.

What Lab Data Actually Measures

Lab data (also called synthetic data) is collected in a controlled environment using specific tools:

  • Lighthouse: Runs in a controlled Chrome instance with throttled CPU (4x) and network (Slow 4G)
  • WebPageTest: Tests from specific locations with configurable network/CPU profiles
  • AzMonitor performance checks: Similar controlled environment testing

What lab data tells you:

  • Performance under specific, reproducible conditions
  • Impact of code changes (before/after comparisons)
  • Performance from specific geographic locations and network conditions
  • Absolute compliance with performance budgets

What lab data misses:

  • Performance on real user devices (range from low-end phones to high-end laptops)
  • Performance under real network conditions (user is on weak 4G, not simulated slow 4G)
  • Impact of user behavior (users on slower machines using heavier interactions)
  • Browser extensions and their performance impact
  • Cache state (real users might have partially cached resources)

What RUM Data Actually Measures

Real user monitoring (RUM) captures performance data from actual users as they experience your site:

  • Data comes from the Chrome User Experience Report (CrUX) — aggregated from Chrome users who have opted in
  • Or from your own RUM implementation (web-vitals library in your application)

What RUM data tells you:

  • Actual user experience across the full diversity of devices, networks, and browsers
  • Performance distribution across different user segments
  • Geographic performance variation based on where your users actually are
  • The data that Google uses for search ranking (CrUX/field data)
  • Business impact correlation (which performance levels lead to higher conversion)

What RUM data misses:

  • Exact causation (you know performance is poor but not necessarily why)
  • Pre-launch testing (you need actual traffic to collect RUM)
  • Reproducible test conditions for optimization verification

Why They Disagree

The gap between lab data and RUM is normal — but understanding why helps you interpret both correctly.

Device diversity: Your Lighthouse test runs on a controlled environment simulating a "mid-tier" mobile device. Your real users include people on low-end phones from 2019 and people on high-end M4 MacBook Pros. The distribution of device capabilities in your user base determines whether lab data overestimates or underestimates real performance.

For a SaaS product serving enterprise users primarily in developed markets, lab data might underestimate actual performance (many enterprise users have powerful devices). For a consumer app targeting emerging markets, lab data might significantly overestimate real performance.

Network conditions: Lighthouse simulates "Slow 4G" (1.6 Mbps down, 150ms RTT). Real users have networks ranging from fast fiber to marginal 3G in a building basement. Median mobile network conditions vary enormously by market.

Geographic mismatch: You test from the US, your users are 40% in Europe. Your US lab test shows 1.5s LCP; European users on your real infrastructure (without APAC CDN coverage) experience 3.2s LCP.

Browser and extension differences: Lighthouse runs in a clean Chrome instance with no extensions. Real users have ad blockers, password managers, accessibility tools, and other extensions that affect performance. Some extensions can improve performance (ad blockers removing third-party scripts); others can worsen it.

Reconciling the Gap

When lab data and RUM significantly disagree, investigate:

1. Check geographic distribution If your lab tests run from US-East and 50% of your users are in Asia-Pacific, run lab tests from APAC locations too:

# AzMonitor: Test from multiple locations to match user geography
performance_check:
  url: https://yoursite.com
  locations: [us-east, eu-west, ap-southeast, ap-south]

2. Check device category in your RUM Segment RUM data by device type:

// Segment performance data by device
onLCP(({ value }) => {
  const deviceType = navigator.hardwareConcurrency <= 2 ? 'low-end' :
                     navigator.hardwareConcurrency <= 4 ? 'mid-range' : 'high-end';
  
  sendMetric({ name: 'lcp', value, deviceType });
});

3. Look at percentile distribution Lab data gives you one number. RUM gives you a distribution:

  • P50 LCP in RUM: 1.8s (good, your lab score is accurate for typical users)
  • P75 LCP in RUM: 3.2s (this is what Google uses for ranking)
  • P95 LCP in RUM: 6.5s (5% of users have very poor experience)

4. Check for third-party script impact Lab data runs in a controlled environment that may not load some third-party scripts that your real users load (A/B testing tools, personalization engines, ad networks).

Which Data to Trust for What Purpose

| Decision | Use Lab Data | Use RUM Data | |---------|-------------|-------------| | Regression detection (code changes) | Yes | No (too noisy) | | Google search ranking impact | No | Yes (CrUX) | | Optimization prioritization | Both | Both | | Performance budgets (CI/CD) | Yes | No | | User experience research | No | Yes | | Business impact analysis | No | Yes |

The Complementary Strategy

The answer to "which should you trust?" is "both, for different purposes."

Lab data (AzMonitor + Lighthouse): Your regression detection system. When you deploy, does lab performance improve or worsen? This is fast, reproducible, and not affected by traffic volume or user behavior.

RUM data (web-vitals + analytics): Your user experience truth. What do actual users experience? This data drives SEO decisions, business impact analysis, and understanding which user segments are underserved.

Use lab data to detect and diagnose problems. Use RUM data to prioritize which problems matter most to real users.

Set up lab performance monitoring with AzMonitor as your regression detection system. Pair it with RUM data from the web-vitals library for complete performance visibility.

Tags:RUMlab dataperformance metricsCore Web Vitalssynthetic monitoring
Back to blog
A
AzMonitor Team
The AzMonitor team writes guides based on experience monitoring millions of endpoints daily across 10,000+ customer environments. Our expertise covers uptime monitoring, SRE practices, and reliability engineering.
Try AzMonitor free

3 monitors free forever · No credit card needed · Set up in 2 minutes

Start monitoring free →