We're not behind. We're in the place where nobody publishes.
Half of all Stripe-verified indie projects make less than $169 a month. The $10K MRR you see in the feed every day is the top 10%. The fake-MRR drama wasn't about who lied. It was about which percentile you were looking at.
Dioni
Updated:

The feed is miscalibrated
If you scroll Twitter in the morning, before your first coffee you've already seen three screenshots of $10K MRR. Then you open whatever you've got... App Store Connect, GitHub, a spreadsheet with a signup count, whatever your product gives you. And inside that, there's your number.
Yours isn't $10K, and mine isn't either. It's probably closer to 0 than to 200, and when we start comparing the feed's screenshots against what we've got, we feel sharply that we're behind.
We're not behind. The feed is miscalibrated.
The math that puts the feeling in its place
Indie Hackers analyzed 5,079 Stripe-verified projects in March of this year, and the shape of the distribution is this:
Median (p50): $169 a month
75th percentile: ~$800 a month
90th percentile: $10K a month
99th percentile: $98.5K a month
Let the ladder land. Half of all Stripe-verified indie projects sit below $169 a month, and to reach the $10K you see flashing in the feed every day you have to be in the top 10%. For the $50K that looks normal on Twitter, you need to be above the 99th percentile, where ninety-nine out of every hundred projects sit below. A separate independent study of 937 products lands on the same shape.
And it's not that people are lying. It's just that they're the only ones with a reason to post. If you're making $200 a month after a year of building, you don't open Twitter to flash that number, you keep working. If you're at zero, same thing, you're head down trying to reach the first dollar. The feed fills with the 99th percentile because half the middle is silent and the other half is writing to itself in private repos.
Your intuition reads that tail and reports it as the whole curve, without anyone deceiving you, without anyone's fault. Just the math of amplification.
The part the feed never shows us
Pieter Levels built six attempts before one worked: Nomad List, the one everyone knows, was his seventh project. Marc Lou shipped sixteen products before ShipFast, the first one that reached the number he posts today. Patrick McKenzie wrote on the Internet about small SaaS for seven years before anyone read him, and Justin Welsh ran sales teams for ten years before dropping the first LinkedIn post that hit.
The pattern is the same every time you look. The person we see today in the 99th percentile spent years in lower percentiles, where the loud part is the last six to twelve months and the silent part is the first seven to ten years. Nobody posts about that part because there's nothing to post yet, it's not content, it's not viral, and the feed compresses it out.
Nobody writes "I've been building for four years and I'm still not out." But those four years are exactly where the work happens.
When we see somebody appear "out of nowhere" with $50K MRR, what we're actually seeing is the last six months of ten years. The ten years are the part that didn't make it into the feed.
Patience is a technical skill, not a mantra
People talk about patience like it's character. "Be patient." "Have faith." That's not patience, it's resignation with good marketing.
Useful patience is something else: the technical skill of recalibrating your prior every day against the real curve, not against the tail the feed shows you. Every time we open Twitter and see a $20K MRR screenshot, our brain registers that number as "normal" without asking permission, and if we do nothing, in six months our prior is calibrated to the 99th percentile and any number of our own reads as failure. Technical patience is the work of the daily reset, sitting down each morning to close the feed with the $169 median in mind and not the $20K screenshot, and opening our own dashboard with the question "what moved this since yesterday" instead of "how far am I from $10K".
It's a skill that gets trained through repetition. The difference between the one who quits at month 18 and the one who's still going in year 4 is exactly that skill.
I train it every day, and I haven't solved it. That's why this post exists.
What we do tomorrow when we open the feed
Tomorrow, when we go back to Twitter, the screenshots will still be there. What can change is what they say.
Name what we're seeing, 99th percentile, not "normal". Then name our own number, median and below, not "behind" but the part where almost nobody is looking because almost nobody publishes. The two numbers belong to different distributions, so let's not let one calibrate the other.
That's the work. We do it once, then again, and after a few months the calibration holds on its own.
This far was for you, if you're just starting out. What follows is for me.
I also scroll Twitter in the morning, I also see the same three screenshots before the first coffee, and I've also thought about stopping. I haven't solved this, but the next hour I have clear.
The work happens in silence, and I've been in the silence for years. It doesn't surprise me. I keep going.
That's for me. If it helps you too, even better.
Close Twitter. Work one more hour. Tomorrow again.


