Lighthouse lies: what a Shopify performance score does and doesn't tell you
Keith Pillay · 26 September 2026 · 3 min read
I've lifted Lighthouse performance scores from the 60s into the 90s on dozens of Shopify stores. I'm proud of that work, and I also want to be clear about what a Lighthouse score is, because it gets misused constantly.
What Lighthouse actually is
Lighthouse is a lab test. It loads one page, once, on a simulated device and network, and reports how it did. That's useful because it's controlled and repeatable.
But "controlled" is also the limitation. Your customers don't browse on a simulated mid-range phone over a fixed throttled connection, with an empty cache, on a single page.
Where the score misleads
It's one page. The home page can score 95 while the collection page and the product page, where people actually decide to buy, score 55.
It varies run to run. The same URL tested twice can give different scores. A move of a few points is often noise. Never celebrate or panic over a single run.
It's a weighted blend. The score combines several metrics with weights that have changed between Lighthouse versions. Two stores with the same score can be slow for different reasons, and the same store's score can shift when the tool updates, without anything changing on the site.
It can be gamed. Delay scripts until the first user interaction, and some lab metrics improve while the real experience gets worse, because the page is "fast" until you touch it and then everything loads at once.
It ignores what happens after load. Interaction responsiveness, layout that jumps around as late apps inject content, and slow add-to-cart responses are all things customers feel and a single load test barely sees.
What I look at instead
Real-user data, when there is enough traffic. Field data from real visits, such as the Chrome UX Report data shown in PageSpeed Insights, reflects actual devices and networks. If a store has the traffic, that beats any lab number.
The three Core Web Vitals, as separate questions rather than one score:
- Loading: how fast does the main content appear (Largest Contentful Paint)?
- Interactivity: how quickly does the page respond when someone taps (Interaction to Next Paint)?
- Stability: does the layout jump while loading (Cumulative Layout Shift)?
The templates that matter. Product pages, collection pages and the cart, not just the home page.
A throttled, mobile profile, because most Shopify traffic is on phones.
The waterfall. The network panel tells you why something is slow. A score only says that it is.
How I use the score honestly
- As a before-and-after on the same page, same settings, several runs, so I can see whether a change helped.
- As a regression alarm in a checklist before launching a store.
- Never as the whole story, and never quoted without saying what was measured.
What to tell a client
If a client asks for "a 90+ score", I translate it: what are you actually trying to improve? Usually it's faster product pages on mobile, fewer abandoned carts, or better search visibility. Those are the goals. A high score may or may not be the route to them.
When I report a result I give the page, the device profile, the number of runs and the metric, along with the score. "Product page, mobile, median of five runs, LCP improved from X to Y" is a claim someone can check. "Score went up" isn't.
The summary
Lighthouse is a good instrument and a bad judge. Use it to find and verify fixes. Judge the store on real-user data and on whether customers can find, trust and buy.
For the practical checklist I run first, see Seven things I check first when a Shopify theme is slow.
