Google's PageSpeed Insights score is a weighted blend of lab metrics. You do not chase the number directly; you fix what the number is made of. Here is what actually moves it.
What does PageSpeed actually measure?
The Performance score is mostly three things: Largest Contentful Paint (how long until the biggest thing on screen appears), Total Blocking Time (how long the main thread is frozen by JavaScript), and Cumulative Layout Shift (how much the page jumps around while loading). Speed Index and First Contentful Paint fill in the rest. Fix LCP, TBT and CLS and the score takes care of itself.
Which fixes give the biggest gain?
- Images. The single most common problem. A hero photo exported at 3000px and served to a 400px phone is the reason most sites are slow. Right-size per breakpoint, compress, use WebP, and lazy-load anything below the fold. On one media-heavy build this alone was the difference between a 15-second mobile LCP and a green one.
- Payload. Load a builder's CSS and JavaScript only where it is used, drop unused widgets, defer non-critical scripts. This is most of the gap between a heavy Elementor site and a fast one.
- Render-blocking. Inline the critical CSS, load the rest asynchronously, self-host fonts and preload the two or three that matter.
- Layout shift. Set explicit width and height on every image and iframe, reserve space for ad slots and embeds, and use
font-display: swapwith a matched fallback. A CLS of 0.15 on mobile, common on otherwise-fast sites, is almost always an unsized image or a late-loading widget. - Hosting. Slow server response time (TTFB) caps your score before the browser does anything. Managed WordPress hosting with server-level caching fixes it.
Why is mobile always lower than desktop?
PageSpeed emulates a mid-tier phone on a throttled connection, which is deliberately harsher than most real devices. A build like Talent Cleaning scores 98 desktop and 96 mobile; that is about as close as the two get. A gap of 10 to 20 points is normal and healthy. A gap of 30+ usually means a heavy hero image or a lot of third-party script that only bites under throttling.
Can any WordPress site hit 90+?
On desktop, almost always. Recent builds: MVP at 99, White Stripes at a flat 100, Fence Decks at 98. On mobile the honest answer is "usually, with work". Photography-forward sites and Divi builds need more image discipline to get there. I show the real mobile numbers on every project, including the ones still being tuned.
How do I keep the score after launch?
Scores drift. A new plugin adds scripts, an editor uploads a 4MB image, a marketing tag gets pasted into the header. A maintenance plan with PageSpeed monitoring catches the drop within days instead of months. If you do it yourself, re-run PageSpeed after any plugin change or bulk content upload.