Eighty Dollars or Four
I started using MyFitnessPal a few weeks ago to track what I eat. The reason I picked it was not loyalty or marketing. It was the food database — millions of entries, accurate down to specific brands and restaurant menu items — and the barcode scanner that turns logging a meal from a chore into a two-second gesture. There are other calorie-tracking apps. None of them have a database that deep, and none of them collapse the friction of logging the way MyFitnessPal does. So I picked it for real reasons.
The free tier is ad-soaked in the way that free tiers have all converged on lately. Every meal log routes through an interstitial. By the third day I had stopped logging breakfast because the friction of an ad on every entry was higher than the friction of just remembering. So I went to upgrade.
The premium price in the US is eighty dollars a year.
I was not shopping for a deal. I was looking at the upgrade button when I came across — through a thread, in passing, the way you come across most of what you know about software pricing — that the same app, the same servers, the same database, costs around four dollars a year in some countries. Turkey, Argentina, India, depending on the year and the conversion rate. Twenty times.
Most readers can already name three apps where this kind of thing works. Spotify, YouTube Premium, Netflix until the crackdown, ChatGPT in some configurations. The trick is not new. The forum threads about switching app store regions are not new. What is new — for me, at least — is the size of the number.
Most regional pricing differences are small enough to ignore. Spotify in Argentina is a few dollars cheaper than Spotify here. Netflix in India is half-price. You notice these and shrug, because the gap is comfortable to dismiss as a regional discount on a product that still has a price. Twenty times is not a regional discount. Twenty times is something else entirely. Once the gap is wide enough to make dismissal feel embarrassing, you are forced to ask what kind of pricing produces a number like that.
This post is not about the trick. The trick is well known. This post is about what the gap reveals once you stop treating it as a hack and start treating it as a measurement.
There is no price. There is only what they think you will pay.
The thing the gap measures is not generosity. It is calibration.
When the same software costs eighty dollars here and four dollars there, the company has not decided what the product is worth. They have decided what each region will pay, and the dollar amount on the page is the output of that decision, not an input to it. The price is not a property of the product. It is a function — of your IP address, your country, your card, your account history, your app store region — that returns a number. The number on the upgrade page is what that function happened to spit out for you, this time.
Software pricing has been converging to airline pricing for a long time. A flight to New York does not have a price; it has a distribution that resolves into a number once the system knows enough about you to guess what you will pay. We accepted that for travel because the inputs are obvious — when you fly, what day, how far in advance — and so the variation feels like a property of the flight rather than a property of you.
Subscriptions adopt the same model without the visible inputs. The Spotify upgrade screen looks like a shelf tag. So does Netflix. So does MyFitnessPal. The dollar amount is presented as a fact about the product, the way a price tag on a chair in a furniture store is a fact about the chair. It is not. It is a fact about you, dressed up to look like a fact about the product.
With small gaps you can still hold onto the shelf-tag intuition. A four-dollar difference between Spotify here and Spotify in Argentina is small enough that the price still feels like the price, with a regional discount applied. With twenty times the intuition does not hold. There is no version of “the price” that resolves to both eighty dollars and four dollars with a discount in between. The arithmetic does not work. What you have at twenty times is not a discount. It is two completely different prices on the same bytes, and the only thing that explains both is that the company is asking each region a different question and getting a different answer.
The shelf tag is gone. What is left is the function.
You are not the beneficiary. You are the source.
Once you accept that the price is a function instead of a tag, the next question is what the function is for.
The intuitive read on regional pricing — the one that lets you keep feeling fine about the dollar amount you are paying — is that the company is being generous to poor countries. They could charge full price everywhere. They choose to charge less where people cannot afford it. The discount is for them; the regular price is for everyone else. This is a comfortable story.
The story stops being comfortable when the gap is twenty times.
A piece of software costs the same to deliver to a user in the United States as it does to a user in Turkey. Not roughly the same. Exactly the same. The bytes are identical, the server load is identical, the bandwidth is identical, the database queries are identical. There is no marginal cost that varies by country. So when one user pays eighty dollars and another pays four dollars for the same product, the difference is not a regional discount. It is a transfer.
The four dollars is closer to what the company has decided the product is worth. Closer, even, to what the product costs to produce divided across paying users. The eighty dollars is that number plus seventy-six dollars of something else. Whatever name you want to give to the seventy-six dollars — premium, markup, the cost of having the wrong IP address — it is not paying for your version of the product. Your version of the product would have arrived at four dollars. It is paying for everyone else’s.
This is not a complaint. The pricing model is not malicious; it is structural. Without the rich-country premium, the cheap-country price would not exist either, because most software needs revenue well above its delivery cost to make economic sense at all. Somebody has to subsidize the long tail. That somebody is whoever the model thinks will pay the most, which is mostly users in rich countries who are not actively comparing across borders.
The reason this is hard to see is that the dominant frame for regional pricing is generosity, and generosity has a direction baked in: the rich helping the poor. The actual direction is reversed. The cheap-country user is not being given a discount; they are being charged something close to the real number. The rich-country user is not being charged the real number; they are being charged the real number plus the subsidy. Most rich-country users do not know this is the line they are paying. The dollar amount on the upgrade page does not break it out. It is just a single number.
Twenty times is what makes the math impossible to misread. With smaller gaps the subsidy is small enough to hide inside the rounding. At twenty times, ninety-five percent of what you are paying is the subsidy.
Software is just where the gap is wide enough to see.
The pattern visible in software pricing is not a software pattern. It is the form that shows up wherever a seller can identify buyers individually and buyers are not coordinating with each other.
Same drug, three prices in three countries. Same flight, two prices on two browsers and a third on the airline app. Same insurance policy, four premiums for four zip codes. Same university degree, a dozen tuitions for a dozen income levels. Same hotel room, three rates from three booking sites and a fourth at the front desk. Same surgery, two bills depending on whether you are uninsured paying cash or insured at a negotiated rate.
The mechanism varies — regional, behavioral, demographic, risk-based, distribution-based — but the form is the same: there is no single price of the thing; there is a price for each kind of buyer, and the seller has gotten very good at sorting buyers into kinds. The number on the tag is the answer the seller computed for you, not a property of the thing they are selling.
The geography of subscription pricing is the cell of this table where the gap is widest and the inputs are crudest — country, card, IP address. That is what makes it visible. Most cells of the table have smaller gaps, or hide the calibration behind opacity (underwriting models, dealer financing, contact sales for a custom quote), and the math runs without ever showing its work. The MyFitnessPal gap is not really a fact about MyFitnessPal. It is the place a much wider pattern crosses the visibility threshold for ordinary users — the cell where the seam is wide enough that you cannot pretend not to see it.
The seeing does not tell anyone what to do with what they see. The barcode scanner still turns a meal into a two-second gesture. The food database is still the best in the category. The receipt for eighty dollars will look like a receipt for eighty dollars whether or not the buyer thinks of it as a calibration. What is no longer the same — on this upgrade page and on every other quoted number that comes back from a system that knows who you are — is the certainty that the receipt is the price.