Lighthouse 100 doesn't mean your site is good
I spent a month optimizing a clinic website. Images compressed. Code splitting. Deferred JavaScript. Minified CSS. Result? Lighthouse 100. I was happy. Reminded my client that the site was now super fast.
Week later, patient complains that the clinic website is freezing when trying to book an appointment. Patient was on 3G on their 2019 iPhone. My Lighthouse 100 meant nothing in the real world.
Lab data vs field data
Lighthouse ran on an M2 Macbook with 100Mbps connection. The patient had a slow iPhone, flaky connection. That environmental difference is huge.
Lab data is what Lighthouse measures: your site running on powerful machine with good connection. Field data is what CrUX (Chrome User Experience Report) measures: your real users using the site.
CrUX collects real data. Millions of page views. Dozens of different devices. 4G, 3G, WiFi networks. Data that matters because it comes from people actually using your site.
I see sites with Lighthouse 100 and CrUX red. Means the lab test doesn’t reflect reality. Your site is fast on a powerful machine but slow on phones most people use.
Metrics that matter
Core Web Vitals is what Google prioritizes. Three metrics:
LCP (Largest Contentful Paint): how long until the largest content on the page appears. Ideal is less than 2.5 seconds. Your site loads a big photo of the dentist? LCP is the time for the photo to show.
FID (First Input Delay): how long it takes the page to respond to the user’s first click. Ideal is less than 100ms. You click the booking button and nothing happens for five seconds? Bad.
CLS (Cumulative Layout Shift): how much the page moves while loading. You read text, suddenly an ad appears and pushes everything down? That’s bad for UX.
Lighthouse measures all this, but in a controlled environment. CrUX shows what’s actually happening.
Sites with 100 that are slow
I tested a large site. Lighthouse 100. Core Web Vitals on CrUX? 50% of users have bad experience.
Why? Lighthouse evaluates in black and white, laboratory. Doesn’t account for:
Some slow third-party JavaScript running in the background. Lighthouse doesn’t execute anything beyond basics.
User on 3G. Your site is fast on 4G. On 3G it becomes a snail.
Phone with weak CPU. JavaScript parsing takes 10x longer on a USD 150 Android than a USD 1000 iPhone.
User with browser add-ons that slow down site. Lighthouse runs with nothing.
Sites with 85 that convert better
I worked with a clinic that optimized their site to Lighthouse 100. But in the process removed many images. Site became “fast” but ugly. Conversion dropped.
After we restored images (optimized but present), Lighthouse went to 89, but conversion went up 25%.
That’s the truth: best metric is conversion. Site that converts more is better site. If you have Lighthouse 100 but nobody books an appointment, the problem is yours.
Another clinic has Lighthouse 85 and CrUX green. Conversion is high. Why? Because the site is fast where it matters: on initial load. Once it loads, users don’t care.
What really matters
Perceived speed. User sees something happening? Already better than blank screen for five seconds. You can have LCP of three seconds if the user sees something from the beginning.
Fast conversion flow. User takes action? Page responds fast. Booking button clicks and goes to form in 100ms? Perfect. Lighthouse or not.
Accessibility. Fast site but inaccessible is bad site. People with visual, motor, hearing disabilities also need to use your site.
Overall experience. Progressively your site gets better as JavaScript loads. User can already read content while the rest loads.
How to use Lighthouse correctly
Lighthouse is a tool, not a goal. Use it to debug problems. “Your site is slow? I ran Lighthouse and found that image isn’t optimized.”
Don’t optimize for Lighthouse. Optimize for your users.
Use CrUX as source of truth. If your field data looks good, Lighthouse matters less. If it’s bad, Lighthouse will help identify why.
Test on a real phone. Best metric is opening your site on a four-year-old phone with 3G and seeing if it works. If it works fast there, it works fast for 99% of people.
Step by step
I took the clinic site with Lighthouse 100 and CrUX red. Tested on iPhone 11 with 3G. It was really slow. Problem? JavaScript was running continuously even after the page loaded.
Added aggressive lazy loading. Removed animations that weren’t essential. Result: Lighthouse 92, CrUX green. Conversion went up.
Lesson is simple: Lighthouse is diagnosis, not prognosis. Use it to find problems, not to sleep peacefully.
- Check your Core Web Vitals on CrUX
- Test your site on 3G on a four-year-old phone
- Identify which metric is red (LCP, FID, CLS)
- Don’t worry about reaching Lighthouse 100
- Focus on conversion, not score
- If CrUX is good, you’re good
Perfect Lighthouse that doesn’t convert is just a pretty number.
Difference between metric and reality
Lighthouse is controlled lab. Standard machine, standard connection, no interference.
CrUX is reality. Users with:
- Weak CPU (USD 150 Android, iPhone 11)
- Flaky 3G connection
- Browser extensions that slow things down
- Open tabs consuming memory
- Low battery
CrUX measures your real user’s experience in real conditions. Not in Lab.
Site can have Lighthouse 100 but CrUX bad. Means it’s fast on your computer, but slow on real ones.
Fake metrics you can optimize
FCP (First Contentful Paint) is old metric. Being replaced by LCP. If you optimize FCP, might be wasting time.
TBT (Total Blocking Time) decreases when you remove animations. But site might look boring without them.
Lighthouse measures “Total Blocking Time” in five-second window. Your site might freeze for six seconds that never appears on test.
Optimizations that break conversion
Image compression: compress too much, image looks bad, conversion drops.
Aggressive minification: JavaScript becomes unreadable in production, debugging becomes hell.
Lazy load everything: element user clicks in first second gets slow because it’s lazy loading.
Remove animations: site has no visual feedback, user thinks it’s frozen.
Challenge is optimizing without breaking experience.
How to use Lighthouse correctly anyway
Run Lighthouse as diagnosis, not as goal.
- Test your site on 3G on iPhone 6
- If it works there, works for 95% of people
- If not, Lighthouse will help identify why
CrUX is your true north. If green, you’re good. If red, real problem.
Practical example: when to optimize
Clinic complained site “loads slow”. Ran Lighthouse: 87. Ran CrUX: 70% of users with LCP over 2.5s.
Ran on real iPhone with 3G. Really was slow. Problem? 200KB CSS that wasn’t necessary.
Removed unnecessary CSS. Lighthouse went to 92. CrUX went green.
Conversion went up because site really loaded faster.
Another case: site with Lighthouse 95. CrUX green. Conversion was high.
Client wanted to optimize more. Started removing features to get faster. Lighthouse hit 98. Conversion dropped.
Put it all back. Lighthouse dropped to 92. Conversion went back up.
Message: don’t optimize for metric. Optimize for your user.
Read also: Core Web Vitals in 2026 | Why your website loads slowly | Image optimization for web