La virgola che ha gonfiato ogni prezzo europeo di 100 volte
Un parser di prezzi che eliminava le virgole leggeva il tedesco 9,99 € come 999. Nulla si è bloccato, nulla sembrava sbagliato, e il modello di ricavi riportava silenziosamente cifre cento volte troppo grandi.
I prezzi sono l'unico input in cui un errore di ordine di grandezza appare del tutto plausibile su un grafico. Un'app in abbonamento che mostra $6,499 all'anno è assurda se ti fermi a pensarci, e del tutto insignificante se stai scorrendo una dashboard.
Cosa faceva il codice
Il parser rimuoveva i separatori delle migliaia prima di confrontare le cifre, il che è corretto per l'inglese e sbagliato per gran parte dell'Europa. Lo storefront tedesco mostra 9,99 €, la virgola è il punto decimale, e rimuovendola si ottiene 999.
Poiché il modello di ricavi legge la scala dei prezzi dallo storefront attualmente visualizzato, l'apertura di un'app tracciata nella scheda tedesca le ha fornito un prezzo di ancoraggio di 6,499 invece di 44.36. Una sovrastima di 147x, senza errori, senza avvisi e senza sintomi visibili.
La correzione, e perché il rilevamento della localizzazione era la risposta sbagliata
La riparazione ovvia è cercare lo storefront e applicare la sua convenzione. Non l'abbiamo fatto, perché il parser riceve anche stringhe di cui non può essere certo dell'origine, e una ricerca che ricade silenziosamente sull'inglese ricrea il bug in una forma più difficile da trovare.
Invece il separatore decimale è determinato dalla posizione. Se compaiono sia un punto che una virgola, quello più a destra è il punto decimale: 1.234,56 e 1,234.56 vengono entrambi analizzati correttamente senza sapere da quale paese provengano. Se ne compare solo uno, è un separatore delle migliaia quando è seguito esattamente da tre cifre, altrimenti è un punto decimale.
Lo stesso bug, con un suffisso diverso
Poi l'Indonesia. Apple mostra 829,000 rupie come "Rp 829ribu", dove ribu in indonesiano significa mille. Letto letteralmente sono 829 rupie, circa cinque centesimi di dollaro, che rispetto a un prezzo americano di $69.99 sarebbe stato pubblicato come il risultato di localizzazione più eclatante sullo schermo.
Le parole di grandezza ora sono gestite. Ma quella tabella non potrà mai essere completa, perché qualsiasi storefront potrebbe mostrare una parola che nessuno da questa parte ha mai visto, quindi c'è anche un limite minimo: un prezzo che convertito risulta inferiore a 2% del mercato di base viene trattenuto come inaffidabile invece di essere pubblicato. Il mercato autentico più economico che misuriamo, la Turchia, si attesta a 5%, quindi la salvaguardia intercetta errori di ordine di grandezza senza mettere in dubbio i prezzi reali.
Correlati
- Il 90% delle app top non testa mai la propria icona: cosa ha scoperto uno studio benchmark su 1.000 app
- Nessuno può venderti il volume di ricerca dell'App Store
- Prezzi di Sensor Tower nel 2026: quanto costa realmente
- Potto è diventato virale su TikTok. Ecco cosa ha fatto l'App Store al riguardo
Blog · Casi di studio · Free ASO tools · Prodotti · Privacy e termini · AsoTheory