Page speed is one of the most impactful technical SEO improvements you can make. Google confirmed page speed as a ranking factor for mobile searches in 2018 and desktop searches in 2010. More importantly, slow pages frustrate users — a one-second delay in page load time reduces conversions by approximately 7% according to research by Akamai. This guide covers how to measure page speed, understand the key metrics and fix the most common performance issues.
Why Page Speed Matters for SEO
Page speed affects SEO through two mechanisms: as a direct ranking signal and as an indirect user experience signal. As a direct signal, Google uses page speed data from Chrome User Experience Report (CrUX) — real-world load times from actual Chrome users visiting your site — to inform rankings, primarily through the Core Web Vitals assessment.
As an indirect signal, slow pages increase bounce rate (users leaving before the page loads), reduce time on site, and decrease the number of pages visited per session. All of these engagement signals are negative indicators of content quality that can influence Google's assessment of your site over time.
According to Google's Web Vitals documentation, pages that pass Core Web Vitals thresholds receive a minor ranking boost over pages that fail. While not a massive ranking factor on its own, page speed combined with other user experience signals contributes to overall ranking performance.
Core Web Vitals Explained
Core Web Vitals are a set of three user experience metrics that Google uses to assess page performance. They were introduced as ranking signals in May 2021:
- Largest Contentful Paint (LCP) — measures loading performance. LCP is the time from page load start to when the largest visible content element (usually a hero image or main heading) becomes visible. Target: 2.5 seconds or less.
- Interaction to Next Paint (INP) — measures interactivity and responsiveness. INP measures the latency of all page interactions (clicks, taps, keyboard inputs) and reports the worst-case. Replaced First Input Delay (FID) in March 2024. Target: 200 milliseconds or less.
- Cumulative Layout Shift (CLS) — measures visual stability. CLS measures how much page elements move unexpectedly during loading (e.g., content jumping when an ad loads). Target: 0.1 or less.
Pages that meet the "Good" threshold for all three metrics pass Core Web Vitals. You can check your site's Core Web Vitals status in Google Search Console under Experience → Core Web Vitals.
How to Measure Your Page Speed
Several free tools measure page speed and Core Web Vitals:
- Google PageSpeed Insights — free tool that provides both lab data (simulated) and field data (real user data from CrUX) with specific recommendations for improvement
- Google Search Console → Core Web Vitals — shows which pages on your site pass and fail Core Web Vitals based on real user data
- Lighthouse — built into Chrome DevTools (F12 → Lighthouse tab). Provides a detailed performance audit with a score from 0–100.
- WebPageTest.org — free tool that allows testing from multiple global locations with detailed waterfall charts showing which resources are slowing down your page
When interpreting results, prioritise field data (real user measurements from CrUX) over lab data (simulated). Field data reflects what actual visitors experience on your site and is what Google uses for rankings. Lab data is useful for diagnosing specific issues.
Optimise Images
Images are typically the largest files on any web page and the most impactful area for page speed improvement. Image optimisation can reduce page size by 50–80% in many cases.
Key image optimisation steps:
- Use modern formats — WebP provides 25–35% better compression than JPEG/PNG with equivalent quality. AVIF provides even better compression. Use these formats instead of JPEG/PNG where possible.
- Resize images to display dimensions — if an image is displayed at 800px wide, do not upload a 3000px original. Resize before uploading.
- Compress images — use tools like Squoosh, TinyPNG or ImageOptim to reduce file size without visible quality loss
- Add lazy loading — use the
loading="lazy"HTML attribute on images below the fold so they only load when the user scrolls to them - Set explicit width and height attributes — prevents layout shift (improves CLS score) by reserving space for the image before it loads
Enable Browser Caching
Browser caching stores static resources (CSS, JavaScript, images) in the user's browser so they do not need to be re-downloaded on subsequent page visits. Returning visitors experience much faster load times because most of the page assets are already cached locally.
Configure caching via HTTP headers in your server or .htaccess:
<IfModule mod_expires.c> ExpiresActive On ExpiresByType image/jpeg "access plus 1 year" ExpiresByType text/css "access plus 1 month" ExpiresByType application/javascript "access plus 1 month" </IfModule>
For resources that change frequently (HTML pages), set shorter cache times or no caching. For static assets (logos, CSS files, JavaScript libraries), long cache times of weeks to months are appropriate.
Minify CSS, JavaScript and HTML
Minification removes unnecessary whitespace, comments and formatting from code files without changing their functionality. A minified CSS file can be 20–40% smaller than its unminified source, reducing the data that needs to be downloaded.
Most modern build tools and CDNs handle minification automatically. For WordPress, plugins like Autoptimize or WP Rocket minify and combine CSS/JavaScript files. For custom sites, tools like UglifyJS (JavaScript) and CSSNano (CSS) are standard.
Additionally, enable GZIP or Brotli compression on your web server to further compress text-based resources (HTML, CSS, JavaScript) before they are sent to the browser. GZIP typically reduces text file sizes by 70–90%.
Choose Fast Hosting
Your web hosting is the foundation of your page speed. A slow or overloaded shared hosting server will produce slow server response times (TTFB — Time to First Byte) that no amount of front-end optimisation can fully overcome.
Key hosting factors for page speed:
- Server location — choose a data centre close to your primary audience. A server in the US will be faster for US visitors and slower for Indian visitors.
- Server resources — shared hosting limits CPU and RAM which slows dynamic page generation. VPS or dedicated hosting provides dedicated resources.
- PHP version — newer PHP versions are significantly faster. PHP 8.x is roughly twice as fast as PHP 7.x for Laravel applications.
- OPcache — a PHP opcode cache that dramatically speeds up PHP execution by caching compiled PHP code in memory
Aim for a Time to First Byte (TTFB) under 200ms for most visitors. TTFB is the time from the browser sending a request to receiving the first byte of the response — it is a measure of pure server performance before any rendering begins.
Use a Content Delivery Network (CDN)
A Content Delivery Network (CDN) distributes your site's static assets (images, CSS, JavaScript) across servers in multiple geographic locations worldwide. When a user requests your page, the CDN serves assets from the server closest to them, reducing latency significantly for visitors far from your origin server.
Popular CDN options include Cloudflare (free tier available), Amazon CloudFront, Fastly and KeyCDN. Cloudflare is the most widely used option for small to medium websites due to its free tier, easy setup and additional features (DDoS protection, SSL, minification).
Beyond speed, CDNs also reduce load on your origin server, improve uptime during traffic spikes and provide an additional layer of security. For any website with a global or regional audience, a CDN is one of the highest-value performance investments available.
Frequently Asked Questions
How much does page speed affect Google rankings?
Google has described page speed as a "tiebreaker" factor — when two pages are otherwise equal in quality and relevance, the faster page may rank slightly higher. For most sites, significantly improving content quality, backlinks and on-page SEO will have a greater ranking impact than page speed alone. However, failing Core Web Vitals thresholds can suppress rankings, and fixing that issue is worthwhile.
What is a good PageSpeed Insights score?
PageSpeed Insights scores range from 0–100. A score of 90+ is considered "Good," 50–89 "Needs Improvement" and 0–49 "Poor." Google uses field data (Core Web Vitals) for ranking rather than the lab-based PageSpeed Insights score directly. However, a high score generally correlates with good Core Web Vitals performance.
Does page speed affect mobile rankings more than desktop?
Since Google switched to mobile-first indexing, mobile page performance is the primary version Google evaluates. However, Google uses real-world field data segmented by device — so your mobile Core Web Vitals and your desktop Core Web Vitals are evaluated and reported separately in Google Search Console.
My page scores well in lab tests but users still report it is slow. Why?
Lab tests simulate ideal conditions — fast connection, modern hardware. Real users visit on slower mobile connections, older devices and from various geographic locations. Check your Core Web Vitals "field data" in Google Search Console or PageSpeed Insights (the 28-day real-user data panel), which reflects actual visitor experience rather than the simulated lab environment.