Su questa pagina: [nascondere]
Quando Vodafone ha ridotto il JavaScript che blocca il rendering sul suo sito italiano, La vernice con contenuto più grande è stata rilasciata 31% e le vendite sono aumentate 8%. Non si tratta di una modifica del margine di errore. Si tratta di entrate misurabili derivanti da una soluzione tecnica. La stessa ottimizzazione è disponibile per ogni sito WordPress, and on most installs it lives behind a single plugin toggle.
Risposta rapida: Install a performance plugin with “Delay JavaScript” e “Ottimizza la consegna CSS” Caratteristiche (FlyingPress, WP Rocket, or LiteSpeed Cache for LiteSpeed servers), enable both, then re-test in PageSpeed Insights. Per 90% dei siti WordPress, that single step clears the warning. The rest of this guide covers what to do when it doesn’t.
Ultima revisione: aprile 2026. Tested with current plugin versions and verified against PageSpeed Insights 2026 punteggio.

Che cosa “Render-Blocking” Actually Means (And Why It Costs You Money)
Browsers stop painting pixels the moment they hit a CSS or JavaScript file in the <testa>. Nothing renders on screen until that file finishes downloading and executing. Stack five render-blocking files in the head, each adding 100-300ms of delay, and your visitor stares at a white screen for over a second before anything appears.
That white screen has a price. La più grande vernice contenta (LCP) is one of three Core Web Vitals Google uses for ranking, and render-blocking resources push it later by definition. If yours is over 2.5 secondi, Google starts treating the page as “Povero.” Competitors with sub-1.5-second LCP outrank you on commerce queries even when their content is weaker.
Google’s case studies show conversion lift in the 5-15% range when sites move from “Povero” per “Buona” on LCP. That makes this one of the few SEO chores that pays for itself the first month after deploy.
Primo, Find Out What’s Actually Blocking Your Render
Don’t start fixing until you know what to fix. Three tools give you the answer in under a minute:
Page Speed Insights (the official one)
- Go to pagespeed.web.dev
- Paste your URL and run the audit
- Scroll to the Diagnostica sezione
- Espandere “Eliminate render-blocking resources”
- You’ll see a list of CSS and JS files with their size and the milliseconds each one costs you
The list is your hit list. Top entries are usually theme CSS, jQuery, and one or two heavy plugins (cursori, costruttori di pagine, analitica).
Chrome DevTools (gratuito, tempo reale)
Right-click your page, pick Inspect, quindi apri il Prestazione linguetta. Hit record, refresh, fermare. The timeline shows exactly which resources block the first paint. DevTools is more accurate than PageSpeed Insights for diagnosing your own visit, since it uses your actual connection.
The underused tool here is the Coverage tab. Press Cmd+Shift+P (Ctrl+Shift+P on Windows), genere “Copertura,” hit Enter, then reload. You’ll see every CSS and JS file annotated with how much actually executes. Files showing 80%+ unused are the obvious cuts. Most WordPress sites have at least one stylesheet with 90% unused bytes loading on every page.
Test pagina Web (for the obsessive)
webpagetest.org gives you a waterfall chart showing exactly which resources block rendering. Gratuito, dense interface. Worth it if PageSpeed Insights and DevTools haven’t given you a clear answer.
Once you have the list, pick a fix path below. The plugin route handles 90% di casi. The manual route is for sites where you can’t install another plugin or you need precise control.
Fix It With a Performance Plugin (The 5-Minute Path)
This is the path most sites should take. A modern performance plugin solves render-blocking in three layers: deferring JavaScript, optimizing CSS delivery, and removing unused CSS. Three plugins handle this well in 2026, with meaningful differences.
FlyingPress (USD 60/year)
FlyingPress loads used CSS as a separate external file, which is faster for real users than the alternative. Suo “Delay JavaScript” implementation is granular: you can delay specific scripts until user interaction, which often clears render-blocking warnings entirely without breaking analytics or chat widgets. Settings to enable: Ottimizza la consegna CSS, Generate Critical CSS, Rimandare JavaScript, e Delay JavaScript with the default exclusion list. Questo è tutto.
WP Rocket (59 USD/anno)
The most popular paid option. Comparable feature set to FlyingPress with one technical trade-off: WP Rocket’s “Remove Unused CSS” feature inlines the used CSS directly into your HTML, which bloats every page response. FlyingPress and LiteSpeed Cache load it as an external file instead. For most sites this difference is negligible. For high-traffic sites it adds up. Abilitare: Ottimizza la consegna CSS, Load JavaScript deferred, e Delay JavaScript execution.
Cache LiteSpeed (gratuito, LiteSpeed servers only)
Se il tuo host esegue LiteSpeed (Hostinger, Hosting A2, NomeEroe, ChemiCloud, and most providers in our hosting condiviso economico roundup do), LiteSpeed Cache is free and matches the paid plugins on render-blocking fixes. Critical CSS generation runs on LiteSpeed’s servers, not yours, so it doesn’t slow your site during the build. Toggle on CSS Async Load, CSS critici, JS Defer, e JS Delayed.
Free option: Ottimizzazione automatica + JavaScript asincrono
If you can’t pay, the Autoptimize plugin paired with the Async JavaScript plugin (both free, both maintained) covers the basics. You won’t get the granular delay-until-interaction control of FlyingPress, but you’ll handle 70-80% of the warnings. Enable Autoptimize’s Aggregate JS files, Inline and Defer CSS, then in Async JavaScript set Apply Async globally with jQuery excluded.
After enabling any of these, clear all caches, aspettare 60 secondi, and re-run PageSpeed Insights. The render-blocking warning should be gone or substantially smaller.
Fix It Manually (For Developers and Page-Builder Sites)
Sometimes a plugin isn’t an option. Maybe your client locked the plugin list. Maybe you’re optimizing a custom theme with strict requirements. Maybe you just don’t trust another moving part. Two snippets handle 80% of manual cases.
Defer all non-essential JavaScript
Add this to your child theme’s functions.php:
function htg_defer_scripts( $etichetta, $maniglia ) {
Se ( is_admin() ) return $tag;
Se ( in_array( $maniglia, [ ‘jquery-core’ ] ) ) return $tag;
return str_replace( ‘ src=’, ‘ defer src=’, $etichetta );
}
add_filter( ‘script_loader_tag’, ‘htg_defer_scripts’, 10, 2 );
This filter catches every script WordPress enqueues, skips admin and jQuery, and adds the defer attribute to everything else. Defer tells the browser to download the script in parallel with HTML parsing but execute it only after parsing finishes. Result: no render blocking from JavaScript.
The exclusion list is the part you tune. If a script depends on jQuery being available before DOMContentLoaded, you’ll see JavaScript errors after deploying this. Add the offending handle to the array and reload. Most sites end up excluding jquery-core, jquery-migrate, and one or two payment-gateway scripts.
Async-load non-critical CSS with media queries
For stylesheets that aren’t critical to the first paint, change the link tag’s media attribute:
<link rel =”foglio di stile” href =”non-critical.css” media=”Stampa” onload=”this.media=’all'”>
The browser doesn’t block rendering for print styles, then the onload handler swaps media to “tutti” once the page is rendered. WordPress doesn’t expose a filter for this pattern, so you’ll edit theme wp_enqueue_style calls or drop in a small mu-plugin.
Inline Your Critical CSS
Critical CSS is the minimum subset of styles needed to render everything visible above the fold. Inline that subset directly in the <testa>, then load the rest of your CSS asynchronously. The browser paints instantly, then progressively styles the rest of the page.
Generating critical CSS by hand is brutal. Tools that automate it:
- FlyingPress, WP Rocket, Cache LiteSpeed generate critical CSS automatically per page type
- Critical Path CSS Generator (sitelocity.com/critical-path-css-generator) is a free web tool for one-off generation
- Il “critico” npm package integrates into a build pipeline if you’re shipping themes from a JS toolchain
Per la maggior parte dei siti WordPress, pagando USD 60 a year for FlyingPress to handle critical CSS generation is cheaper than the developer time to maintain it manually. The math gets uglier when you have 50 page templates that all need their own critical CSS calculated.
The Real Fix: Audit and Cut What Shouldn’t Be There
Plugin tricks defer the load. But what if the load shouldn’t be there at all? The most durable fix is the least glamorous: stop loading resources you don’t need.
For each entry on your PageSpeed Insights list, ask three questions:
- Do I actually use this on this page? A contact form plugin loading its CSS on every product page is render-blocking that no defer trick fully fixes.
- Is the source plugin worth the weight? Elementor, due, and WPBakery routinely add 200-400KB to every page. If you don’t use the builder on every page, you’re paying the cost anyway.
- Could I replace this with something lighter? Slick slider, FontAwesome via CDN, an analytics script set up three years ago and never used. Most 5-year-old WordPress sites have a long list of cuttable scripts.
Tools that help:
- Perfmatters includes a Script Manager for disabling scripts per page. The Elementor JS bundle, per esempio, can be disabled on pages that don’t use Elementor sections.
- Pulizia delle risorse (gratuito) does the same thing with a smaller feature set.
- Plugin Detective identifies which plugin each render-blocking script comes from when file names are obfuscated.
Cutting unused scripts at the source produces bigger PageSpeed gains than any defer optimization. It’s also the only fix that survives a theme switch.
Common 2026 Render-Blocking Culprits in WordPress
The same offenders show up on most sites flagged by PageSpeed Insights. If you’re short on time, check these first.
- jQuery (ancora!). WordPress core loads jQuery on the front end by default. If your theme doesn’t need it, dequeue it. Perfmatters has a one-click toggle.
- Page builder bundles. Elementor’s frontend.min.js and frontend.css are render-blocking on every page they load on. Audit usage before paying the cost everywhere.
- Google Fonts loaded blocking. Self-host fonts or use font-display: scambiare. Loading three font weights from fonts.googleapis.com adds 200-400ms to render.
- Cookie banners and consent scripts. These often load synchronously to comply with EU consent rules, which makes them render-blocking by design. Use a consent plugin that defers everything except its own modal.
- analitica, Chiacchierare, and tag managers. Google Tag Manager, Intercom, Drift, and Tawk.to scripts can be delayed until user interaction. Most performance plugins have a one-click “Delay” preset for these handles.
- FontAwesome and other icon fonts. Often loaded blocking when only 4 icons are used on the page. Switch to SVG icons or load FontAwesome async.
Managed WordPress hosts in our USA roundup typically include server-level critical CSS, automatic JavaScript deferral, and a CDN with font optimization. The same setup costs a paid plugin and several hours of configuration on cheap shared hosting.
How to Verify the Fix Worked
Don’t trust the plugin’s “Configured!” badge. Verify with three checks:
- Re-run PageSpeed Insights on a fresh URL (Inserisci ?v=test to bust cache). The warning should be gone or limited to one or two essential files.
- Open the page in Chrome Incognito and watch for visual breakage. Misconfigured defer rules cause flashes of unstyled content (FOUC).
- Test the conversion path. Clic “Aggiungi al carrello,” submit a contact form, log in. Over-delayed JavaScript breaks interactive elements without throwing console errors.
If PageSpeed Insights still lists render-blocking resources after you’ve configured everything correctly, the audit probably ran before your plugin finished optimizing. Aspettare 5 minuti, clear all caches (ospite, collegare, CDN), then re-test from a fresh tab.
Domande frequenti
Will eliminating render-blocking resources actually improve my Google ranking?
Indirettamente, sì. The fix improves Largest Contentful Paint, which is one of three Core Web Vitals Google uses as a ranking signal. The signal isn’t huge in isolation, but it’s enough to break ties on competitive queries. The bigger win is conversion: users abandon slow-loading pages, and a 100ms LCP improvement consistently produces measurable revenue lift on commerce sites.
Do I need WP Rocket, or can a free plugin do this?
A free plugin can do most of it. Autoptimize plus Async JavaScript handles 70-80% of render-blocking warnings on a typical WordPress site. WP Rocket and FlyingPress add granular delay-until-interaction controls and automatic critical CSS generation, which are worth the USD 59-60 per year on commercial sites. Per un blog di hobby, the free combo is fine.
Can I fix render-blocking resources without any plugin?
sì, but expect to write code. The defer filter above handles JavaScript. CSS is harder: inline critical CSS manually, change media attributes via theme overrides, or generate critical CSS with the “critico” npm package in a build pipeline. Piano 4-8 hours of developer time, longer if you’re new to WordPress hooks.
Why does PageSpeed Insights still flag render-blocking after I installed a plugin?
Three usual causes: settings aren’t enabled (default installs are conservative), caches haven’t been cleared (the audit is testing old HTML), or your theme enqueues resources in a way the plugin can’t override. Clear all caches, verify settings, then audit a different page to rule out theme-specific issues.
What’s the difference between defer and async?
Both let JavaScript download in parallel with HTML parsing, so neither blocks render. The difference is execution. Async runs the script as soon as it downloads, even mid-parse. Differire waits for parsing to finish first. Use defer for DOM-dependent scripts (most WordPress scripts). Use async for independent scripts like analytics tags.
Will any of this break my site?
It can. Aggressive JavaScript delay or defer rules occasionally break payment forms, widget di chat, or specific theme features. Every plugin lets you whitelist scripts via an exclusion list. Test the conversion path (carrello, Modulo di Contatto, accesso) after every change, and add scripts to the exclusion list when something breaks. Most sites land on a stable configuration within an hour.
Does this affect mobile and desktop equally?
Mobile sees the bigger improvement. Render-blocking penalties scale with connection speed: a resource that costs 200ms on desktop fiber costs 600-800ms on 4G. PageSpeed Insights weights mobile scoring more aggressively for the same reason. Optimize for mobile first.
Pensieri finali
“Eliminate render-blocking resources” reads like homework, but it’s actually a revenue knob. The shortest path is a performance plugin with sensible defaults. The most durable path is auditing what your theme and plugins actually need to load on each page, then cutting the rest. The combination separates “good enough” a partire dal “consistently passing Core Web Vitals on every template.”
If your site is fighting the host (cheap shared plan, slow PHP, niente LiteSpeed), no amount of plugin optimization fully solves the warning. Caching a livello di server, modern PHP, and a real CDN handle a meaningful chunk of work before any plugin runs. I nostri Hosting VPS WordPress guide and Hosting di e-commerce WordPress roundup filter for hosts with the right defaults. Moderno Costruttore WordPress AI platforms also ship with leaner default assets than older page-builders, sidestepping the whole problem rather than fighting it.
