Il checkout è la pagina in cui si decide la vendita. Il cliente ha già scelto, ha già messo i prodotti nel carrello: se a quel punto la pagina impiega secondi a caricarsi, o il pulsante «Effettua ordine» gira a vuoto, una parte degli acquisti si perde. E il checkout è anche la pagina più difficile da velocizzare, perché non può andare in cache. Vediamo le cause più comuni e come riconoscerle.

Perché il checkout è diverso

Ogni volta che il cliente cambia indirizzo, metodo di spedizione o di pagamento, WooCommerce ricalcola il riepilogo dell’ordine con una richiesta in sottofondo: spedizioni, imposte, sconti, totali. Ognuno di questi ricalcoli fa lavorare PHP, il database e tutti i plugin che si agganciano al carrello. Più plugin intervengono, più ogni passaggio diventa lento.

Causa 1: troppi plugin che si agganciano al carrello

Regole di spedizione elaborate, sconti a cascata, prodotti consigliati nel checkout, campi aggiuntivi, programmi fedeltà, controlli antifrode, plugin di fatturazione: ognuno aggiunge lavoro a ogni ricalcolo. Spesso il problema non è un plugin solo, ma la somma.

Come verificarlo: su una copia del sito o in un orario tranquillo, disattiva i plugin non essenziali uno alla volta e misura il tempo del checkout. Quando il tempo crolla, hai trovato il colpevole.

Causa 2: chiamate a servizi esterni

Calcolo delle tariffe dei corrieri in tempo reale, validazione della partita IVA, controllo dell’indirizzo, gateway di pagamento: se il servizio esterno risponde lentamente, il checkout aspetta. Il server può essere velocissimo e la pagina comunque lenta.

Cosa fare: dove possibile, preferisci tariffe di spedizione a tabella invece del calcolo in tempo reale, e controlla nei registri di WooCommerce (WooCommerce > Stato > Registri) se i plugin dei servizi esterni segnalano errori o tempi lunghi.

Causa 3: il database è cresciuto

Ordini, sessioni dei clienti, dati temporanei, note: un negozio scrive continuamente nel database. Con gli anni alcune tabelle diventano enormi e le query rallentano proprio nelle pagine in cui si vende.

  • valuta l’archiviazione degli ordini ad alte prestazioni (HPOS) di WooCommerce, che salva gli ordini in tabelle dedicate: verifica prima che tutti i tuoi plugin la supportino;
  • controlla che le azioni pianificate non si accumulino in errore (WooCommerce > Stato > Azioni pianificate);
  • usa Database Intelligence per vedere quali query pesano di più.

Causa 4: niente cache degli oggetti

Carrello e checkout non possono essere serviti dalla cache di pagina, ma molti dei dati che usano (impostazioni, prodotti, regole) sono sempre gli stessi. Con Redis attivato dal pannello e un plugin di object cache, questi dati restano in memoria e il database lavora meno. È uno degli interventi che rendono di più proprio sul checkout.

Causa 5: il server è occupato da altro

A volte il checkout è lento non per colpa sua, ma perché il negozio sta facendo altro nello stesso momento:

  • bot che esplorano filtri e varianti o che aggiungono prodotti al carrello a ripetizione;
  • importazioni e sincronizzazioni con gestionali o marketplace lanciate in orario di vendita;
  • report pesanti nel back office.

Su quest’ultimo punto, un caso reale: ci è capitato un negozio che sembrava fermo. La causa era una pagina di report dei clienti lasciata aperta nel back office, che si aggiornava da sola ogni paio di minuti. Ogni aggiornamento lanciava una query lentissima, la successiva partiva prima che la precedente finisse, e in poco tempo tutte le risorse erano occupate da copie della stessa interrogazione. I clienti al checkout aspettavano in fila. La soluzione è stata semplice: chiudere quella pagina e non lasciare aperti report pesanti nelle ore di vendita.

Causa 6: il tema e gli script nel browser

Non tutto il ritardo nasce sul server. Pixel pubblicitari, chat, widget di recensioni e script di tracciamento caricati anche nel checkout rallentano la pagina nel browser del cliente, soprattutto da smartphone. Chiediti se servono davvero in quella pagina: spesso basta caricarli solo dove servono.

Causa 7: versione di PHP datata

Dal pannello DirectAdmin puoi scegliere la versione di PHP. Una versione recente e supportata è in genere più veloce e più sicura. Prima di cambiarla controlla che WooCommerce e i plugin la supportino, e dopo il cambio fai una prova d’acquisto completa.

Come misurare, in pratica

  1. apri il negozio da una finestra anonima, metti un prodotto nel carrello e vai al checkout;
  2. apri gli strumenti per sviluppatori del browser, scheda Rete, e cambia metodo di spedizione: vedrai la richiesta di aggiornamento del riepilogo e quanto impiega;
  3. ripeti la prova in orari diversi: se è lenta solo nelle ore di punta, il problema è di risorse o di traffico; se è lenta sempre, è nel codice o nei plugin.

Quando chiedere aiuto

Se dopo questi controlli il checkout resta lento, apri un ticket dall’area clienti indicando l’indirizzo della pagina, l’orario delle prove e cosa hai già verificato. Guardiamo i consumi del sito e ti diciamo dove va il tempo. E se il negozio è cresciuto oltre il piano, ti consigliamo se è il momento dell’hosting cloud.

Altri articoli su E-commerce

Parliamone

Un hosting che ti spiega le cose, e poi le fa

Questi articoli nascono dalle domande dei nostri clienti. Se vuoi un hosting dove dietro ogni risposta c’è un tecnico vero, parliamone.

  • 4,9 su 5 su Trustpilot264 recensioni, il 96% a cinque stelle
  • Risponde un tecnicoIn italiano, da chi gestisce i server
  • Il trasloco lo facciamo noiSito, database e posta, controllati prima di spostare i DNS