Skip to content

Technical SEO

Web Performance Optimization (WPO): How to Make Your Site Faster

Takes about a minute. You hear back from me personally.

Prefer Saad Raza SEO on Google Add this site as a preferred source to see more of my SEO and AI search guides in Google Top Stories.

Add saadrazaseo.com as a preferred source on Google

Short answer: Web performance optimization (WPO) is the work of making web pages load, respond and stay visually stable faster for real visitors. In practice it means measuring with field data such as Core Web Vitals, then fixing the biggest causes of delay: slow server response, heavy images, render-blocking CSS and JavaScript, too many third-party scripts and missing caching. Good targets are LCP under 2.5 seconds, INP under 200 ms and CLS under 0.1.

10%Extra users the BBC found it lost for every additional second its site took to loadweb.dev, Google
8%More sales Vodafone recorded after a 31% improvement in Largest Contentful Paintweb.dev, Google
15%Increase in SEO traffic Pinterest reported after rebuilding pages for performance and cutting wait time by 40%MDN Web Docs
2.5 sThe “good” threshold for Largest Contentful Paint, measured at the 75th percentile of real page loadsweb.dev, 2024

This guide is for site owners, marketers and developers who know their site feels slow and want a clear order of work rather than a list of 40 tips. You will learn what WPO covers, how to measure it properly, which fixes usually move the numbers most, and how to set a performance budget so the site stays fast after launch.

What is web performance optimization?

WPO is the practice of improving how quickly a page becomes useful to a visitor. That is broader than “load time”. A page can finish loading in four seconds and still feel fast if the main content appears in one, or feel broken if buttons do not respond for half a second after a tap. Modern WPO therefore looks at three things:

  • Loading: how soon the main content appears. Measured by Largest Contentful Paint (LCP).
  • Responsiveness: how quickly the page reacts to taps, clicks and typing. Measured by Interaction to Next Paint (INP), which replaced First Input Delay in March 2024.
  • Visual stability: whether things jump around while loading. Measured by Cumulative Layout Shift (CLS).

Together these are the Core Web Vitals. Supporting metrics such as Time to First Byte (TTFB) and total page weight help you find the cause when a vital fails.

WPO and SEO

Google confirms that Core Web Vitals are used by its ranking systems, but its page experience documentation also says good scores do not guarantee top rankings and that chasing a perfect score purely for SEO may not be a good use of time. In my experience speed is a tie-breaker in rankings and a much bigger factor in conversions. A fast page that does not answer the query will not rank; a relevant page that takes eight seconds on a mid-range Android phone will lose a large share of the people who click it.

Why speed matters for the business

Most of the evidence comes from company case studies collected by Google’s web.dev team and others. They are not universal averages, but they point the same way:

  • The BBC found it lost an additional 10% of users for every extra second its site took to load.
  • Vodafone reported that a 31% improvement in LCP increased sales by 8%.
  • The Economic Times reported a 43% better bounce rate overall after passing the Core Web Vitals thresholds (web.dev).
  • Pinterest’s performance rebuild cut wait time by 40% and was followed by a 15% increase in SEO traffic and a 15% increase in sign-up conversions (MDN).

The point for a smaller business is not the exact percentage. It is that slowness costs visitors at every step, and the cost is highest on mobile networks. Many of my clients’ customers in Pakistan browse on 4G with variable signal and mid-range phones, which turns a 3 MB page with heavy JavaScript into a long wait. Testing only on office Wi-Fi and a new laptop hides the problem.

Rather have an expert do this for you?

Hand it over and get back to running your business.

Hand it over to me

Measure first: field data versus lab data

TypeWhere you get itWhat it tells youUse it for
Field data (real users)Search Console Core Web Vitals report, PageSpeed Insights “Discover what your real users are experiencing”, CrUXHow real visitors experienced your pages over the last 28 days, at the 75th percentileDeciding whether you have a problem, and which page groups have it
Lab data (simulated)Lighthouse, PageSpeed Insights diagnostics, WebPageTest, Chrome DevToolsOne controlled load on a simulated device and networkFinding the cause and checking a fix before it reaches real users

The most common mistake I see is chasing a Lighthouse score of 100. The Lighthouse score is a lab summary; Google’s ranking systems use field data. Fix what the field data says is failing, and use lab tools to find out why. My free PageSpeed and Core Web Vitals checker shows both side by side.

MetricGoodNeeds improvementPoor
LCP2.5 s or less2.5 to 4 sOver 4 s
INP200 ms or less200 to 500 msOver 500 ms
CLS0.1 or less0.1 to 0.25Over 0.25

The fixes that usually matter most

This is the order I work in on audits. It is not the order of most tip lists, because it starts with whatever is failing in field data and with fixes that affect every page at once.

1. Server response time (TTFB)

If the server takes over a second to send the first byte, nothing else can be fast. Page caching (serving pre-built HTML instead of rebuilding each page in PHP), a better hosting plan, an up-to-date PHP version and a CDN that caches HTML close to visitors are the main levers. I cover the trade-offs in hosting, caching and CDNs for speed.

2. The LCP element

On most pages the LCP element is a hero image or a large heading. Find it in PageSpeed Insights, then make sure it is not lazy-loaded, is served in a modern format (WebP or AVIF) at the size it is displayed, and is requested early, for example with fetchpriority=”high” on the image. Sliders and background images set in CSS are frequent culprits because the browser discovers them late.

3. Images everywhere else

Compress and resize images before upload, add width and height attributes so the browser reserves space (which also prevents CLS), and lazy-load images below the fold. My free image compressor and WebP converter handles the first step.

4. Render-blocking CSS and JavaScript

Remove unused CSS and scripts, defer non-critical JavaScript, and avoid loading every plugin’s assets on every page. Page builders are a common source of bloat; my notes on Elementor speed fixes show what to switch off.

5. Third-party scripts

Chat widgets, heatmaps, multiple analytics tags, social embeds and ad scripts often cost more than your own code. List every third-party request, ask who uses each one, and remove or delay the rest. This is usually the fastest way to improve INP.

6. Layout shifts

Reserve space for images, ads, embeds and cookie banners, and avoid inserting content above what the visitor is reading. Web fonts that swap late can also shift text. My guide to fixing Cumulative Layout Shift goes through each cause.

7. Caching, compression and protocols

Set long browser cache lifetimes for static files with versioned file names, enable Brotli or Gzip compression, and make sure your host serves HTTP/2 or HTTP/3. These are usually one-time settings at the server or CDN.

8. Responsiveness (INP)

Long JavaScript tasks block the main thread, so taps feel ignored. Break up long tasks, reduce the work done on each interaction, and remove heavy scripts you do not need. The INP guide covers how to find the slow interaction.

Worked example: a typical WordPress service site

A service site on shared hosting with a page builder, a slider and five plugins loading scripts on every page might show a field LCP of around 4 seconds on mobile. In that situation I would fix things in this order: turn on full-page caching and check TTFB drops; replace the slider with one static hero image, sized and served as WebP, with fetchpriority=”high”; stop the contact form and gallery plugins loading their files on pages that do not use them; delay the chat widget until the visitor scrolls or interacts. Each step is checked in the lab, and the field data in Search Console is reviewed again after its 28-day window has refreshed.

Set a performance budget

A performance budget is a limit you agree before building or adding features: for example, no more than a certain page weight, number of requests or amount of JavaScript. It stops the slow creep that happens as plugins, tracking tags and larger images are added over time. The calculator below helps you see where the weight on a page comes from and roughly how long it takes to download on a given connection.

Page weight and download time calculator

Total page weight2,130 KB
JavaScript share of weight28%
Download time at this speed (transfer only)1.7 s
Under 1,000 KB: a lean page. Focus on server response and the LCP element rather than weight.
1,000 to 2,500 KB: typical for a content or service page with images. Check that images are sized for their slot and that JavaScript is only loaded where it is used.
Over 2,500 KB: heavy, especially on mobile data. Start with the biggest category above: usually images or JavaScript.

How to read it: these weight bands are my working rule of thumb from audits, not a Google threshold. Download time here is pure transfer time; real loading also includes server response, connection set-up and the time the phone spends running JavaScript, which is why a high JavaScript share hurts more than the same weight in images.

To get the real numbers for one of your URLs instead of estimates, run it through my page size checker, which breaks weight down by file type.

Common WPO mistakes

  • Stacking optimisation plugins. Two caching plugins, or a caching plugin plus a host-level cache with conflicting rules, can break pages or serve stale content.
  • Lazy-loading the hero image. It delays the LCP element. Lazy-load below the fold only.
  • Minifying and combining everything blindly. Aggressive JavaScript combination can break features and sometimes makes INP worse.
  • Testing only the homepage. Product, category and blog templates often have different problems, and they get more traffic.
  • Treating speed as a one-off project. Without a budget and a monthly check, the site slows down again within months.

If you are not technical, my plain-English guide to website speed explains what to ask your developer or host for.

Frequently asked questions

What does WPO stand for?

Web Performance Optimization: the set of practices for making websites load, respond and render faster for real users.

Is WPO the same as SEO?

No. They overlap: page experience, including Core Web Vitals, is used in Google’s ranking systems, and faster pages are crawled more efficiently. But WPO is mainly about user experience and conversions, while SEO also covers relevance, content and links.

What is a good page load time?

Rather than one load time, aim for the Core Web Vitals thresholds at the 75th percentile of real visits: LCP of 2.5 seconds or less, INP of 200 ms or less and CLS of 0.1 or less, on both mobile and desktop.

Which tool should I use to test site speed?

Start with the Core Web Vitals report in Search Console to see which page groups fail for real users, then use PageSpeed Insights or Lighthouse on an example URL from each group to find the cause.

Will a CDN make my site faster?

Usually, if your visitors are far from your server or your hosting is slow. A CDN shortens the distance for static files and, if configured to cache HTML, for whole pages. It will not fix heavy JavaScript or an oversized hero image.

Sources

  • web.dev (Google), “Why does speed matter?” (accessed 2026).
  • web.dev (Google), “Web Vitals” (last updated 2024).
  • Google Search Central, “Understanding page experience in Google Search results” (last updated 2026).
  • MDN Web Docs, “The ‘why’ of web performance” (accessed 2026).

If your Core Web Vitals report shows failing pages and you are not sure which fix comes first, my website speed optimisation service starts with the field data and works through the causes in this order, or you can send me the URL for a quick view.

Rather have an expert do this for you?

Tell me about your website and goals, and I will reply with a free first review.

Your details are only used to reply to your request. No spam.

Grow my trafficCall