
On This Page
- Perché la Velocità del Sito è una Metrica di Business
- Come Misurare la Velocità del Tuo Sito
- Benchmark Velocità Sito: Quanto Veloce Basta?
- 14 Tecniche per Velocizzare il Tuo Sito Web
- 1. Ottimizza e Comprimi le Immagini
- 2. Abilita la Cache del Browser
- 3. Usa una Content Delivery Network (CDN)
- 4. Minifica CSS, JavaScript e HTML
- 5. Elimina le Risorse che Bloccano il Rendering
- 6. Implementa il Lazy Loading
- 7. Riduci il Tempo di Risposta del Server (TTFB)
- 8. Abilita la Compressione Gzip o Brotli
- 9. Riduci le Richieste HTTP
- 10. Ottimizza i Font Web
- 11. Precarica le Risorse Critiche
- 12. Code-Split e Tree-Shake del JavaScript
- 13. Ottimizza gli Script di Terze Parti
- 14. Monitora e Testa Continuamente
- Checklist Ottimizzazione Velocità Sito
- Conclusione
Un sito che carica in meno di 2 secondi converte meglio di uno che ne impiega 4. Non è teoria. I dati di Google mostrano che un secondo di ritardo su mobile riduce le conversioni del 20%, e una ricerca di Portent indica una perdita del 4.42% per ogni secondo aggiuntivo.
Il problema delle guide sull'ottimizzazione velocità sito? Si fermano al "perché la velocità conta". Tu lo sai già. Quello che serve è una lista passo dopo passo di cosa sistemare e in che ordine.
Questa guida copre 14 tecniche specifiche per far caricare il tuo sito in meno di 2 secondi. Ognuna con azioni concrete, esempi di codice e impatto sul business. Che tu stia creando un nuovo sito o ottimizzando uno esistente, sono gli stessi passi che usiamo in Vezert per migliorare le performance di ogni progetto.
Perché la Velocità del Sito è una Metrica di Business
Velocità e conversioni vanno di pari passo, e i dati parlano chiaro:
- Amazon ha scoperto che ogni 100ms di latenza in più costano l'1% delle vendite.
- Walmart ha registrato un aumento del 2% nelle conversioni per ogni secondo di miglioramento nel tempo di caricamento.
- Lo studio di Portent ha misurato una diminuzione media del 4.42% nelle conversioni per ogni secondo aggiuntivo di caricamento, su 20 settori diversi.
La velocità influenza anche la SEO direttamente. Google usa i Core Web Vitals (LCP, CLS, INP) come segnali di ranking. Un sito lento non perde solo visitatori, perde anche visibilità nelle ricerche. SEO e sviluppo web non sono più conversazioni separate.
Il punto: tempo di caricamento e tasso di conversione si muovono insieme. Ogni tecnica in questa guida è valutata con questa prospettiva, non solo le performance tecniche, ma cosa fanno per il business.
Come Misurare la Velocità del Tuo Sito
Prima di ottimizzare qualsiasi cosa, serve una baseline. Questi sono gli strumenti che ti danno il quadro più chiaro:
Google PageSpeed Insights (pagespeed.web.dev) fornisce dati Core Web Vitals da utenti reali (dati di campo) e test in laboratorio. Questo è lo strumento più importante perché mostra cosa Google misura effettivamente per il ranking.
Lighthouse (integrato in Chrome DevTools, scheda Audits) esegue audit dettagliati delle performance con raccomandazioni specifiche. Apri DevTools, vai al pannello Lighthouse e lancia un test mobile.
WebPageTest (webpagetest.org) genera grafici waterfall che mostrano esattamente dove viene speso il tempo durante il caricamento. Utile per diagnosticare colli di bottiglia specifici.
GTmetrix (gtmetrix.com) combina i dati Lighthouse con una timeline visiva e tracking storico.
Metriche Chiave da Tracciare
- LCP (Largest Contentful Paint): Quando il contenuto principale diventa visibile. Target: sotto 2.5 secondi.
- CLS (Cumulative Layout Shift): Quanto la pagina si sposta durante il caricamento. Target: sotto 0.1.
- INP (Interaction to Next Paint): Quanto velocemente la pagina risponde ai click. Target: sotto 200ms.
- TTFB (Time to First Byte): Quanto velocemente risponde il server. Target: sotto 800ms.
Esegui questi test sia su mobile che su desktop. Mobile è ciò che Google usa principalmente per il ranking, ed è dove la maggior parte dei problemi di velocità emerge.
Benchmark Velocità Sito: Quanto Veloce Basta?
Ecco dove dovrebbero arrivare i tuoi numeri. Se una metrica cade nella colonna "Scarso", è quella la priorità assoluta.
| Metrica | Scarso | Da Migliorare | Buono | Impatto Business |
|---|---|---|---|---|
| LCP | > 4.0s | 2.5s - 4.0s | < 2.5s | Alto: visibilità contenuto principale |
| CLS | > 0.25 | 0.1 - 0.25 | < 0.1 | Alto: stabilità visiva e trust |
| INP | > 500ms | 200 - 500ms | < 200ms | Alto: reattività ai click |
| TTFB | > 1.8s | 0.8 - 1.8s | < 0.8s | Medio: efficienza server |
| Peso Totale Pagina | > 5 MB | 2 - 5 MB | < 2 MB | Medio: velocità caricamento generale |
| Time to Interactive | > 7.3s | 3.8 - 7.3s | < 3.8s | Alto: prontezza all'uso |
Punta a tutti i Core Web Vitals nella fascia "Buono" contemporaneamente. Sistemare LCP ignorando CLS sposta solo il problema. Usa PageSpeed Insights per controllare i dati di campo da utenti reali, non solo i punteggi di laboratorio.

14 Tecniche per Velocizzare il Tuo Sito Web
Queste tecniche sono ordinate approssimativamente per impatto. Inizia dall'alto e procedi verso il basso. Ognuna include cosa fare, come farlo e cosa significa per i tuoi risultati.
1. Ottimizza e Comprimi le Immagini
Le immagini sono di solito la parte più pesante della pagina. Nella pagina web media, rappresentano oltre il 40% dei byte totali secondo HTTP Archive.
La soluzione è semplice:
- Converti le immagini in formato WebP o AVIF, che sono 25-50% più piccole di JPEG/PNG alla stessa qualità.
- Servi immagini responsive usando
srcsetcosì gli utenti mobile non scaricano file da desktop. - Imposta attributi
widtheheightespliciti per prevenire i layout shift (migliora CLS). - Comprimi aggressivamente. La maggior parte delle immagini può perdere 40-60% di peso senza differenze visibili.
<img
src="/hero.webp"
srcset="/hero-480.webp 480w, /hero-800.webp 800w, /hero-1200.webp 1200w"
sizes="(max-width: 800px) 100vw, 1200px"
width="1200" height="630"
alt="Screenshot prodotto"
loading="lazy"
/>
Impatto business: L'ottimizzazione immagini riduce tipicamente il peso della pagina del 30-50%, migliorando direttamente LCP e tempo di caricamento totale. Per landing page dove l'immagine hero è l'elemento LCP, questa è spesso la vittoria più grande.
2. Abilita la Cache del Browser
Quando un visitatore di ritorno carica il tuo sito, la cache del browser determina se le risorse vengono riscaricate o servite dalla memoria locale. Senza header cache corretti, ogni visita è come la prima.
Imposta gli header Cache-Control sulle risorse statiche:
# Risorse statiche (immagini, font, JS, CSS)
Cache-Control: public, max-age=31536000, immutable
# Pagine HTML
Cache-Control: public, max-age=0, must-revalidate
Il flag immutable dice ai browser di non controllare nemmeno aggiornamenti sui file versionati. Per l'HTML, usa must-revalidate così gli utenti ottengono sempre contenuti freschi mentre le risorse restano in cache.
Se usi un framework come Next.js (che usiamo in Vezert), le risorse statiche hanno nomi file con content-hash di default, rendendo sicuri cache lifetime lunghi.
Impatto business: La cache del browser può rendere i caricamenti ripetuti dell'80% più veloci. Per siti dove gli utenti visitano più pagine per sessione, come siti corporate o web portal, questo si traduce in un'esperienza visibilmente più fluida.
3. Usa una Content Delivery Network (CDN)
Una content delivery network mette in cache il tuo sito su server in tutto il mondo così gli utenti vengono serviti dalla località più vicina. Senza CDN, un visitatore a Tokyo fa un viaggio di andata e ritorno a un server in Virginia per ogni richiesta.
Opzioni popolari:
- Vercel Edge Network (integrato con i deploy Next.js)
- Cloudflare (il piano gratuito copre la maggior parte dei siti)
- AWS CloudFront (per infrastrutture custom)
Una CDN riduce la latenza del 50-70% per utenti lontani dal server di origine. Scarica anche traffico dal tuo hosting, il che significa performance migliori sotto carico.
Per siti internazionali con utenti in più regioni, una CDN non è opzionale. È l'unico modo per ottenere una velocità di caricamento sito web costantemente sotto 2 secondi per un pubblico globale.
Impatto business: Il deploy CDN taglia tipicamente TTFB di 100-300ms per utenti lontani. Se il tuo sito serve più paesi, questa è spesso la differenza tra un punteggio "Buono" e "Da Migliorare" sul TTFB.
4. Minifica CSS, JavaScript e HTML
La minificazione rimuove spazi bianchi, commenti e caratteri non necessari dai file CSS e JavaScript. Non cambia cosa fa il codice, solo lo rende più piccolo.
I build tool moderni gestiscono questo automaticamente:
- Next.js / Webpack / Vite: la minificazione è attiva di default nei build di produzione.
- CSS standalone: usa
cssnanoolightningcss. - JS standalone:
terseroesbuild.
Se non usi un build tool, strumenti online come Minifier.org funzionano per file occasionali.
Impatto business: La minificazione riduce tipicamente le dimensioni dei file del 10-20%. Da solo suona modesto, ma combinato con la compressione (tecnica 8), l'effetto si moltiplica. Ogni kilobyte conta sulle connessioni mobile.
5. Elimina le Risorse che Bloccano il Rendering
CSS e JavaScript che bloccano il rendering impediscono al browser di disegnare qualsiasi cosa finché non finiscono di scaricarsi ed eseguirsi. Questa è una delle cause più comuni di un punteggio LCP alto.
Le soluzioni:
- Inserisci CSS critico direttamente in
<head>così il primo paint non aspetta un foglio di stile esterno. - Rimanda CSS non critico usando
media="print" onload="this.media='all'". - Aggiungi
asyncodeferai tag script così JavaScript non blocca il rendering.
<!-- Rimanda CSS non critico -->
<link rel="stylesheet" href="/non-critical.css" media="print" onload="this.media='all'">
<!-- Rimuovi JavaScript -->
<script src="/analytics.js" defer></script>
Lighthouse segnala specificamente le risorse che bloccano il rendering. Apri il tuo audit, cerca l'opportunità "Elimina risorse che bloccano il rendering" e lavora sui file elencati.
Impatto business: Rimuovere le risorse che bloccano il rendering può migliorare First Contentful Paint di 1-3 secondi, accelerando direttamente quanto velocemente gli utenti vedono contenuti significativi. Questo è critico per siti di qualità che devono fare una buona prima impressione.
Sistemare la velocità dopo il lancio è sempre più costoso e limitato che costruirla fin dall'inizio. Se stai pianificando un nuovo sito o un re-design, fai delle performance un requisito dal giorno uno, non qualcosa da ottimizzare dopo.
6. Implementa il Lazy Loading
Il lazy loading rimanda immagini e video che sono sotto la piega finché l'utente non scorre fino a loro. Questo significa che il browser scarica solo ciò che è immediatamente visibile, riducendo significativamente il peso iniziale della pagina.
L'approccio più semplice è l'attributo nativo loading="lazy":
<img src="/team-photo.webp" loading="lazy" width="800" height="600" alt="Foto team" />
NON fare lazy-loading sull'immagine hero o su contenuti above-the-fold. Quelli dovrebbero caricarsi immediatamente (usa loading="eager" o ometti l'attributo) perché di solito sono l'elemento LCP.
Per maggiore controllo, usa l'Intersection Observer API per triggerare il caricamento quando gli elementi entrano nel viewport.
Impatto business: Il lazy loading riduce tipicamente il peso iniziale della pagina del 30-40%. Per pagine content-heavy come blog o pagine portfolio, i risparmi sono ancora maggiori perché la maggior parte delle immagini sono sotto la piega.
7. Riduci il Tempo di Risposta del Server (TTFB)
TTFB (Time to First Byte) misura quanto tempo impiega il server a iniziare a rispondere. Tutto il resto, rendering, immagini, script, aspetta questo. Se TTFB è lento, nient'altro può compensare.
Cause comuni e soluzioni:
- Hosting lento: Gli hosting shared economici hanno spesso TTFB sopra 1 secondo. Passa a un provider managed o deploy edge (Vercel, Netlify, Cloudflare Pages).
- Query database non ottimizzate: Profila le query lente, aggiungi indici, metti in cache le letture frequenti.
- Nessuna cache server-side: Aggiungi Redis o Memcached per contenuti dinamici. Per siti statici, pre-render al momento del build.
- CDN mancante: Vedi tecnica 3.
Secondo web.dev, un TTFB sotto 800ms è il target. Sotto 200ms è ciò che ottieni con hosting statico o edge functions.
Impatto business: TTFB influenza ogni singolo caricamento di pagina. Ridurlo da 1.5s a 300ms ti dà oltre un secondo di margine per tutto il resto, spesso la differenza tra caricare sotto 2 secondi o no.

8. Abilita la Compressione Gzip o Brotli
I file basati su testo (HTML, CSS, JavaScript, JSON, SVG) si comprimono estremamente bene. Gzip riduce le loro dimensioni del 60-80%. Brotli, l'alternativa più recente, comprime 15-20% meglio di Gzip.
La maggior parte dei provider hosting e CDN abilita Gzip di default. Brotli richiede HTTPS e potrebbe necessitare configurazione esplicita su server custom.
Per verificare: apri Chrome DevTools, vai alla scheda Network, e controlla l'header Content-Encoding sulle tue risposte. Dovresti vedere br (Brotli) o gzip.
Impatto business: Se la compressione non è abilitata, stai servendo file 3-5x più grandi del necessario. Questa è una delle soluzioni più facili con il payoff più alto, specialmente per siti con molto JavaScript.
9. Riduci le Richieste HTTP
Ogni file che il browser deve scaricare, ogni foglio CSS, ogni script, ogni immagine, è una richiesta HTTP. Più richieste significano più andate e ritorni, più latenza, e più tempo prima che la pagina sia utilizzabile.
Passaggi per ridurre le richieste:
- Combina file CSS dove possibile (la maggior parte dei bundler lo fa).
- Inserisci CSS critico direttamente nell'HTML
<head>per eliminare un andata e ritorno. - Usa CSS sprite o SVG inline per icone piccole invece di file immagine separati.
- Rimuovi CSS e JavaScript inutilizzati. Strumenti come la scheda Coverage di Chrome DevTools mostrano esattamente quali codice viene eseguito e quali no.
Impatto business: Passare da 80 richieste HTTP a 40 può togliere 500ms-1s dal tempo di caricamento su connessioni più lente. Questo conta di più per utenti mobile, che rappresentano ancora la maggior parte del traffico web.
10. Ottimizza i Font Web
I font personalizzati sono una fonte comune di testo invisibile (FOIT) o layout shift (FOUT). Se il file del font impiega 2 secondi a scaricarsi, gli utenti vedono o niente o un flash di testo fallback.
Sistema con:
@font-face {
font-family: 'Inter';
src: url('/fonts/inter-var.woff2') format('woff2');
font-display: swap;
unicode-range: U+0000-00FF;
}
font-display: swapmostra immediatamente il testo fallback, poi lo scambia quando il font si carica.- Subsetta i tuoi font per includere solo i caratteri che usi effettivamente (
unicode-range). - Usa font variabili quando possibile. Un file sostituisce 4-6 varianti di peso/stile.
- Self-hosting dei font invece di caricare da Google Fonts per evitare un lookup DNS extra.
Impatto business: L'ottimizzazione font previene testo invisibile durante il caricamento e riduce CLS. Per siti corporate brand-heavy, questo mantiene la prima impressione pulita invece che instabile.
11. Precarica le Risorse Critiche
Il browser scopre le risorse mentre parsa l'HTML, il che significa che file profondamente annidati (font referenziati in CSS, immagini in background CSS) vengono trovati tardi. Il preload dice al browser di iniziare a recuperarli prima.
<!-- Precarica immagine hero (l'elemento LCP) -->
<link rel="preload" as="image" href="/hero.webp" type="image/webp">
<!-- Precarica font principale -->
<link rel="preload" as="font" href="/fonts/inter-var.woff2" type="font/woff2" crossorigin>
<!-- Preconnect a origini di terze parti -->
<link rel="preconnect" href="https://fonts.googleapis.com">
Sii selettivo. Precaricare troppe risorse vanifica lo scopo perché tutto compete per la banda. Precarica solo l'immagine LCP, il font principale, e qualsiasi connessione di terze parti critica.
Impatto business: Precaricare solo l'immagine LCP può migliorare Largest Contentful Paint di 200-500ms. Combinato con preconnect a origini di terze parti, è basso sforzo, alto ritorno.
12. Code-Split e Tree-Shake del JavaScript
Spedire un singolo bundle JavaScript massiccio significa che ogni utente scarica codice per pagine che potrebbe non visitare mai. Il code splitting rompe quel bundle in chunk più piccoli caricati on demand.
In framework come Next.js e React:
// Import dinamico - carica solo quando necessario
const HeavyComponent = dynamic(() => import('./HeavyComponent'), {
loading: () => <Skeleton />,
});
Il tree-shaking rimuove export inutilizzati dal tuo bundle al momento del build. I bundler moderni (Webpack 5, Vite, Turbopack) lo fanno automaticamente per ES modules, ma si rompe con la sintassi CommonJS require().
Controlla le dimensioni del tuo bundle con strumenti come @next/bundle-analyzer o source-map-explorer per trovare i maggiori colpevoli.
Impatto business: Un'applicazione ben splittata può ridurre il payload JavaScript iniziale del 40-60%. Meno JavaScript significa Time to Interactive più veloce, che influenza direttamente quanto rapidamente gli utenti possono interagire con il tuo sito.
13. Ottimizza gli Script di Terze Parti
Analytics, widget chat, script pubblicitari, embed social: gli script di terze parti sono spesso gli elementi più pesanti su una pagina, e hai il minor controllo su di essi.
Passaggi per gestirli:
- Fai audit di tutto. Apri Chrome DevTools, vai alla scheda Network, filtra per "third-party," e controlla quanto costa ogni script in dimensioni e tempo.
- Rimanda script non critici. Analytics e widget chat non devono caricarsi prima che la pagina sia utilizzabile.
- Usa
loading="lazy"per embed (YouTube, mappe, feed social). - Sostituisci widget pesanti con alternative più leggere. Un widget chat da 300KB potrebbe avere un'alternativa da 30KB.
- Stabilisci un budget script. Se uno script di terze parti aggiunge più di 50ms al tempo di caricamento, chiediti se se lo merita.
Impatto business: Abbiamo visto siti dove gli script di terze parti rappresentavano oltre il 60% del JavaScript totale. Ripulirli può togliere secondi dal tempo di caricamento e migliorare drasticamente INP (reattività alle interazioni).
14. Monitora e Testa Continuamente
L'ottimizzazione velocità non è un progetto una tantum. Nuove feature, aggiornamenti contenuti e upgrade dipendenze possono degradare silenziosamente le performance se nessuno controlla.
Imposta monitoraggio continuo:
- Google Search Console traccia i Core Web Vitals da utenti reali nel tempo. Controlla il report "Core Web Vitals" mensilmente.
- Lighthouse CI (o simili) lancia test performance nella tua pipeline di deploy così le regressioni vengono beccate prima di raggiungere gli utenti.
- Strumenti Real User Monitoring (RUM) come Vercel Analytics o la libreria web-vitals catturano dati di campo reali dai tuoi visitatori.
Crea un budget performance: definisci valori massimi per peso pagina, dimensione JavaScript e LCP che triggerano allarmi quando superati.
Impatto business: I team che monitorano le performance beccano le regressioni 10x più velocemente di quelli che fanno audit trimestrali. L'ottimizzazione post-lancio funziona solo se hai i dati per vedere cosa è cambiato e quando.
Serve Aiuto con l'Ottimizzazione Velocità Sito?
Eseguiamo audit performance e implementiamo queste tecniche in ogni progetto. Fai caricare il tuo sito in meno di 2 secondi.
Richiedi un Audit PerformanceChecklist Ottimizzazione Velocità Sito
Usala come check pass/fail rapido per il tuo sito. Se ti mancano più di alcuni di questi, inizia con quelli che influenzano i Core Web Vitals per primi.
Server e Infrastruttura
- TTFB è sotto 800ms in tutte le regioni
- Una content delivery network (CDN) sta servendo risorse statiche
- Il tempo di risposta del server è stabile sotto picchi di traffico
- La compressione Gzip o Brotli è abilitata per file testuali
Immagini e Media
- Tutte le immagini sono in formato WebP o AVIF
- Le immagini responsive usano
srcsetper diverse dimensioni schermo - Le immagini sotto la piega usano
loading="lazy" - Tutte le immagini hanno attributi
widtheheightespliciti
CSS e JavaScript
- CSS e JS sono minificati in produzione
- CSS critico è inserito in
<head> - I bundle JavaScript sono code-split per route
- CSS e JS inutilizzati sono rimossi (controlla con la scheda Coverage)
- Script che bloccano il rendering usano
asyncodefer
Font
- I font web usano
font-display: swap - I font sono subsettati ai range di caratteri richiesti
- Il font primario è precaricato con
<link rel="preload">
Monitoraggio
- Core Web Vitals sono tracciati in Google Search Console
- Test performance girano nella pipeline CI/CD
- Script di terze parti sono auditati trimestralmente
- Budget peso pagina è definito e applicato
Questa checklist copre lo stesso terreno di un audit sito completo. Se il tuo sito passa tutti questi, le performance del tuo sito web sono in buona forma.
Pronto a Migliorare la Velocità del Tuo Sito?
Da audit performance a ottimizzazione completa, aiutiamo le aziende a caricare in meno di 2 secondi e convertire più visitatori.
Parla del Tuo ProgettoConclusione
L'ottimizzazione velocità sito web non è una grande soluzione. Sono 14 piccole che si sommano. Immagini, cache, CDN, compressione, risorse che bloccano il rendering, font, lazy loading, risposta server, code splitting e monitoraggio, ognuna toglie tempo, e insieme ti portano sotto 2 secondi.
Inizia con il tuo punteggio PageSpeed Insights. Sistema prima quello che segnala. Lavora attraverso questa lista dalla tecnica 1 alla 14, misurando dopo ogni cambiamento. Non devi fare tutto subito, ma devi farli.
Il business case è semplice: siti più veloci convertono meglio, rankano più in alto, e costano meno da servire. Ogni secondo che togli dal tempo di caricamento è soldi.
Se vuoi aiuto, Vezert costruisce velocità in ogni progetto fin dall'inizio. Usiamo le stesse tecniche elencate qui in tutto il nostro processo di sviluppo web, e puoi vedere i risultati nel nostro portfolio. La velocità non è qualcosa che sistemiamo dopo. È come costruiamo.

On This Page
- Perché la Velocità del Sito è una Metrica di Business
- Come Misurare la Velocità del Tuo Sito
- Benchmark Velocità Sito: Quanto Veloce Basta?
- 14 Tecniche per Velocizzare il Tuo Sito Web
- 1. Ottimizza e Comprimi le Immagini
- 2. Abilita la Cache del Browser
- 3. Usa una Content Delivery Network (CDN)
- 4. Minifica CSS, JavaScript e HTML
- 5. Elimina le Risorse che Bloccano il Rendering
- 6. Implementa il Lazy Loading
- 7. Riduci il Tempo di Risposta del Server (TTFB)
- 8. Abilita la Compressione Gzip o Brotli
- 9. Riduci le Richieste HTTP
- 10. Ottimizza i Font Web
- 11. Precarica le Risorse Critiche
- 12. Code-Split e Tree-Shake del JavaScript
- 13. Ottimizza gli Script di Terze Parti
- 14. Monitora e Testa Continuamente
- Checklist Ottimizzazione Velocità Sito
- Conclusione



