Blog

Getting 100 on PageSpeed Insights ruined my personality

6 min read pagespeed lighthouse web performance webp humor frontend

Getting 100 on PageSpeed Insights ruined my personality

It started innocently. It always starts innocently.

A client mentioned their website felt "a bit slow." Not broken. Not unusable. Just, you know, a bit slow. The way a person might mention that the office coffee is a bit weak. A throwaway comment. A nothing comment. A comment that should have been acknowledged with a small nod and immediately forgotten.

Instead, I opened Lighthouse.

The First Score

It was a 34.

I want you to understand what a 34 does to a certain kind of person. A 34 is not just a number. A 34 is a moral failing. A 34 means that somewhere, somehow, someone let a 4.2MB unoptimized hero image go to production and nobody said a word. A 34 means render-blocking scripts loaded in the wrong order, a font that imports another font that imports three more fonts, and a jQuery plugin last updated in 2014 that exists on the page for reasons nobody alive can explain.

A 34 is a crime scene. And I was now the detective.

I fixed the images first. Then the scripts. Then the CSS. Then I discovered what a content delivery network was and spent a weekend that I will not be getting back configuring one for a website that gets four hundred visitors a month. I added lazy loading. I inlined the critical CSS. I removed the jQuery plugin and refactored the three things it was doing into forty lines of vanilla JavaScript that I am unreasonably proud of.

I ran Lighthouse again.

It was a 97.

Three points. Three points stood between me and perfection. I did not sleep that night. Not really.

The 100

It took eleven more days.

The culprit, in the end, was a third-party chat widget that the client had insisted on keeping. It was injecting scripts at the wrong moment, blocking the main thread for a few hundred milliseconds, laughing at me. I found a way to defer it, to load it only after the user interacted with the page, to make it technically present without technically existing at load time.

It was the kind of solution that takes three hours to implement and thirty seconds to explain and that you will never, ever be able to justify billing for.

But the score was 100.

All four categories. Performance, Accessibility, Best Practices, SEO. Four green circles. One hundred each. I took a screenshot. I took several screenshots. I set one as my desktop background. I still have it. I am not going to tell you for how long I had it.

I sent the screenshot to the client. They replied "great thanks" and then asked if I could make the logo a bit bigger.

What Happened Next

Here is what nobody warns you about. Once you get 100, you cannot unsee the world that existed before 100. It is like getting prescription glasses for the first time and then being unable to look at old photos without noticing how blurry everything was. Except the blurry things are every website you visit for the rest of your life and you cannot stop yourself from opening DevTools.

I started checking other people's websites. Casually at first. Just a quick Lighthouse audit on a restaurant I was looking up. Then a local shop. Then the website of a company I was thinking of buying something from. Then the websites of people I personally knew.

My friend had a 41. I did not tell him. But I knew. I always knew.

I became the person at dinner who says things like "their homepage has a 3.2 second LCP, which honestly explains a lot about them as a company." I became the person who sees a beautiful, lush full-screen video background on a marketing website and feels something close to grief. I became the person who, upon loading any webpage on a slow connection, nods slowly and says "render-blocking resources" like a doctor delivering a diagnosis they have given many times before.

My partner asked me to stop auditing websites while we were watching television. I said I would. I opened my phone.

The Images

The images are the worst part. The images are where it became a genuine problem.

I cannot look at an unoptimized image anymore. I see a JPEG on a webpage and I want to know its dimensions, its actual rendered size, whether it has been properly compressed, whether it could be a WebP, whether a WebP would save 34% in this specific case and if so why, why, why has nobody done this yet.

I went to a photographer's portfolio website. It was stunning. Beautiful work, gorgeous layout, clearly a talented human being. The images were uncompressed TIFFs being served directly from what appeared to be a Squarespace default hosting tier.

I spent more time thinking about that photographer's asset pipeline than about the actual photographs.

The photographs were of mountains.

The Relapse Cycle

You fix one site and you feel good for about a week. Then a new project arrives with a fresh Lighthouse score in the sixties and you feel the familiar mix of horror and excitement that is, I have come to understand, the specific emotional cocktail of a person who has given too much of themselves to web performance metrics.

You fix it. You get the 100. You take the screenshot. The client says "great thanks."

You open another tab.

There are people in online communities who share their Lighthouse scores like other people share fitness milestones. "Finally hit 100 on mobile, six months of work, feeling good." The replies are sincere congratulations. Everyone in the thread understands. Nobody outside the thread would understand. This is fine. This is community.

I have posted in these threads. I have received the congratulations. I have given them.

The Thing Nobody Tells You

A perfect Lighthouse score does not make a website good.

I know this now. I have always known this, on some level, but the knowing and the feeling are different things. You can have a 100 on PageSpeed Insights and a website that is joyless, confusing, and makes people leave immediately. You can have a 54 and a website that people love and return to and tell their friends about.

The score measures what it measures. It measures speed, accessibility signals, some best practices, some SEO basics. It does not measure whether someone smiles when the page loads. It does not measure whether the writing is good or the design is warm or the product is something the world needed.

But it is the thing I can control. It is the thing with a number. And the number can be 100. And when it is 100, for a moment, everything is fine.

So I will keep auditing. I will keep deferring third-party scripts and converting images to WebP and inlining critical CSS and explaining to clients why the logo cannot be bigger without consequences.

And I will keep taking screenshots.

You should see the desktop background I have now.

Ready to shrink your images?

Browser-only · no upload · no account · GDPR safe

Compress Images — it's free