
Core Web Vitals: How Site Speed Affects Rankings and Revenue
Site speed stopped being a purely technical concern the moment Google made Core Web Vitals a ranking factor and shoppers started abandoning slow pages. It now sits squarely between engineering and revenue.
Core Web Vitals are three field metrics Google collects from real Chrome users. Largest Contentful Paint (LCP) measures loading — how long until the main content appears, with 2.5 seconds or less considered good. Interaction to Next Paint (INP) measures responsiveness — how quickly the page reacts to taps and clicks, with 200 milliseconds or less considered good. Cumulative Layout Shift (CLS) measures visual stability — how much the page jumps around as it loads, with 0.1 or less considered good.
The business impact is well documented. Studies across retail consistently show conversion rates falling as load time rises, with the steepest drop in the first few seconds. Faster sites also crawl more efficiently, which helps large sites get more pages indexed.
Common causes of poor LCP: unoptimised hero images, render-blocking JavaScript and CSS, slow server response, and web fonts that block text rendering. Fixes: serve images in modern formats at the right size, preload the LCP image, defer non-critical scripts, and use a CDN.
Common causes of poor INP: heavy JavaScript running on the main thread, especially large third-party tags and analytics. Fixes: break up long tasks, remove or defer non-essential third-party scripts, and audit tag managers ruthlessly.
Common causes of poor CLS: images and embeds without dimensions, ads and banners injected above existing content, and fonts that swap and reflow. Fixes: always set width and height, reserve space for dynamic elements, and use font-display settings that avoid layout shift.
Measure with both lab and field tools. Lighthouse and WebPageTest give you a controlled diagnosis; the Chrome User Experience Report and Search Console show what real users actually experience, which is what Google ranks on.
Speed is not a one-time project. Every new feature, tag, and marketing script is a chance to regress. Put a performance budget in your build pipeline so regressions fail the build instead of shipping.
