Numeri e redditività

Correlazione e causa: i quattro casi in cui un numero sembra spiegare un altro

Le quattro trappole che fanno sembrare un numero la causa di un altro, con un esempio alberghiero ciascuna e un conto stratificato che ribalta la conclusione.

12 min di lettura 2.510 parole

Nello storico di quasi ogni struttura le giornate a prezzo alto sono anche le giornate piene. La lettura immediata — alzare il prezzo riempie l’albergo — ha l’ordine dei fatti rovesciato: era la domanda alta a far salire il prezzo. Chi non separa le due cose alza le tariffe nelle date in cui non c’è nessuno da convincere.

Le trappole che producono questo errore sono quattro — causa invertita, variabile nascosta, selezione dei casi guardati, coincidenza su pochi numeri — e si riconoscono da come sono nati i dati, non da quanto è forte il legame fra le colonne.

Tutti gli esempi che seguono sono costruiti su una stessa struttura ipotetica: un tre stelle superiore di 80 camere in un capoluogo del nord Italia, con domanda mista fra lavoro infrasettimanale e turismo nel fine settimana.

Quattro modi di sbagliare la stessa lettura#

Le quattro trappole non sono varianti dello stesso errore: hanno cause diverse e rimedi diversi, e il rimedio giusto per una non funziona per le altre.

Trappola Come si presenta in albergo Segnale che la rivela Rimedio
Causa invertita Le date vendute care sono le date piene Il prezzo è stato deciso dopo aver visto la domanda Confrontare a parità di domanda attesa, non a consuntivo
Variabile nascosta Prezzo e occupazione salgono insieme nei mesi di punta Esiste un terzo fattore che muove entrambi Stratificare per quel fattore e ricalcolare dentro i gruppi
Selezione La tariffa media esiste solo per le camere vendute Le osservazioni mancanti non sono a caso Passare a una misura calcolata sulle camere disponibili
Coincidenza Un indicatore del cruscotto «esplode» in una settimana Pochi casi, o molti confronti guardati insieme Fissare prima la domanda, poi guardare i dati

Causa invertita: il prezzo segue la domanda#

È la trappola più costosa del settore. In una struttura a tariffe dinamiche il prezzo non è deciso a caso: sale quando le prenotazioni arrivano in anticipo e scende quando l’andamento delle prenotazioni giorno per giorno resta indietro. Il prezzo è una conseguenza della domanda prevista, e chi mette prezzo e occupazione nello stesso foglio misura la propria regola di pricing, non la reazione degli ospiti.

Sessanta date dello scorso anno, tre stelle superiore di 80 camere

Trenta date con prenotazioni in anticipo sopra la media: prezzo finale medio
165,00 euro
Camere vendute in media in quelle date
74 su 80, cioè 92,50 per cento
Trenta date con prenotazioni in anticipo sotto la media: prezzo finale medio
118,00 euro
Camere vendute in media in quelle date
51 su 80, cioè 63,75 per cento
Differenza di prezzo: 165,00 meno 118,00
47,00 euro
Differenza di occupazione: 92,50 meno 63,75
28,75 punti
Pendenza apparente: 28,75 diviso 47,00
0,612 punti di occupazione per ogni euro in più
Variazione relativa dell’occupazione: 28,75 diviso 78,125
0,368
Variazione relativa del prezzo: 47,00 diviso 141,50
0,332
Reazione apparente della domanda al prezzo: 0,368 diviso 0,332
più 1,11

Il risultato dice che ogni euro in più porta 0,61 punti di occupazione e che la domanda cresce dell’1,11 per cento per ogni punto percentuale di aumento del prezzo. Detta così non ci crede nessuno. Disegnata come una retta che sale, invece, viene creduta spesso.

La causa sta nell’altra colonna. Le date che si stavano riempiendo hanno ricevuto un prezzo alto e si sono riempite lo stesso, perché la domanda c’era. Nelle altre il prezzo è sceso, e non è bastato.

Stimare la reazione al prezzo sullo storico, senza controlli

Prima o poi qualcuno esporta due colonne dal gestionale, tariffa media e occupazione giorno per giorno, traccia la retta e ne ricava la reazione della domanda al prezzo. Il risultato ha quasi sempre il segno sbagliato, cioè dice che alzare conviene sempre. Su quel numero viene poi costruito un aumento generalizzato che colpisce anche le date deboli, dove l’unico effetto è perdere le poche prenotazioni che c’erano. Il difetto non è nel metodo statistico: è che quei prezzi li hai decisi tu guardando la domanda, quindi il modello impara la tua regola di pricing e non il comportamento degli ospiti. Una stima della reazione al prezzo ha senso solo su variazioni decise per motivi indipendenti dalla domanda attesa di quella data.

Variabile nascosta: il tipo di giornata spiega entrambe le colonne#

Qui il legame fra le due colonne è reale, ma lo produce un terzo fattore che le muove entrambe. Nella struttura dell’esempio le giornate infrasettimanali hanno domanda di lavoro, prezzo alto e riempimento alto; i fine settimana hanno domanda turistica, prezzo più basso e riempimento più basso. Messe insieme, le due colonne salgono e scendono nello stesso verso.

Il rimedio è stratificare: dividere le giornate in gruppi omogenei e rifare il confronto dentro ogni gruppo. Dodici settimane, 84 giornate: 48 fra lunedì e giovedì, 36 fra venerdì e domenica. Dentro ogni gruppo le giornate si dividono a metà fra quelle vendute sopra e sotto il prezzo mediano del gruppo.

Gruppo di giornate Giornate Tariffa media Camere vendute su 80 Occupazione RevPAR
Lun–gio, prezzo alto 24 150,00 68 85,00% 127,50
Lun–gio, prezzo basso 24 130,00 73 91,25% 118,63
Ven–dom, prezzo alto 18 105,00 46 57,50% 60,38
Ven–dom, prezzo basso 18 85,00 52 65,00% 55,25
Tutte, aggregate 84 124,14 61,3 76,61% 95,10

Aggregando i gruppi restano due punti soltanto: giornate infrasettimanali con tariffa media 139,65 euro e occupazione 88,13 per cento, fine settimana con tariffa media 94,39 euro e occupazione 61,25 per cento. Prezzo più alto di 45,26 euro, occupazione più alta di 26,88 punti, correlazione sulle 84 giornate pari a più 0,78.

Dentro ogni gruppo il segno si rovescia: fra lunedì e giovedì 20 euro in più valgono 6,25 punti di occupazione in meno, fra venerdì e domenica valgono 7,50 punti in meno. La stessa tabella dice due cose opposte a seconda di come la si aggrega.

effetto=gwg×(yg,altoyg,basso)
effetto = ∑_g w_g × ( y_g,alto – y_g,basso )
w_gquota delle giornate del gruppo g sul totale delle giornate, come frazioney_{g,alto}risultato medio del gruppo g nelle giornate a prezzo altoy_{g,basso}risultato medio dello stesso gruppo nelle giornate a prezzo bassola somma corre su tutti i gruppi omogenei
L'effetto onesto è la media dei confronti fatti dentro i gruppi, pesata per quanto pesa ogni gruppo: non è il confronto fatto sui totali

Effetto del prezzo alto, aggregato e stratificato

Peso delle giornate lun–gio
48 diviso 84 = 0,5714
Peso delle giornate ven–dom
36 diviso 84 = 0,4286
Effetto sull’occupazione lun–gio
85,00 meno 91,25 = meno 6,25 punti
Effetto sull’occupazione ven–dom
57,50 meno 65,00 = meno 7,50 punti
Effetto sul RevPAR lun–gio
127,50 meno 118,63 = più 8,87 euro
Effetto sul RevPAR ven–dom
60,38 meno 55,25 = più 5,13 euro
Effetto stratificato sull’occupazione: 0,5714 per meno 6,25 più 0,4286 per meno 7,50
meno 6,79 punti
Lettura aggregata senza stratificare: più 26,88 punti
Effetto stratificato sul RevPAR: 0,5714 per 8,87 più 0,4286 per 5,13
più 7,27 euro

Una volta stratificato, il prezzo alto costa occupazione e guadagna RevPAR. È una conclusione difendibile, ed è l’opposto di quella che si ricava dai totali, dove l’occupazione sembrava salire con il prezzo di 26,88 punti.

Selezione: la tariffa media esiste solo per le camere vendute#

Il terzo caso riguarda quali righe finiscono nel conto. La tariffa media si calcola sulle camere vendute, e le camere invendute non hanno un prezzo nel database. Un prezzo troppo alto non lascia quindi traccia nella tariffa media: lascia traccia solo nel numero di righe che mancano.

Venti date confrontabili, stessa struttura, stessa stagione

Dieci date vendute a 220,00 euro: tre giornate a 68 camere, sette giornate a 20 camere
Camere vendute
3 per 68 più 7 per 20 = 204 più 140 = 344, su 10 per 80 = 800 disponibili
Dieci date vendute a 175,00 euro: 56 camere ogni giorno, cioè 560 su 800 disponibili
Tariffa media a 220 euro: 220,00. Tariffa media a 175 euro: 175,00
Occupazione a 220 euro: 344 diviso 800
43,00 per cento
Occupazione a 175 euro: 560 diviso 800
70,00 per cento
RevPAR a 220 euro: 220,00 per 0,43
94,60 euro
RevPAR a 175 euro: 175,00 per 0,70
122,50 euro
Ricavo camere: 75.680,00 contro 98.000,00 euro, cioè 22.320,00 euro di differenza

Guardando le prenotazioni ricevute, il prezzo alto vince di 45 euro a camera. Guardando le camere disponibili, perde 27,90 euro di RevPAR al giorno e 22.320 euro sulle dieci date. Le sette giornate quasi vuote a 220 euro non hanno abbassato la tariffa media di un centesimo: le camere invendute non compaiono.

La stessa trappola compare in altre forme: valutare una promozione sulle sole prenotazioni che l’hanno usata, giudicare un segmento sulle sole date in cui era ammesso, misurare l’anticipo di prenotazione sulle sole date che non erano già piene. Ogni volta che una regola operativa decide quali righe esistono, quelle righe non rispondono più alla tua domanda.

Coincidenza: dodici confronti e uno esce grande#

La quarta trappola non ha bisogno di alcun meccanismo: bastano pochi casi e molti sguardi. Se ogni settimana confronti dodici indicatori con la settimana prima, e consideri grande ogni scarto che il caso da solo produrrebbe in meno del 5 per cento dei casi, la probabilità che almeno uno dei dodici risulti grande per solo caso è 1 meno 0,95 elevato alla dodicesima, cioè il 46,0 per cento.

Quasi una riunione su due parte da un allarme finto, e l’allarme finto non è innocuo: consuma la riunione, genera una spiegazione costruita a posteriori, e quella spiegazione diventa una regola che nessuno verificherà più. Il rimedio non è statistico, è procedurale: decidere prima quali due o tre numeri contano e sopra quale soglia si interviene.

Come si costruisce un confronto che regge#

Due strade, in ordine di costo crescente.

Stratificare. Definisci gruppi di giornate simili per domanda attesa: giorno della settimana, mese, evento in città, festività. Confronta dentro i gruppi e ricomponi con i pesi, come nella formula qui sopra. Costa mezza giornata e non cambia nulla nel modo di vendere. Il limite è che corregge solo i fattori che hai messo nei gruppi.

Disegnare una prova. Scegli le date che riceveranno il prezzo diverso prima di guardare l’andamento delle prenotazioni, e scegliile con un criterio che non dipende dalla domanda attesa: per esempio, alternare i mercoledì fra tariffa A e tariffa B per otto settimane. Così il prezzo smette di essere una conseguenza della domanda e diventa una causa isolabile. È il principio di una prova controllata sulle tariffe. Costa qualcosa in ricavo durante il periodo di prova, ed è l’unico modo di ottenere un numero su cui poi si può davvero decidere.

Quando anche la stratificazione non basta#

La stratificazione ha un difetto che quasi nessuno dichiara: corregge solo ciò che hai già pensato. Nell’esempio resta dentro un pezzo di causa invertita. Fra lunedì e giovedì le 24 giornate a 150 euro non sono identiche a quelle a 130: sono le giornate in cui il prezzo è salito perché la domanda si stava muovendo. È stato tolto l’effetto del giorno della settimana, non quello della domanda residua. L’effetto vero del prezzo sull’occupazione è quindi peggiore del meno 6,79 punti calcolato.

Il secondo limite riguarda i gruppi troppo fini. Ogni variabile aggiunta moltiplica i gruppi, e con 84 giornate si arriva presto a gruppi da tre o quattro casi, dove le differenze sono rumore. Sotto una certa numerosità stratificare peggiora le cose, e il segnale è quando i gruppi cominciano ad avere segni opposti senza una ragione.

Il terzo limite riguarda le prove. Un risultato ottenuto alternando i mercoledì di ottobre vale per i mercoledì di ottobre, con quel mix di segmenti e quelle tariffe dei concorrenti: non vale per agosto e non vale per un aumento tre volte più grande. Una reazione della domanda al prezzo misurata bene è un numero locale.

Il quarto limite è il più scomodo. A volte un confronto onesto non esiste, perché in tutta la storia della struttura il prezzo non è mai stato deciso indipendentemente dalla domanda. Allora la risposta corretta è che il dato non c’è: si decide per ragioni di posizionamento e si mette in calendario una prova.

Cosa fare lunedì mattina#

  1. Prendi l’ultimo grafico in cui due numeri sembravano spiegarsi a vicenda e scrivi quale dei due è stato deciso prima. Se è stato deciso guardando l’altro, hai causa invertita.
  2. Riclassifica lo storico degli ultimi tre mesi in gruppi omogenei di giornate: giorno della settimana, presenza o assenza di un evento in città. Bastano quattro o sei gruppi.
  3. Rifai dentro ogni gruppo il confronto che ti interessava e ricomponi con i pesi delle giornate. Confronta il risultato con quello che avevi ricavato sui totali.
  4. Sostituisci la tariffa media con il RevPAR in ogni confronto fra periodi o fasce di prezzo: ha le camere disponibili al denominatore e non nasconde le date invendute.
  5. Scrivi l’elenco dei due o tre indicatori su cui interverrai davvero, con la soglia, e smetti di commentare gli scarti settimanali degli altri.
  6. Scegli una domanda sul prezzo a cui vuoi rispondere davvero e disegna la prova: quali date, quale differenza di tariffa, per quante settimane, deciso prima di guardare le prenotazioni.
  7. Quando in riunione qualcuno spiega uno scarto, chiedi quante osservazioni ci sono sotto e se quello scarto era atteso o trovato guardando.

Domande frequenti#

Se nello storico prezzo alto e occupazione alta vanno insieme, posso alzare i prezzi?#

Non su quella base. Quel legame nasce quasi sempre dal fatto che il prezzo è stato alzato perché la domanda era forte, quindi descrive la tua regola di pricing e non la reazione degli ospiti. Per rispondere davvero servono confronti fatti dentro gruppi di giornate simili, oppure una prova in cui le date a prezzo diverso sono state scelte prima di vedere le prenotazioni.

Quante variabili devo usare per stratificare?#

Poche, e scelte per motivi di merito. Giorno della settimana e presenza di un evento coprono la maggior parte della variabilità di una struttura urbana. Aggiungerne altre moltiplica i gruppi e li riduce a pochi casi ciascuno, dove le differenze diventano rumore. La regola pratica è fermarsi quando un gruppo scende sotto una decina di giornate.

Il coefficiente di correlazione mi dice se c’è un rapporto di causa?#

No, e non lo dice nemmeno se è molto alto. Nell’esempio di questo articolo la correlazione fra tariffa e occupazione sulle 84 giornate è più 0,78, mentre dentro ogni gruppo di giornate il legame è negativo. La forza del legame misura quanto due colonne si muovono insieme, non chi muove chi: quella informazione sta nel modo in cui i dati sono nati, non nella formula.

Non posso fare test sui prezzi, ho una sola struttura e poche camere: che alternativa ho?#

Puoi alternare nel tempo invece che nello spazio: stessa struttura, stessa fascia di giornate, tariffa A e tariffa B a settimane alterne per un periodo abbastanza lungo. Serve che l’assegnazione sia decisa in anticipo e non cambiata quando le prenotazioni vanno male, altrimenti torni al punto di partenza. Con poche camere servono più settimane per distinguere l’effetto dal rumore.

Se stratifico e il segno cambia, quale dei due risultati devo credere?#

Quello stratificato, a condizione che i gruppi siano definiti da qualcosa che precede sia il prezzo sia l’occupazione, come il giorno della settimana o il mese. Se invece il gruppo è definito da qualcosa che dipende dal prezzo, stratificare peggiora le cose. E anche nel caso corretto, il risultato stratificato resta una stima ottimista, perché dentro i gruppi rimane la parte di prezzo decisa guardando la domanda.

Da leggere dopo