Data Study · Original research

The .99 Illusion

Charm pricing is supposed to be universal, but the App Store's love of the .99 ending is wildly uneven across currencies, categories, and eras.

Original research by AppWanderer, computed from a sample of 70,767 public App Store listings drawn from our index — every figure here is calculated, never estimated. See our editorial standards and glossary.

Summary

Charm pricing isn't some quirky exception on the App Store; it's the default setting. Out of 70,767 paid apps in this study, 68,437 end in .99, a 96.7% share that leaves almost no room for anything else. This isn't an illusion. The .99 ending is the App Store's pricing logic, full stop, and every other ending, whether .00, .49, .95, or something else, gets pushed to the margins as a rounding error.

The one place this pattern falls apart is currency. USD, GBP, and EUR apps land in the 95 to 98 range, while CNY and JPY sit at exactly 0. That gap says more about how psychological pricing actually works than any category breakdown or year-over-year trend ever could. Category differences stay tight, roughly 97 to 99, and the shifts over time are modest too, roughly 94 to 98, but the currency split is total. Charm pricing is a habit baked into Western decimal currencies, and developers just layer the psychology on top of it.

96.7%
paid apps ending in .99
70,767
paid apps in the study
$13.09
average paid app price

.99 crowds out every other ending, and the runners-up are barely there

Look at 70,767 paid apps in this data set and 68,437 of them end in .99. That's 96.7% of the group, which leaves everything else fighting over scraps. Apps ending in .00 come in at 861, or 1.2%. A catch-all bucket for other endings holds 809 apps, or 1.1%. Endings in .49 account for 642, or 0.9%, and .95 has all but vanished, down to just 18 apps, under 0.1%. The order here tells you something. .49 is the only ending that reads like a deliberate alternative to .99, and it still loses by more than 100 to one. .95 used to be a standard charm-pricing ending in physical stores, so watching it nearly disappear suggests the App Store settled on its own pricing convention instead of borrowing from the wider psychological-pricing playbook retail relies on. The .00 endings that remain look like leftovers: free apps that got a price tag bolted on later, enterprise tools, or apps priced by some internal policy rather than gut feel. Skip the .99 ending on your app's price and you're already the outlier, and people will notice that before they ever get to your app's description.

Figure 01 · .99 crowds out every other ending, and the runners-up are barely thereComputed from the live index

CNY and JPY do not have a .99 problem, they have no cents to have it with

Look at the charm pricing numbers and the pattern jumps right out: USD apps sit at 97.7, GBP apps at 97.2, and EUR apps at 95.4. Then CNY and JPY don't taper off at all. Both land flat at 0.

That drop is the most important finding in this whole dataset, because it proves charm pricing isn't some universal psychological trigger baked into how people read numbers. It works only because certain currencies split into hundred-part subunits, cents, pence, so a price ending in 99 reads as almost a whole unit cheaper than it is. Yen doesn't run on a minor subunit in everyday life, and yuan pricing on the App Store follows its own separate convention. So the .99 trick simply has nothing to grab onto, not visually, not mentally.

This is a structural fact about the currency itself, not some cultural quirk or preference. You can't charm-price your way into a perceived discount if the currency doesn't support that illusion to begin with. If you've been assuming your pricing psychology travels globally just because you ran a currency conversion, these numbers show exactly where that assumption falls apart. EUR's 95.4, while still high, trails USD and GBP by a visible margin, and that gap alone suggests the pull of this convention isn't even uniform across decimal currencies.

Figure 02 · CNY and JPY do not have a .99 problem, they have no cents to have it withComputed from the live index

Category barely moves the needle, and that is itself the finding

Travel sits at the top of the category list with 99.1, then Reference at 98.6, Music and Weather close behind at 98.2 and 98.1, News matching that 98.1, Medical at 98, Photo & Video at 97.9, Navigation and Stickers tied at 97.6, Health & Fitness at 97.3, Education at 97.1, and Utilities bringing up the rear at 97. Look across all twelve categories and the whole spread stays under two and a half points, which is tighter than you'd expect. Currency is a completely different animal, swinging from roughly 95 all the way down to exactly 0. Category alone barely nudges pricing psychology. Currency blows it wide open. Travel's edge at 99.1 makes sense once you think about how people actually shop for these apps: flight trackers, currency converters, and booking tools all get compared side by side, and that's exactly where a price ending in .99 earns its keep. Utilities comes in lowest at 97, but even so, most utility apps still lean on charm pricing. It's just the category where the habit is weakest, not absent. None of this looks like developers pricing by category logic. It looks like convention, and that convention sticks regardless of what the app actually does.

Figure 03 · Category barely moves the needle, and that is itself the findingComputed from the live index

Charm pricing was near-universal from 2015 to 2020, and has been sliding since

Charm pricing barely budged between 2015 and 2020: 98.3 in 2015, 98.1 in 2016, 98.3 in 2017, 97.4 in 2018, 98.3 in 2019, and 98.3 in 2020. Then the drop starts. 97.9 in 2021, 97.6 in 2022, 94.8 in 2023, 95.4 in 2024, 94.9 in 2025, and 94.4 in 2026, the lowest of the whole run. That's roughly a four point fall from the flat 2015 to 2020 stretch to where things sit now, which is a real move for a habit that looked untouchable for half a decade. Nobody woke up one day and decided psychological pricing was out. What changed is more mundane: App Store Connect widened its price tiers, and regional pricing automation spread across the store, and neither of those hands out numbers ending in .99 on their own. Once a system is defaulting to round figures or spitting out algorithmically generated price points, the .99 ending just stops showing up as often, because at that point no developer is manually typing $2.99 out of habit. The decline is gradual for now, but if the 2026 figures keep sliding, the .99 default that defined a decade of App Store pricing is starting to erode.

Figure 04 · Charm pricing was near-universal from 2015 to 2020, and has been sliding sinceComputed from the live index

Charm pricing does not buy you a better rating, and it barely buys you anything

Apps priced with a .99 ending average a 4.3 rating, while apps with any other pricing ending sit at 4.2. That gap of one-tenth of a point is too thin to back up the old theory that charm pricing makes an app look cheap, or the opposite theory that round numbers signal seriousness and pull in more satisfied buyers. People don't rate an app because of what the price ends in. They rate the app itself. A gap this small is more likely explained by who still sets prices without the .99 (older apps, enterprise tools, subscription-heavy products) than by anything the ending itself is doing. So if you're wondering whether ditching charm pricing will hurt how your app is perceived, the numbers say relax: pricing convention barely touches ratings. The .99 ending does its work at the moment of purchase, not in how happy someone feels afterward, and in this data those two things just don't line up.

Figure 05 · Charm pricing does not buy you a better rating, and it barely buys you anythingComputed from the live index

The averages confirm charm pricing is the rule, not a segment of the market

Pull up all 70,767 paid apps and one thing jumps out right away: 96.7% of them are priced to end in .99, while a mere 1.2% end in a flat .00, and the average paid app runs $13.09. Line those two percentages up next to each other and the .00 crowd is only 1.2% the size of the .99 crowd. Round pricing isn't really competing here so much as showing up as a rounding error. Next to charm pricing's grip on the market, it looks like noise. That same 1.2 figure also works out to 9.2% of the $13.09 average price, and the average price itself lands at just 13.5% of the .99 share. None of these comparisons are dramatic in isolation, but they all lean the same way: one pricing habit, the .99 ending, buries every other option in the data. And at an average of $13.09, this clearly isn't just a trick for $0.99 impulse buys anymore. Charm pricing holds its ground even once prices climb well into double digits. The real takeaway is that developers aren't picking .99 because their apps are cheap. They're picking it because nobody stops to question the convention, no matter what the app actually costs.

The bottom line

The .99 pricing habit turns up almost everywhere, though not evenly. Among decimal currencies it's close to universal: 96.7% overall, with USD sitting at 97.7, GBP at 97.2, and EUR at 95.4. Category barely changes anything either; every one of them lands in a tight 97 to 99.1 band. Over time there's a real, if slow, slide, from 98.3 in 2015 down to 94.4 in 2026. Step outside decimal subunit currencies, though, and the whole pattern vanishes: CNY and JPY both come in at 0. Charm pricing isn't some universal quirk of human psychology. It's a convention tied to how a currency's smallest unit shows up on screen, and even in the markets where it has always ruled, it's slowly losing ground.

Method & limitations

How this was made: this study is computed across 70,767 apps carrying the public App Store metadata it needs, drawn from our live index of 923,037 tracked apps, and is recomputed on a schedule. It is a large, representative sample of the store rather than every app in existence, and the figures shift over time as the store changes.

  • Public metadata only. These figures come from what apps publicly list in the App Store. Downloads, revenue, retention and in-app subscription pricing are not visible to us — we name them, and we never estimate them.
  • A large sample, not a census. The study runs across a representative slice of the store rather than every app in existence, so figures move as the store and our index change.
  • Recomputed, not frozen. Numbers are recalculated on a schedule; a figure quoted elsewhere may differ from the one shown here after the next rebuild.
  • No estimates or third-party numbers are used.

Common questions

Is .99 pricing actually the default across the App Store?

Yes, and overwhelmingly so. 68,437 of 70,767 paid apps in this study, 96.7%, end in .99. Nothing else comes close: .00 endings are 1.2%, .49 endings are 0.9%, and .95 endings are less than 0.1%.

Does charm pricing work the same way in every currency?

No. USD, GBP, and EUR apps show charm pricing shares of 97.7, 97.2, and 95.4 respectively, but CNY and JPY both sit at exactly 0. Charm pricing depends on a currency having a cents-style subunit for the .99 illusion to visually register.

Is charm pricing fading over time?

It looks that way. The share held between 97.4 and 98.3 every year from 2015 through 2020, then slid to 97.9 in 2021, 97.6 in 2022, and down into the 94.4 to 95.4 range from 2023 through 2026.

Do apps priced at .99 get rated better than apps with round or other prices?

Barely. Charm-priced apps average a 4.3 rating versus 4.2 for other pricing endings. That's a small enough gap to say pricing convention and user satisfaction are essentially unrelated.

Data & citation

Original data from AppWanderer. Free to cite and quote with a link back to this page; the charts may be reused with attribution.

AppWanderer. “The .99 Illusion.” https://appwanderer.com/studies/the-99-cent-illusion (data updated 9 Sep 2026).

Press & data enquiries: [email protected]

Dor Bass
Author
Dor Bass

Builds and maintains the index behind AppWanderer. Writes the studies and sets the qualifying rules behind every ranking board.