Home About Services Work Blog FAQ Contact
Back to blog

Web Design 7 min read

Is Your Website Slow? How to Read Your Core Web Vitals

A client emailed me with a simple question: is my website slow? A customer had mentioned it in passing, and she had no way to know if it was true. My answer probably was not what she expected. You do not need me for this one. You can find out yourself in about two minutes, with a free tool from Google, and once you know what the three numbers mean, you can read the result without a developer sitting next to you.

This is the companion to a post I already wrote on why website speed matters. That one makes the case for caring. This one hands you the diagnostic. If you have ever suspected your site is dragging and did not know how to check, this is how you check.

What are Core Web Vitals?

Core Web Vitals are three measurements Google uses to score how your site feels to a real person using it. Not how it looks. How it feels: how fast the page shows up, how quickly it responds when someone taps, and whether it holds still while it loads. Google turned these into an official ranking signal, so they affect both your visitors and where you land in search. The three go by their initials: LCP, INP, and CLS. Once you know what each one watches, the report reads like plain English.

What do LCP, INP, and CLS actually mean?

In plain terms: LCP is loading, INP is responsiveness, CLS is stability. That is the whole idea. Everything past this paragraph is just detail on each one.

LCP, Largest Contentful Paint, measures how long until the biggest thing on screen actually appears. Usually that is your hero image or main headline. It answers the question "how long am I staring at a blank or half-built page before the real content shows up."

INP, Interaction to Next Paint, measures how quickly the page reacts when you do something: tap a button, open the menu, expand a form. It answers "did the site respond right away, or did I just poke a frozen screen and wait." A slow INP is the site that feels sticky and unresponsive even after it looks loaded.

CLS, Cumulative Layout Shift, measures how much the page jumps around while it loads. You know the one: you go to tap a link, an image or ad loads in above it, shoves everything down, and you tap the wrong thing. CLS puts a number on that annoyance.

How do I test my website speed for free?

Two free Google tools do it, no account required for the first one. PageSpeed Insights checks a single page on demand. The Core Web Vitals report in Google Search Console tracks your whole site over time. Start with PageSpeed Insights.

Go to pagespeed.web.dev, paste in your homepage URL, and hit Analyze. Give it a few seconds. It tests your mobile and desktop versions separately, and you want to look at the Mobile tab first. That is where most of your visitors are, and it is almost always where a site struggles. The report scores your page and flags exactly which of the three vitals is failing.

Once you want the bigger picture, the Core Web Vitals report inside Google Search Console groups every page on your site into Good, Needs improvement, and Poor, and shows the trend over time using data from real visitors. PageSpeed Insights is a snapshot of one page right now. Search Console is the whole site, measured on actual traffic. Use both.

What counts as a good score, and what counts as a bad one?

Google publishes exact thresholds, and a page only counts as Good when it clears all three at once. Miss one and the page fails. Here are the numbers.

MetricGoodPoorWhat it measures
LCP2.5 seconds or lessOver 4 secondsLoading
INP200 ms or lessOver 500 msResponsiveness
CLS0.1 or lessOver 0.25Visual stability

Anything between Good and Poor is the middle band Google calls "needs improvement." Now the part that trips people up. PageSpeed Insights also shows a big 0 to 100 score at the top. That number is a lab simulation, useful but not the thing that counts. The pass or fail that actually matters is the real-visitor data, measured at the 75th percentile of your traffic, which is a technical way of saying "three out of four real visitors should get a Good experience." Chase the green on the real-user vitals first, and treat the 0 to 100 number as a helpful hint, not the goal.

What is actually slowing my site down?

Most bad scores trace back to a short list of usual suspects, and each one tends to hit a specific metric. Once you know which vital is failing, you can usually guess the cause.

Big unoptimized images wreck LCP. A four-megabyte photo straight off a phone camera, sitting where a properly sized web version would look identical at a fraction of the weight, is the single most common reason a small business site scores badly. Too many heavy scripts and plugins wreck INP. Every plugin, tracking tag, chat widget, and slider adds code the browser has to chew through before it can respond to a tap. On WordPress especially, plugin sprawl is the usual culprit. No caching and slow hosting drag LCP down further, because without caching (and often a CDN) the server rebuilds the whole page from scratch for every single visitor. And images or ads with no set dimensions cause CLS, because when the browser does not know how tall something is before it loads, it guesses, then shoves the page around when the real thing arrives.

Which fixes can I do myself, and which need a developer?

Honest answer: some of this is a weekend job and some of it is not, and it is worth knowing which is which before you spend money. A good chunk of the easy wins are yours to do.

You can do these yourself. Compress your images before you upload them, using a free tool like TinyPNG or Squoosh, so a two-megabyte photo becomes two hundred kilobytes with no visible difference. Set width and height on your images if your site builder lets you. Delete plugins you are not using. If you are on WordPress, turn on a caching plugin. That list alone clears up a lot of LCP and CLS problems, and it costs nothing but an afternoon.

Here is where it stops being a weekend job. Sluggish INP from heavy scripts, render-blocking code, a bloated theme, server and hosting configuration, setting up a CDN, or a site that is just fundamentally built slowly. When you have compressed the images, cleared out the dead plugins, and the report is still red, the problem is in how the site was built, and no plugin fixes that. That is the point where you want a real developer, and if you are hiring one, how to choose a web designer and what a website actually costs in Ontario are both worth reading first.

So run the test today. Paste your homepage into PageSpeed Insights, check the Mobile tab, and look at those three numbers. If they are green, good, your site is doing its job. If they are red and you have already done the easy fixes, get in touch and I will tell you what is actually going on under the hood.

Frequently asked questions

What is a good PageSpeed Insights score?

On the 0 to 100 scale, 90 and up is good (green), 50 to 89 needs work (orange), and under 50 is poor (red). But that number is a lab estimate. The score that actually matters for Google is your real-visitor Core Web Vitals: LCP at 2.5 seconds or less, INP at 200 ms or less, and CLS at 0.1 or less. Aim to pass all three of those first, then improve the 0 to 100 number.

How do I test my website speed for free?

Go to pagespeed.web.dev, paste in your page URL, and click Analyze. It is free and needs no account. Check the Mobile tab first, since that is where most visitors are and where sites struggle most. For a view of your whole site over time, use the Core Web Vitals report in Google Search Console, which groups your pages into Good, Needs improvement, and Poor based on real traffic.

What are LCP, INP, and CLS in plain English?

They are Google's three Core Web Vitals. LCP (Largest Contentful Paint) is loading: how long until the biggest thing on the page appears. INP (Interaction to Next Paint) is responsiveness: how fast the page reacts when you tap. CLS (Cumulative Layout Shift) is stability: how much the page jumps around while it loads. Loading, responsiveness, stability. That is all three.

Why is my website slow?

Usually one of a few things: oversized images that were never optimized for the web, too many plugins and scripts running at once, no caching, or cheap slow hosting. Layout jumping around is typically images or ads with no set dimensions. Some of these you can fix yourself (compress images, remove unused plugins, enable caching). If those do not help, the problem is in how the site is built, and that needs a developer.

About the author

Rob Kingsbury

Rob Kingsbury is the founder of Kingsbury Creative and a Professor at Algonquin College. He has been building websites since the mid-1990s, and has spent the last decade focused on small businesses across Renfrew County and the Ottawa Valley.

Like what you see?
Let's build yours.

We're building our portfolio and offering introductory rates. Get in early.

Start Your Project