Buy Template - 59$

Real User Monitoring: Measure What Actually Matters

Lab tests tell you what could happen. RUM tells you what is happening — to real users, on real devices, right now.

James Okafor

Performance Engineer

The Lab vs. Reality Gap

You run Lighthouse on your laptop. Score: 94. Your users in Southeast Asia on mid-range Android devices on 4G connections are having a completely different experience.

Lab tools — Lighthouse, WebPageTest, Chrome DevTools — are invaluable for debugging. But they measure a controlled environment. Real User Monitoring (RUM) measures the actual distribution of experiences across your real audience.

The gap between the two can be enormous. A site that scores well in the lab can still have a p75 LCP of 4+ seconds in the field.

What RUM Captures

RUM instruments the browser's Performance API and sends timing data back to your analytics. At minimum, you want to capture:

  • Core Web Vitals — LCP, CLS, INP

  • Navigation timing — DNS, TCP, TTFB, DOM complete

  • Resource timing — per-asset load times and sizes

  • User context — device type, connection type, geography

  • Error rates — JS exceptions correlated with performance

The Percentile Problem

Never optimize for averages. A mean LCP of 2.1 seconds sounds good, but if your p95 is 8 seconds, you have a serious problem affecting 5% of your users.

Google's Core Web Vitals thresholds are set at the 75th percentile. That means you need 75% of your users to have a good experience, not just the average user. Always look at p75 and p95 in your RUM data.

Setting Up RUM

Several options exist depending on your scale and needs:

  • Google Search Console — free CrUX data, limited segmentation

  • Vercel Speed Insights — automatic for Vercel deployments

  • SpeedCurve / Calibre — dedicated performance monitoring platforms

  • Custom implementation — use the web-vitals JS library and send to your own analytics

For most teams, starting with the web-vitals library and sending events to your existing analytics platform is the right first step. It costs nothing and gives you real field data within hours.

Turning Data Into Action

RUM data is only useful if it drives decisions. Set up a weekly performance review with three questions:

  1. Did any metrics regress this week?

  2. What did we ship that might have caused it?

  3. Which user segments are experiencing the worst performance?

Correlate performance with business metrics. A 500ms improvement in LCP should show up as a measurable improvement in conversion rate or bounce rate within weeks. If it doesn't, you're measuring the wrong thing.

Create a free website with Framer, the website builder loved by startups, designers and agencies.