What does Lighthouse measure?
Largest Contentful Paint (LCP) — when the largest element appears; Google considers under 2.5 seconds good. Cumulative Layout Shift (CLS) — how much elements “jump” while loading; good is under 0.1. Total Blocking Time — how long scripts block the page; its field counterpart is INP, with a 200 ms threshold. First Contentful Paint — the first text or image.
The score is weighted: LCP and CLS are 25% each, blocking 30%, first paint 10%, Speed Index 10%. So one heavy script or one jumping headline can push an otherwise fast page below 90.
Why does it matter for a business?
Speed has been part of Google's ranking for years and the Core Web Vitals thresholds are public. More important is how people behave: a slow site on a phone gets closed before it loads, and the advertising money goes nowhere.
That is why we measure instead of assuming. Every demo in the portfolio carries a lab score for phone and desktop — the median of three runs in the same Chromium and with the same curves Lighthouse uses.
What do we do to get a site to 95+?
Five things. Static HTML without heavy frameworks — the page is ready straight from the server. WebP images with exact dimensions and lazy loading, so nothing jumps. Fonts hosted by us with font-display: optional and preload — text is not redrawn when the font arrives. Scripts with defer and no external libraries. Nginx with compression and long caching for everything that does not change.
The last thing is discipline: we measure before every deploy and do not ship a page that has dropped below the threshold.
Are the lab score and real users the same thing?
No. The lab score is a measurement in a controlled environment (emulated phone, throttled network). Field data (CrUX) comes from real Chrome users over 28 days and exists only once the site is live and has traffic.
The lab number is the early warning; the field number is the verdict. A good site passes both, and we tell you which of the two you are looking at.





