Why Webperf Cloud and PageSpeed Insights scores don't match
Run the same page through PageSpeed Insights (PSI) and through Webperf Cloud, and you'll often get two different performance scores. PSI says 78, Webperf Cloud says 91, or the other way around. The instinct is to assume one of them is wrong.
Neither is. Both tools run Lighthouse. The same open-source engine, the same audits, the same 0–100 scale. But they run it in different places, on different hardware, under different network conditions. A performance score is not an absolute property of your page. It's a measurement, and every measurement carries the fingerprint of where and how it was taken. Change the conditions and you change the number, even though the page is byte-for-byte identical.
This post is about why the two disagree, how much disagreement is normal, and when to trust which one. The short version is that you should expect a gap, avoid chasing it, and read each tool for what it's actually good at.
Both tools are Lighthouse wearing different coats.
- PageSpeed Insights runs Lighthouse on Google's own servers. You give it a URL, Google fetches and renders the page from its infrastructure, and scores it. It also looks up whether that URL has enough real-world data to show field metrics from the Chrome UX Report (CrUX), which is the part people forget. One box, one score, sometimes a second panel of real-user numbers underneath.
- Webperf Cloud runs Lighthouse too, but on our controlled testing environment, under conditions we hold fixed on purpose. The same emulated device, the same throttling, the same cold start, every single time. It does this not for one page but for up to thousands of pages on your site.
So both start from the same engine. The scores diverge because everything around the engine is different.
Why the scores differ
Several things move the number between the two tools. None of them is a bug in either one.
Server location comes first. PSI routes your test through a Google data centre, and the path from that data centre to your origin server is not the path from your machine to your origin. That round trip can add hundreds of milliseconds to Time to First Byte, which flows straight into Largest Contentful Paint. A server in one region testing an origin in another can look meaningfully slower than the same page measured closer to home. Webperf Cloud holds this pretty much constant across your whole site, so pages are comparable to each other. It won't necessarily match Google's geography.
The throttling method matters too. Lighthouse can slow the network and CPU down to simulate a mid-tier phone on a slow connection in two ways. Simulated throttling runs the test fast, then mathematically models what a slow connection would have done. Applied throttling actually throttles the real connection. The two methods don't produce identical numbers, and small differences here ripple through every timing-based metric. Two tools making different throttling choices will report different scores for the same page.
Then there's the hardware itself. Lighthouse emulates a slower CPU by applying a multiplier to whatever machine it's running on. But a 4× slowdown on Google's server hardware is not a 4× slowdown on ours. The baseline is different, so the emulated result is different. Total Blocking Time and anything main-thread-bound is especially sensitive to this. Same page, same multiplier, different underlying silicon, different score.
Both tools also test with a cold cache, every time. No warm cache, no service worker priming, first-visit conditions. That's a deliberate, sensible choice, and Webperf Cloud does the same as PSI for consistency. But it's worth naming, because it explains why any lab tool can look worse than your own browser, where the second load is riding a warm cache. The lab measures the worst realistic case on purpose.
Finally, there's run-to-run variance. Even PSI against itself isn't perfectly repeatable. Run it three times and a few points of wobble is normal. Lab measurement has inherent noise. So part of any gap you see between two tools is simply two samples from two slightly noisy processes, not a systematic disagreement about your page.
Add these up and a 10–15 point difference between Webperf Cloud and PSI is unremarkable. It's the expected consequence of two honest measurements taken under different conditions, not a sign that one tool is broken or that your page changed.
Lab data vs field data
Underneath the score gap is a deeper split, and it's the one worth actually internalising. Lab data and field data answer different questions.
- Lab data is a synthetic test. One controlled run, one emulated device, one fixed network. A clean, repeatable measurement of how your page performs on the test bench. Its strength is that repeatability. When the number changes, it changed because your page changed, not because the internet had a bad day. This is what both Webperf Cloud's Lighthouse scores and PSI's "Lighthouse / lab" panel give you. It's ideal for catching regressions and comparing pages fairly.
- Field data is the opposite. CrUX aggregates measurements from real Chrome users, on their actual phones and their actual networks, over a rolling 28-day window, reported at the 75th percentile. It doesn't tell you how your page can perform under ideal conditions. It tells you how it actually did for the people who visited. This is what PSI shows in its top panel when a URL has enough traffic, and what Webperf Cloud pulls in per device where it's available.
A page can score 95 in the lab and still deliver a poor experience in the field, because real users on mid-range phones over mobile networks are harsher than any controlled test. That's not a contradiction. The two numbers measure different things, which is why both kinds of data exist and why neither tool's lab score is the final word.
One Core Web Vital sharpens all of this. Interaction to Next Paint (INP) measures responsiveness to real user input, such as taps, clicks and key presses. Lighthouse, in either tool, cannot measure INP. There's no user in a lab run to interact with the page. Lighthouse uses Total Blocking Time as a lab proxy, but TBT only captures main-thread blocking during initial load. It can't see the sluggish menu, the janky filter, or the form that lags on the fortieth field. The only way to see your real INP is field data. So when INP is your concern, read the CrUX panel, in PSI or in Webperf Cloud. The lab score simply can't answer the question.
When to use which
The two tools complement each other.
Reach for PageSpeed Insights when you want a fast, authoritative spot-check on a single important URL, such as the homepage, a hero campaign page or a key product page, straight from Google, with that URL's field data if it has enough traffic. It's the quickest way to get Google's own read on one page.
Reach for Webperf Cloud when one page isn't the question. Its job is the whole site. Every page scored under identical conditions so they're genuinely comparable, the full distribution rather than a single number, and a count of how many pages each issue affects, so a template fix that improves nine hundred pages is visible as exactly that. Checking PSI by hand, page by page, across a two-thousand-page site is a week of copy-pasting URLs. Webperf Cloud is the run that does it once and hands you the pages to fix, ranked. It also layers on the privacy and GDPR checks that PSI doesn't attempt at all, covering cookies, third parties and TLS.
Most teams want both. PSI to sanity-check a headline URL against Google directly, and Webperf Cloud to see the site as a whole and know which pages, and what on them, to open first.
What to take away
- Both tools run Lighthouse, so people expect matching scores and are surprised when they don't get them.
- The scores differ because the conditions differ. Server location, throttling method, CPU baseline, cold cache and ordinary run-to-run noise all play a part. A 10–15 point gap is normal.
- Don't chase the gap. Pick one lab tool as your baseline for tracking change over time, and read the number in relative terms. Is this page better than last month, or better than that other page? Don't treat it as an absolute you must reconcile across tools.
- Lab and field data answer different questions. Lab tells you how a page can perform and is perfect for catching regressions. Field data (CrUX) tells you how it did for real visitors, and INP only exists in the field. Webperf Cloud gives you both, side by side, on every page it can.
Whether Webperf Cloud and PSI agree matters far less than whether your pages are getting faster over time, and whether real visitors, in the field, are feeling it.
Want to see the whole-site version, with every page scored, the distribution, the field data, and the exact pages to fix first? See Introducing Webperf Cloud, the plans, or drop us a line at hello@webperf.cloud.