Das Komma, das jeden europäischen Preis um das 100-fache aufblähte
Ein Preisparser, der Kommas entfernte, las die deutschen 9,99 € als 999. Nichts stürzte ab, nichts sah falsch aus, und das Umsatzmodell meldete stillschweigend hundertmal zu hohe Zahlen.
Preise sind die eine Eingabe, bei der ein Größenordnungsfehler in einem Diagramm völlig plausibel aussieht. Eine Abo-App mit $6,499 pro Jahr ist absurd, wenn man kurz nachdenkt, und völlig unauffällig, wenn man ein Dashboard überfliegt.
Was der Code tat
Der Parser entfernte Tausendertrennzeichen, bevor er Ziffern abglich, was für Englisch korrekt und für den Großteil Europas falsch ist. Der deutsche Storefront gibt 9,99 € aus, das Komma ist der Dezimalpunkt, und das Entfernen erzeugt 999.
Weil das Umsatzmodell die Preisstaffel von dem gerade sichtbaren Storefront liest, bekam eine getrackte App auf dem deutschen Tab einen Ankerpreis von 6,499 statt 44.36. Eine 147-fache Übertreibung, ohne Fehler, ohne Warnung und ohne sichtbares Symptom.
Die Lösung und warum Locale-Erkennung die falsche Antwort war
Die naheliegende Reparatur ist, den Storefront nachzuschlagen und dessen Konvention anzuwenden. Das haben wir nicht getan, weil der Parser auch Strings erhält, deren Herkunft er nicht sicher kennen kann, und ein Nachschlagen, das stillschweigend auf Englisch zurückfällt, den Bug in einer schwerer auffindbaren Form wiederherstellt.
Stattdessen wird das Dezimaltrennzeichen durch die Position bestimmt. Wenn sowohl ein Punkt als auch ein Komma vorkommen, ist das am weitesten rechts stehende der Dezimalpunkt: 1.234,56 und 1,234.56 werden beide korrekt geparst, ohne zu wissen, aus welchem Land sie stammen. Wenn nur eines vorkommt, ist es ein Tausendertrennzeichen, wenn genau drei Ziffern folgen, und sonst ein Dezimalpunkt.
Derselbe Bug mit anderem Suffix
Dann Indonesien. Apple gibt 829,000 Rupiah als "Rp 829ribu" aus, wobei ribu das indonesische Wort für Tausend ist. Wörtlich gelesen sind das 829 Rupiah, etwa fünf US-Cent, was gegenüber einem amerikanischen Preis von $69.99 als dramatischster Lokalisierungsbefund auf dem Bildschirm veröffentlicht worden wäre.
Größenwörter werden jetzt behandelt. Aber diese Tabelle kann nie vollständig sein, weil jeder Storefront ein Wort ausgeben kann, das hier noch niemand gesehen hat. Deshalb gibt es auch eine Untergrenze: Ein Preis, der unter 2% des Basismarktes umgerechnet wird, wird als unzuverlässig zurückgehalten statt veröffentlicht. Der günstigste echte Markt, den wir messen, die Türkei, liegt bei 5%, sodass die Sicherung Größenordnungsfehler abfängt, ohne echte Preise infrage zu stellen.
Verwandt
- 90 % der Top-Apps testen ihr Icon nie: Was eine Benchmark-Studie mit 1.000 Apps ergab
- Niemand kann dir das App-Store-Suchvolumen verkaufen
- Sensor Tower-Preise 2026: Was es tatsächlich kostet
- Potto ging auf TikTok viral. Hier ist, was der App Store dagegen unternommen hat
Blog · Fallstudien · Free ASO tools · Produkte · Datenschutz und Bedingungen · AsoTheory