Blog
Improving Core Web Vitals: what really causes slow pages
The Core Web Vitals are Google’s measurable metrics for a page’s load experience — and a confirmed ranking factor. To improve them, you first need to understand what they measure.
The three metrics
- LCP (Largest Contentful Paint) — how long the largest visible element takes to load. Target: under 2.5 seconds.
- CLS (Cumulative Layout Shift) — how much the layout “jumps” while loading. Target: under 0.1.
- INP (Interaction to Next Paint) — how quickly the page responds to input. Target: under 200 milliseconds.
Why WordPress sites often fail here
With classic WordPress, every page is assembled from PHP and a database on each request, plus theme and plugin scripts. This mainly hurts LCP (slow delivery) and INP (lots of blocking JavaScript). Layout shifts (CLS) often come from images without fixed dimensions or late-loading ad/tracking elements.
What actually helps
- Deliver fast — pre-rendered pages from a CDN/edge instead of PHP per request.
- Reduce JavaScript — fewer blocking scripts improve INP directly.
- Images with fixed dimensions and modern formats — against layout shifts and for fast LCP.
- Fewer third-party scripts — every tracking plugin costs performance.
Plugins and caching ease the symptoms but don’t solve the cause. The most sustainable route is a stack that is lean from the ground up: a static site, served from the edge, with virtually no render-blocking JavaScript.
Conclusion
Core Web Vitals can be improved on a WordPress site — or you can remove the root of the problem. That is exactly what a website relaunch to a static Cloudflare stack delivers: fast delivery, minimal JavaScript, clean structure. This page is the proof — test it yourself.