Skip to content
What To Fix First

Check your Core Web Vitals — and what they’re costing you

Free, no signup, no ads. We keep nothing except the shareable result, for 30 days.

Enter any public URL. You’ll get the one change that recovers the most load time, what it’s worth, and the measurements underneath. Here's what a result looks like:

Example result — sample data, not a live measurement

Your biggest win

Slim down your images

Est. 1.8 seconds faster

Your hero image is a 2400-pixel JPEG shown at 800 pixels — most of its 1.1 MB never reaches anyone's eyes. Resizing it and serving WebP or AVIF recovers almost two seconds. How to fix it

What that delay is costing you

7.2 conversions per month (estimated)

That’s what 1.8s faster is modelled to recover at 10,000 visitors and a 2% conversion rate.

Estimate based on ~2% conversion improvement per second of load time recovered, capped at 20%. Your actual result will differ. Defaults shown: 10,000 visitors at 2%. Edit them for your own numbers.

Where your 4.30s goes today

Largest element: hero.jpg

  • Server190ms
  • Discovery610ms
  • Download3.05s
  • Render450ms

After the fix

2.50s

This fix acts on downloaddownloading the element itself. It can only remove time from that phase, which is why the projection is smaller than the page's total possible saving.

What we found

  • Your largest visible element is an image, and there's 1.1 MB of avoidable image weight on this page. Compressing it and serving it as WebP/AVIF with fetchpriority="high" is usually the fastest win. Fix it

Field data (real visitors)

Google doesn’t have enough real-visitor data for this site yet. That’s normal for newer or lower-traffic sites — the lab results are still accurate.

What “no field data” means

Lab measurements

One simulated load on a mid-range phone over a throttled 4G connection. Repeatable, and the same for everyone — but it is a simulation, not your actual visitors. The coloured band under each number is Google’s good / needs-work / poor range for that metric.

Not measured
190 msGood
FCP First Contentful Paint
1.90 sNeeds work
TBT Total Blocking Time
140 msGood

INP has no lab equivalent — it needs a real person tapping things. Total Blocking Time is the closest lab stand-in, and the field data above has the real number if Google has enough visitors to report it.

After that

  1. Cache your static files for longer

    450ms

    Your static files are served with short cache lifetimes, so returning visitors download them all over again. There's about 320 KB to recover here.

    Guide
  2. Remove the CSS this page never uses

    250ms

    Most of your CSS isn't used on this page — a common side effect of large themes and page builders. There's about 58 KB to recover here.

    Guide

Tested example.com on mobile, . Lighthouse performance score: 58/100.

The score is here at the bottom on purpose. It compresses six measurements into one number and tells you nothing about what to change.

Get alerted when your Core Web Vitals drop below passing.


What Core Web Vitals actually measure

Three numbers, each standing in for something a visitor can feel.

Largest Contentful Paint is the moment the biggest thing on screen — usually a hero image or a headline — finishes drawing. Until it does, your visitor is looking at a blank rectangle deciding whether to wait. Google’s bar is 2.5 seconds, and when a page misses it, the LCP guide is where most fixes live.

Cumulative Layout Shift counts how far the page moves after it starts appearing. You have felt this one: you go to tap a link, an ad loads above it, and you tap something else entirely. The bar is 0.1.

Interaction to Next Paint is the gap between tapping something and the page visibly reacting. Under 200 milliseconds feels instant; past half a second feels broken. This one is nearly always JavaScript.

A revenue problem before it is a ranking problem

~2%

Of conversions lost per second of load time

Core Web Vitals are a ranking factor, but a weak one. Google has said as much repeatedly, and in practice content and links move rankings far more than milliseconds do. Chasing rankings is the wrong reason to care about this.

The reason to care is that people leave. Every large study that has measured it — Amazon’s, Walmart’s, Vodafone’s, Deloitte’s retail work — finds the same shape: load time goes up, conversions go down, and across the range most sites actually live in the relationship is close to linear. The figure that keeps recurring is around two percent of conversions per second of load time, which is what this tool models with, capped so it never produces a silly number.

Rankings are also a lagging, noisy signal you cannot isolate from everything else you changed that month. Conversion rate is something you can read off your own analytics next week. If your checkout takes four seconds to become usable on a phone, you are losing sales today from people who never searched for you in the first place.

That is why this tool leads with a fix rather than a score. A score compresses six measurements into one number and then tells you nothing about which of them to change.

Fix guides

  1. How to fix a slow LCPYour main image or headline takes too long to appear.
  2. How to fix layout shiftContent jumps around while the page loads.
  3. How to fix slow INPTaps and clicks take a moment to do anything.
  4. How to fix a slow server responseYour server is slow to start replying at all.
  5. How to eliminate render-blocking CSS and JSCSS and JS files stop anything appearing on screen.
  6. Why you're seeing "no field data"Google has no real-visitor data for your site yet.
  7. How to fix oversized and outdated imagesYour images weigh far more than they need to.
  8. How to cut unused JavaScriptYou ship JavaScript this page never runs.
  9. How to fix your cache headersReturning visitors re-download files they already have.
  10. Why your score is different on every runThe score is different every time you test.
  11. Fast on desktop, slow on mobileDesktop looks fine; the phone test says otherwise.
  12. Why Search Console still shows the old numbersYou fixed it weeks ago and Search Console hasn't noticed.
  13. Core Web Vitals assessment: failedSearch Console says failed, PageSpeed says 95 — and both are right.
  14. How to stop plugins loading on every pageA form plugin's CSS on pages with no form — times every plugin.
  15. Which AI crawlers to allow in robots.txtYou block training bots and accidentally block the ones that cite you.
  16. Your firewall is blocking AI crawlersrobots.txt allows everyone, yet AI crawlers get a 403 before they read a byte.
  17. Your content only exists after JavaScript runsThe server sends an empty shell and a script fills it in — AI crawlers see nothing.
  18. Structured data that AI crawlers actually useThe page is readable but nothing tells a machine what it is.
  19. llms.txt — what it is, what it isn't, and a templateA cheap bet, not a fix — here's the honest evidence and a template.

Four more checks: can AI crawlers read your page?is it usable on a phone?which WordPress plugins weigh the most?which images waste the most?

All guides, with diagramsThe diagrams, free to reuse

Common questions

Is this really free?
Yes, and there's no signup, no ads and no usage cap beyond 20 checks an hour per person so one script can't drain the quota for everyone. It runs on Google's PageSpeed Insights and Chrome UX Report APIs, which are free for us to call.
Why doesn't the result start with a score?
Because a score doesn't tell you what to change. Every other tool leads with a number out of 100, which people then try to raise directly — usually by chasing whichever audit is easiest rather than whichever costs the most time. We lead with the single fix that recovers the most load time. The Lighthouse score is still on the page, at the bottom, where it belongs.
What's the difference between lab data and field data?
Lab data is one simulated load on a mid-range phone over a throttled connection. It's repeatable and it can point at specific files, which is why the fix suggestions come from it. Field data is the 75th percentile of what real Chrome users actually experienced on your site over the last 28 days. Field data is what Google uses for ranking; lab data is what tells you where to look.
Why does it say Google has no field data for my site?
Google only publishes field data for pages with enough real Chrome traffic to be statistically meaningful and anonymous. Most sites don't clear that bar, especially on individual URLs. It is not a penalty and it doesn't mean anything is broken — the lab results are still accurate and still tell you what to fix.
How accurate is the revenue estimate?
It's a model, not a measurement, and we say so on every result. It applies roughly a 2% conversion improvement per second of load time recovered, capped at 20% total, to the visitor and conversion numbers you supply. That rate is in line with published retail studies, but your own site's sensitivity to speed could easily be half or double it. Treat it as an order of magnitude for prioritising work, not a forecast.
Do you store the URLs I check?
Only as part of a shared result, and only for 30 days. When you run a check we save the structured result under a random ID so you can share the link; after 30 days it's deleted and the link stops working. We don't log IP addresses, we don't set tracking cookies, and there is no account to attach anything to.
Why does it only test mobile?
Because that's what Google ranks on and it's where the problems are. Desktop results almost always look fine — a fast machine on good wifi hides a lot. Testing the throttled mobile case is testing the case that actually loses you money.
Do you make money from the product links?
Yes, when they appear — they're affiliate links and they're labelled as such inline. The about page lists every program and its one condition; a result shows at most one, chosen by the same logic that picks your biggest win. A hosting link appears only when the fix that matters is your server, which requires a response time over 600ms. A CDN link appears only when your server is fine but your static files ship with short cache lifetimes — and it always says, in the same breath, that longer cache headers on your existing server fix it for free. A WordPress plugin link appears only when the fix is scripts or CSS and your site actually runs WordPress — and it always says you can defer and dequeue by hand for free. An image-optimisation link appears only when the fix is converting, compressing or resizing images — and it always says Squoosh or cwebp do the same one file at a time for free; the service is for hundreds of existing images. If your biggest win is layout shift, you'll see no product at all, because nothing sold fixes it.