"L'app è lenta" è una delle frasi più comuni nei progetti software, e una delle meno utili. Senza dati specifici su cosa è lento, dove e quando, ottimizzare è cercare a tentoni.
In questa guida vediamo un approccio strutturato alla performance applicativa: cosa misurare, cosa ottimizzare, cosa monitorare nel tempo.
I quattro livelli di performance
Per parlare con precisione, distinguiamo quattro livelli su cui agire:
1. Performance percepita dall'utente
Quanto l'app sembra veloce. Non solo i secondi reali, ma la percezione: feedback immediato a click, animazioni fluide, caricamento progressivo.
2. Performance frontend
Tempi di rendering della pagina, peso delle risorse caricate, fluidità dell'interfaccia. Misurabile con Core Web Vitals.
3. Performance backend
Tempi di risposta delle API, throughput sotto carico, latenza delle query database. Misurabile con APM.
4. Performance infrastrutturale
Uso CPU, memoria, rete, storage. Capacità di reggere picchi. Costi cloud associati.
Tutti e quattro vanno considerati. Ottimizzare uno solo lasciando gli altri compromessi è inefficace.
Le metriche che contano
Per ogni livello, le metriche di riferimento:
| Livello | Metrica chiave | Soglia accettabile |
|---|---|---|
| Frontend | LCP (Largest Contentful Paint) | < 2,5s |
| Frontend | CLS (Cumulative Layout Shift) | < 0,1 |
| Frontend | INP (Interaction to Next Paint) | < 200ms |
| Backend | Tempo medio risposta API | < 200ms (mediana) |
| Backend | P95 risposta API (95° percentile) | < 1s |
| Backend | Throughput | dipende dal caso |
| Infrastruttura | CPU media | < 70% |
| Infrastruttura | Errori 5xx | < 0,1% |
Sotto queste soglie, l'esperienza utente è degradata. Sopra, c'è margine di miglioramento ma non è critico.
Le 6 ottimizzazioni a maggior ROI
In ordine di rapporto effort/risultato:
1. Indicizzazione database
Il bottleneck più comune nelle app non ottimizzate. Una query senza indice su una tabella grande può costare secondi. Con indice, millisecondi.
Effort: ore. Risultato: ordini di grandezza sui tempi di query.
2. Caching delle query frequenti
Dati letti spesso ma cambiati raramente vanno in cache. Riduzione tipica del carico database del 50-80%.
Effort: 1-3 giorni. Risultato: drastico calo del carico backend.
3. Compressione e ottimizzazione asset
Immagini in formati moderni (WebP, AVIF), JavaScript minificato, CSS critico inline, lazy loading. Riduzione tipica del peso pagina del 60-80%.
Effort: 1-2 giorni. Risultato: miglioramento significativo Core Web Vitals.
4. Parallelizzazione delle chiamate
Operazioni indipendenti eseguite in sequenza spesso possono essere parallelizzate. Da N tempi sequenziali a uno solo (il più lento).
Effort: 0,5-2 giorni. Risultato: riduzione 30-70% sui flussi multi-chiamata.
5. Code asincrone per operazioni lente
Email, generazione report, elaborazione media: fuori dal flusso sincrono. L'utente riceve risposta immediata; il lavoro pesante avviene in background.
Effort: 2-5 giorni. Risultato: tempi di risposta drasticamente migliori percepiti.
6. CDN per asset statici
Immagini, CSS, JavaScript serviti da edge geograficamente vicini all'utente. Riduzione latenza per utenti distanti.
Effort: 0,5-1 giorno (se l'infrastruttura cloud lo supporta). Risultato: miglioramento universale.
Strumenti gratuiti per la misurazione
Cinque strumenti che usiamo regolarmente, tutti gratuiti o con piano free generoso:
Lighthouse (Chrome DevTools)
Audit completo Core Web Vitals + accessibilità + SEO + best practice. Punteggio 0-100 per area. Ottimo come baseline.
WebPageTest
Test reali da diverse location e dispositivi. Più realistico di Lighthouse perché simula condizioni di rete varie.
PageSpeed Insights
Analisi Core Web Vitals + suggerimenti di intervento prioritarizzati. Integrazione diretta con Search Console.
Browser DevTools (tab Performance)
Profilazione dettagliata di rendering frontend. Identifica esattamente quale operazione blocca il main thread.
Strumenti APM
Monitoring continuo backend: errori, tempi di risposta, throughput. Diversi vendor con piani free per traffico contenuto.
Approccio strutturato all'ottimizzazione
In un progetto di ottimizzazione applichiamo sempre questa sequenza:
Settimana 1: misura baseline
- Profilazione frontend con Lighthouse + WebPageTest
- Profilazione backend con APM + analisi log
- Audit database (query lente, indici mancanti)
- Audit asset (immagini, JS, CSS)
- Documento di baseline: stato attuale numerico
Settimana 2: quick win
- Fix delle ottimizzazioni a basso effort/alto impatto
- Indici database mancanti
- Compressione asset
- Caching delle query più ripetute
- Misurazione post-intervento
Settimana 3: ottimizzazioni mirate
- Refactor delle parti più critiche
- Parallelizzazione dove possibile
- Code asincrone per operazioni lente
- Misurazione finale, confronto con baseline
Continuo: monitoring
- Setup APM in produzione
- Alert su soglie di degrado
- Review settimanale dei trend
- Re-ottimizzazione quando necessario
Costo di NON ottimizzare
Per dare anchoring concreto:
| Effetto del non ottimizzare | Costo orientativo |
|---|---|
| Bolletta cloud sovradimensionata | +30-100%/mese |
| Tasso di conversione ridotto (per app commerciali) | -10-30% |
| Penalizzazione SEO (Core Web Vitals) | Posizioni perse, traffico ridotto |
| Frustrazione utenti con churn | Difficile quantificare ma reale |
| Bisogno di scalare prima del necessario | Costi infrastruttura anticipati |
Il costo cumulativo del "non ottimizzato" supera quasi sempre l'investimento di un ciclo di ottimizzazione professionale.
La tua app è lenta o costa troppo in cloud?
Eseguiamo audit performance + cloud cost con priorità di intervento. Report dettagliato + opzionale implementazione. Lavoriamo dal codebase e dall'infrastruttura che hai già.
Richiedi un audit performanceConclusione
Le performance applicative non sono un nice-to-have: sono il prerequisito per l'esperienza utente e per l'efficienza dei costi cloud. Trascurarle costa di più, sempre. Investirci in modo strutturato è il modo più rapido per liberare valore già esistente nel sistema.
Misurare, ottimizzare dove conta, monitorare nel tempo. Il ciclo è semplice; eseguirlo con metodo è quello che fa la differenza.
Domande frequenti
Servizi correlati
I servizi di cui parla questo articolo
Sviluppo Software
Trasformiamo la tua idea in software funzionante in 4-8 settimane: app, siti, gestionali, e-commerce. Codice tuo al 100%, supporto continuo, risultati misurabili.
Scopri il servizio →AI Performance & Ottimizzazione
Audit performance e riduzione costi cloud per progetti AI: profiling, ottimizzazione query e caching, CDN, capacity planning, riduzione latenza e billing AWS/Vercel.
Scopri il servizio →

