PageSpeed Insights warnings explained: render-blocking, unused JavaScript and the rest

The suggestion list in PageSpeed Insights looks like a to-do list. It is not. It is a menu of ideas, each with a saving estimated in a simulated test, and most do not deserve your afternoon. This is a translation of the most common warnings and what to do with each. The exact name of each warning changes over time and with the tool’s language.

The most frequent warnings

Warning It means What to do
Eliminate render-blocking resources CSS or JavaScript in the head that delay the first paint. Defer the JavaScript and trim the CSS. Worth it if the estimate is large. See minifying without breaking the site.
Reduce unused JavaScript / CSS Code is downloaded that the page does not use. Almost always plugins that load their files on every page. Remove the plugin, or use an option that loads it only where needed.
Properly size images The image downloaded is larger than the space it appears in. Reduce the dimensions before uploading. See image optimisation and WebP.
Serve images in next-gen formats JPEG or PNG where WebP or AVIF would take less. Convert. See AVIF or WebP.
Defer offscreen images Off-screen images loaded straight away. Lazy loading. See lazy loading.
Reduce initial server response time The server was slow to start answering. Page cache, database, plugins. See high TTFB.
Serve static assets with an efficient cache policy The files do not tell the browser to keep them. Yours: see browser caching. Third-party ones (a chat, a map) are not yours to change.
Enable text compression A text file arrived uncompressed. It is on here. If it shows up, it is usually a third party’s file. See compression.
Avoid multiple page redirects There is a chain of redirects to the page. Point the link straight at the final address (with https and with or without www, as you chose).
Avoid an excessive DOM size The page has too many HTML elements. Very common with page builders and huge menus. Simplify the structure.
Reduce the impact of third-party code Outside scripts weigh a lot. Remove what nobody uses. See how to fix INP.

How to decide what to tackle

1 Start with the metrics that fail (LCP, CLS, INP) and only then look at the suggestions. A suggestion unrelated to a failing metric can wait. See Core Web Vitals in plain words.
2 Sort by estimated saving and start at the top. A suggestion promising a tenth of a second is not worth a new plugin.
3 Separate what is yours from what is a third party’s. What comes from an address that is not yours (chat, advertising, maps) is only solved by removing or deferring.
4 Change one thing at a time and repeat the test. Measure two or three times and use the middle value.
Chasing 100 points breaks sites. The score is a lab calculation. An option that raises it can break a menu or a form. If a warning demands a risky change to gain a fraction of a second, leave it.
Results vary between tests. The same page gives different numbers at the same hour. Always compare with the same device (phone) and several measurements. Field data (real visitors) weighs more than the lab grade.

A report full of warnings and no idea where to start? Send us the address and the report, and we will point out what belongs to the server and what belongs to the site.

Open a support ticket

SEE ALSO

Measuring your site speed: which tools, and what the numbers mean

How to read a GTmetrix report

Core Web Vitals in plain words

The site is slow: what actually makes a difference

RECOMMENDED PRODUCT

Web hosting with cPanel

Domain and SSL included, daily backups and the panel you already know. from $6.60/mo (3-year plan, with coupon)

See plans
  • 0 Users Found This Useful
Was this answer helpful?