Un test A/B ben progettato può comunque dare un risultato sbagliato se qualcosa si rompe durante l'esecuzione o nell'analisi. Gli errori più insidiosi non sono quelli di calcolo, che uno strumento fa al posto tuo, ma quelli pratici: un traffico diviso male, un'analisi fatta troppo presto, un effetto che svanisce dopo qualche settimana. Ecco i più frequenti e come accorgersene.
Sbilanciamento del campione
Se il test prevede una divisione cinquanta e cinquanta, i due gruppi dovrebbero avere numeri molto vicini. Una piccola differenza è normale, una grande no. Questo problema è noto come sample ratio mismatch, o SRM.
Esempio: dopo due settimane la versione A ha 10.000 visitatori e la B 9.200. Con questi volumi, uno scarto simile è troppo grande per essere casuale. Qualcosa tratta le due versioni in modo diverso. Le cause tipiche:
- la versione B carica più lentamente e alcuni visitatori se ne vanno prima che venga registrato l'ingresso nel test;
- la versione B ha un errore JavaScript che impedisce l'invio dell'evento su certi browser;
- un redirect verso la variante perde i parametri o i cookie per una parte degli utenti;
- i bot vengono filtrati diversamente nelle due versioni.
Un test con SRM non è affidabile, qualunque sia il risultato. Molti strumenti eseguono un controllo automatico, ma vale la pena verificarlo a mano: basta un test del chi quadrato sulle proporzioni osservate rispetto a quelle attese. La regola è semplice: prima di guardare la metrica primaria, controlla la divisione.
Sbirciare i risultati
Controllare l'andamento ogni giorno e fermarsi appena compare la significatività statistica è un errore classico, chiamato in inglese peeking. Ogni controllo è un'occasione in più per un falso positivo: con abbastanza controlli, anche due versioni identiche prima o poi sembreranno diverse.
Le soluzioni sono due:
- decidere la durata in anticipo e guardare il risultato solo alla fine;
- usare metodi sequenziali, progettati apposta per controlli ripetuti, che alcuni strumenti offrono; in questo caso le soglie sono più severe e tengono conto dei controlli.
Guardare i dati durante il test è utile per scoprire problemi tecnici, come errori o SRM. È decidere sull'esito in anticipo che va evitato.
Effetto novità e assuefazione
Una modifica vistosa può attirare clic solo perché è nuova. Gli utenti abituali notano qualcosa di diverso e lo esplorano. Dopo qualche settimana l'interesse si spegne e l'effetto si riduce o sparisce. È l'effetto novità.
Il fenomeno opposto è l'avversione al cambiamento: gli utenti abituali trovano scomoda una nuova disposizione e all'inizio la penalizzano, anche se a lungo termine funziona meglio.
Per riconoscerli:
- osserva l'andamento dell'effetto giorno per giorno: se cala con costanza, sospetta la novità;
- separa nuovi visitatori e visitatori ricorrenti: i nuovi non hanno abitudini da cambiare, quindi il loro risultato è più vicino all'effetto duraturo.
Segmenti scoperti a posteriori
Il test è finito senza differenze significative. Poi qualcuno nota che, tra gli utenti da tablet il martedì, la versione B ha vinto nettamente. È una scoperta? Quasi mai. Con decine di segmenti possibili, qualcuno mostrerà per caso una differenza marcata.
I segmenti scelti dopo aver visto i dati sono buoni per generare nuove ipotesi, non per trarre conclusioni. Se un segmento sembra promettente, va verificato con un nuovo test dedicato.
Interferenze tra test
Se sulla stessa pagina girano contemporaneamente più test, gli effetti possono sommarsi o annullarsi. Un test sul titolo e uno sul pulsante sottostante, eseguiti insieme senza coordinamento, rendono difficile capire chi ha prodotto cosa. Meglio evitarlo, oppure assegnare i visitatori in modo che le combinazioni siano bilanciate.
Contaminazione esterna
Eventi esterni possono influenzare un gruppo più dell'altro: una campagna pubblicitaria che porta traffico diverso, un guasto del sistema di pagamento, una festività. Annotare tutto ciò che accade durante il test aiuta a interpretare risultati strani. Nel mio lavoro tengo un semplice registro con date e avvenimenti per ogni esperimento attivo.
Una lista di controllo finale
Prima di accettare un risultato, verifica:
- la divisione del traffico rispetta le proporzioni previste;
- la durata decisa è stata rispettata;
- la metrica primaria è quella fissata all'inizio;
- l'effetto è stabile nel tempo e non solo nei primi giorni;
- nessun evento esterno rilevante ha colpito un solo gruppo;
- le metriche di controllo non sono peggiorate.
In sintesi
- Controlla sempre la divisione del traffico: uno sbilanciamento rende il test inaffidabile.
- Non fermare il test appena compare la significatività, salvo con metodi sequenziali.
- Osserva l'effetto nel tempo e separa nuovi e ricorrenti per riconoscere l'effetto novità.
- I segmenti scoperti dopo servono a formulare ipotesi, non a trarre conclusioni.
- Annota eventi esterni e test sovrapposti che possono contaminare i risultati.