Home › Core Web Vitals monitoring
Guide · RUM

Core Web Vitals monitoringBETA

A Lighthouse score from your laptop is a lab test. What actually affects users — and increasingly rankings — is how the page performs on real devices and networks. MOJAQ Real-User Monitoring reports LCP, INP and CLS at p75 from your actual visitors, cookieless and EU-stored, with JavaScript errors captured from the same browsers.

EU-hosted in Helsinki · GDPR-native · free during the private beta

LCP, INP and CLS, in plain terms

MetricWhat it measures
LCP — Largest Contentful PaintLoading: how long until the main content of the page is visible. Slow LCP is the classic "it feels sluggish".
INP — Interaction to Next PaintResponsiveness: how quickly the page reacts after a tap or click across the whole visit.
CLS — Cumulative Layout ShiftStability: how much the layout jumps around while loading. High CLS is the "I tapped the wrong thing" problem.

MOJAQ reports each at the 75th percentile, so you see the experience of your slower quarter of visits — the ones that actually hurt — rather than a flattering average.

Field data vs lab data

Lab tools run a synthetic page load in a controlled environment. They are great for reproducible before-and-after checks in CI, but they are one machine on one connection — not your audience. Field data, which is what real-user monitoring collects, comes from the devices and networks your visitors actually use: the mid-range phone on a train, the office laptop, the far-away region. When the two disagree, field data is the one that reflects reality, and it is the data Google's Core Web Vitals program is built on.

One snippet, no SDK

Installing MOJAQ RUM is a single small snippet you copy from your dashboard — no framework integration, no build step. The snippet observes Core Web Vitals in the browser and sends a beacon, and it captures JavaScript errors from the same page, so a performance regression and the exception behind it show up together. The dashboard hands you the complete, ready-to-paste version; the fragment below just shows the shape of the technique.

<!-- illustrative fragment — copy the complete RUM snippet from your dashboard -->
<script>
new PerformanceObserver(function(list){list.getEntries().forEach(function(entry){
  navigator.sendBeacon(MOJAQ_RUM_URL,   // the ingest URL is part of your dashboard snippet
    JSON.stringify({metric:"LCP",value:entry.startTime,page:location.pathname}));
})}).observe({type:"largest-contentful-paint",buffered:true});
// the complete snippet also captures INP, CLS and JavaScript errors
</script>

The dashboard then breaks LCP, INP and CLS down per page, so you can see which templates are dragging and fix the ones that matter.

Get started

Create a free account, add the RUM snippet from your dashboard to your site, and let real traffic populate the vitals. Watch the per-page p75 breakdown, fix your worst LCP and CLS offenders first, and use the JS-error capture to catch the runtime failures that synthetic tests never see. RUM is in beta, so tell us what you would like it to show next.

Questions

What are LCP, INP and CLS?

They are Google's Core Web Vitals. LCP measures loading — when the main content appears. INP measures responsiveness — how quickly the page reacts to input. CLS measures visual stability — how much the layout shifts unexpectedly. MOJAQ reports each at p75.

What is the difference between field and lab data?

Lab data comes from a synthetic test in a controlled environment; it is repeatable but not your real audience. Field data, or real-user monitoring, comes from actual visitors on their real devices and networks. Both are useful; field data is what reflects the experience users actually have.

How do I install MOJAQ RUM?

Add one small snippet that sends a beacon; there is no SDK. It reports Core Web Vitals at p75 per page and captures JavaScript errors from the same browsers. MOJAQ RUM is currently in beta.

Is RUM cookieless too?

Yes. The RUM snippet is cookieless, in keeping with the rest of MOJAQ analytics, and the data is stored in the EU.

See your Core Web Vitals from real users

LCP, INP and CLS at p75, per page, cookieless and EU-stored — with JS errors alongside. Free while we are in beta.

Request beta access →