How to audit your website's performance
A performance audit answers three questions: what's slow, who it's slow for, and what to fix first. The trap most audits fall into is producing a 40-point checklist where every item looks equally urgent, when two or three changes account for most of the problem.
Here's a method you can actually repeat, on any site, with free tools.
Step 1: choose the pages to audit
Don't audit "the website." Audit the pages people actually use. For most sites that's four or five templates: the homepage, a main landing or category page, a typical product or article page, and whatever the conversion step is (checkout, signup, contact). Each template tends to have its own performance personality, so testing only the homepage tells you about the homepage and nothing else.
A common blind spot is the page that makes you money. The homepage is often the fastest page on the site, because it gets the most attention. The product page three clicks in, the one with the third-party reviews widget and the video, is where visits quietly die.
Step 2: get the field data first
Start with how real users experience those pages. PageSpeed Insights shows field data from the Chrome UX Report at the top of its report, the 75th percentile of real Chrome visits over the last 28 days. For a site-wide view grouped by status, use the Core Web Vitals report in Search Console.
Field data is the truth about your users, but it has two limits. Low-traffic pages may not have enough data to appear, and the 28-day window means it reacts slowly. So it tells you where you stand, not why. For the why, you go to the lab.
Step 3: run lab diagnostics
Lab tools load the page in a controlled environment and hand you the details. PageSpeed Insights already ran Lighthouse for you; scroll past the score to the diagnostics, which is the useful part. For a deeper look at exactly what loaded and when, WebPageTest gives you a request waterfall and a filmstrip of the page painting frame by frame.
Ignore the big number for a second. A score out of 100 is a summary, not a diagnosis. The diagnostics underneath are where the work is.
Step 4: read the report properly
The findings that move the needle, in rough order of how often they matter:
- The LCP element and its timing. What's the largest thing, and what's holding it up? (See optimising LCP.)
- Render-blocking resources. CSS and JavaScript delaying the first paint.
- JavaScript cost. Unused script, long tasks, and the Total Blocking Time that stands in for INP in the lab.
- Image weight and sizing. Oversized or wrong-format images are the most common easy win.
- Layout shifts. Media without dimensions and late-injected content, the stuff that drives CLS.
If the metrics themselves are unfamiliar, our guide to Core Web Vitals defines each one.
Step 5: prioritise by impact, mobile first
Lighthouse already estimates time saved per opportunity. Trust that ordering more than your gut. Then weight everything toward mobile: phones have slower processors and worse networks, mobile usually fails first, and it's what Google leans on. A fix that helps desktop but not mobile is often polishing the part that was already fine.
Pick the top two or three. Resist the checklist.
Step 6: fix, then re-measure
Make the changes, then re-run the same pages and compare. Lab numbers update immediately, so you'll see the diagnostic effect right away. Field numbers lag, because CrUX averages a 28-day window, so give those a few weeks. Our guide on improving Core Web Vitals has the specific fixes.
Step 7: from one-off audit to ongoing monitoring
Here's the uncomfortable truth about audits: they go stale the moment you finish. An audit is a photo. Performance is a film. The week after you hand over a clean report, someone adds a marketing tag, swaps a hero image, or ships a framework upgrade, and the page you certified as fast starts slipping. Nobody notices, because nobody's looking, until traffic or sales dip and someone asks why.
The fix is to stop treating performance as a project and start treating it as a vital sign. Check the same pages on a schedule, keep the history so you can see trends, and get told when something regresses instead of finding out by accident.
That's what PerfHawk does. It re-checks your pages every day, on mobile and desktop, pairs Lighthouse lab scores with real CrUX field data, keeps up to 13 months of history, and emails you when a page regresses. You can even benchmark against competitors to see whether you're the fast one.
Start free, no card neededWhich tools to use
All of these are worth knowing. They overlap, but each is good at something different.
| Tool | Best for | Data | Cost |
|---|---|---|---|
| PageSpeed Insights | Quick single-page check, lab + field together | Lab + field | Free |
| Lighthouse | Hands-on debugging, CI pipelines | Lab | Free |
| Search Console | Site-wide field status by URL | Field | Free |
| Chrome UX Report | Real-user data at scale (API / BigQuery) | Field | Free |
| WebPageTest | Deep waterfall, filmstrip, device/location options | Lab | Free tier |
| PerfHawk | Daily monitoring over time, alerts, competitor benchmarking | Lab + field | Free tier |
The free official tools are excellent for a point-in-time audit. The gap they leave is time: none of them watch the page for you between audits. That's the layer PerfHawk adds.
Frequently asked questions
How do I test my website's speed for free?
PageSpeed Insights is the quickest free option and shows both lab and real-user data. For a request-level breakdown, WebPageTest is also free.
What's a good page load time?
Use Core Web Vitals as the benchmark: aim for LCP of 2.5 seconds or less at the 75th percentile of real visits, on mobile. A single "load time" number hides more than it tells.
How often should I audit performance?
A full manual audit a few times a year is fine, but performance drifts between releases. Continuous monitoring catches regressions that a quarterly audit misses entirely.
What's the difference between an audit and monitoring?
An audit is a one-off snapshot to find and fix problems. Monitoring runs continuously to catch new problems as they appear and confirm fixes hold.
Run the audit, fix the top issues, then keep watching. PerfHawk turns the one-off audit into a daily check: lab and field, mobile and desktop, with history and regression alerts, so your site stays fast after the audit is filed away.
Monitor your site free Compare plansRelated: Core Web Vitals, explained · How to improve your Core Web Vitals