A founder sent us a message a few months ago that started with "quick question." It rarely is.
He'd gotten a quote for his MVP, a habit-tracking app, the kind that lets you log a streak every day and watch it grow. Someone had quoted him $800 and delivered it in four days. It looked finished. He'd shown it to two friends over coffee, logged a few days of a fake streak, and it worked exactly like it should.
Then he logged in from his phone that night, and the streak was gone.
Where four days actually go
We asked to see the app before we said anything about price. Two minutes in, we knew what had happened, because we'd seen it before.
The app had no real database. Every streak, every login, every "saved" setting lived in the browser's local storage, a small pocket of memory that belongs to one browser on one device. It's the same trick a to-do list app might use to remember your list after you close the tab. That works fine for a to-do list. It falls apart the moment two people, or even one person on two devices, expect to share the same data.
Open the app on a laptop, and it looks complete. Open it on a phone, and you're a brand new user, because nothing was ever sent to a server in the first place. The demo worked because a demo only needs one browser, one sitting, and nobody switching devices in the middle of it.
That's what $800 usually buys: something that survives a demo. What a quote that low can realistically include is a front end that looks right and just enough logic to make it move. A real backend, a real database, and the testing to prove they hold up under real use take longer than four days, so something has to give. Cheap quotes don't lie about the price. They just don't mention what got left out to hit it.
What actually goes into the rebuild
Fixing it meant building the part that was never really there. A real database that holds a user's data the moment they create it, not the moment their browser happens to still have it open. A login system that recognizes the same person on a laptop and a phone, instead of treating every new session as a stranger. Payment handling for the subscription tier he wanted to launch with, checked against the kind of edge cases a demo never hits, like a failed card, an expired one, or someone switching devices mid-payment.
None of that shows up in a demo. It only shows up the first time a real user does something a demo never does, like closing the tab and coming back the next day expecting their streak to still be there.
This is close to the actual line we hold at EnactOn when someone asks us to look over a build before they launch it: if the "database" disappears when the browser cache clears, it isn't a database, it's a note to yourself. We won't sign off on a product being ready until it survives that test, even if the client is in a hurry to launch.
Why the second number is the honest one
$800 wasn't a scam. The person who built it probably delivered exactly what $800 buys, and did it fast. The problem is that a demo and a product get judged by different rules, and nobody tells founders that up front.
Most products that die early don't die because the idea was wrong. They die because the thing that got built couldn't actually hold up once real people started using it the way people actually use things: on different devices, on bad wifi, coming back three days later expecting it to remember them. A demo never tests any of that. A launch tests all of it, on day one, in front of the people you most wanted to impress.
The $6,000 wasn't the cost of redoing bad work. It was the cost of the parts that were quietly skipped the first time, a real build process with a backend that persists data on purpose, instead of one that borrows the browser's memory and hopes nobody notices. For a subscription product that depends on people coming back, that's not a nice-to-have. It's the entire business model, and it can't run on a trick that resets every time someone opens a new tab.
What we tell founders now
We don't tell people to ignore an $800 quote. Sometimes it's exactly what a very early idea needs, a fast way to see if anyone cares before spending real money. But we do tell them to ask one question before they trust the demo: open it on a second device, log something, close it, and open it again. If it remembers you, it's real. If it doesn't, you've seen a screenshot with extra steps, and the actual product still needs to be built.
Has a cheap MVP quote ever looked finished until someone tried to actually use it? What gave it away?
Top comments (0)