"Minimum viable product" is good advice that's easy to misread in both directions. Here's how to build the smallest useful thing without building something you'll have to throw away.
- "Minimum" and "viable" are both load-bearing. Drop either word and you get a predictable, expensive failure.
- Cut scope, never quality. A narrow product on solid foundations grows; a broad one on shaky foundations collapses exactly when it succeeds.
- The launch is the start of a conversation, not the delivery of a verdict. If you don't act on what you learn, you paid for the discipline and threw away the payoff.
"Build a minimum viable product" might be the most repeated advice in software, and repetition has done to it what repetition does to everything: worn it into a slogan people nod at without hearing. The trouble is that the slogan contains a genuinely hard idea, and the hardness is exactly what gets sanded off in the nodding.
I've watched clients fall into two opposite traps, and they fall in with equal confidence. Some hear minimum and build something so thin it helps no one and teaches nothing. Others hear product and quietly build the entire ambitious thing under an MVP banner, spending months and the whole budget before learning whether a single person wants it. Both groups think they're following the advice. Both are about to spend real money to end up worse off than if they'd thought harder for an afternoon first.
So let me take the slogan apart and put it back together in a way that might survive contact with a real project.
Two words, both load-bearing
The phrase has exactly two words that carry weight, and the failures come from quietly dropping one.
Over-index on minimum and you build something so stripped-down it isn't actually viable — it doesn't solve any real problem well enough that a real person would choose to use it, so it produces no honest feedback. You've saved effort and learned nothing, which is the single worst trade available, because the entire justification for building small was to learn cheaply and you've kept the cost while discarding the lesson. A demo that nobody relies on tells you almost nothing about whether people want the real thing. It tells you that you can build a demo, which you already knew.
Over-index on product and you build a full, polished offering before validating that anyone wants any of it — which is precisely the risk the whole idea exists to eliminate. You've spent the budget and absorbed all the risk up front, then called it lean because you left out a couple of features you'd meant to add later anyway.
A real MVP is genuinely minimal and genuinely viable at the same time. It does one important thing well enough that real people will really use it, and it deliberately omits everything not essential to that one thing. All the difficulty lives in that "at the same time." Being ruthless about the everything-else while refusing to compromise on the core actually being good — that's the skill, and it's uncomfortable precisely because the two instincts pull against each other the whole way.
Find the core by asking what it's *for*
The question people reach for is "what features should we include?" It's the wrong question, and it's wrong in an instructive way: it invites a list, and lists have a natural direction of travel, which is longer. Every stakeholder adds one reasonable item, each item is individually defensible, and the sum is the bloated thing you were trying to avoid. Nobody in the room ever argues for the list being shorter, because arguing to remove something feels like arguing that it doesn't matter.
The better question is: what is the one thing this must do for it to be worth anyone's time? That reframes the work around value instead of features, and value is far easier to keep small than a feature list is — because value has a shape and a purpose, and you can hold a candidate up against it and ask whether it serves the purpose or merely decorates it.
Almost every product has a core loop — the central thing users come for, the reason it exists at all. Everything else is supporting cast, however important it feels in the planning meeting. The MVP should do that core thing genuinely well and treat everything else as a candidate for later, admitted only once the core has earned it by being proven. Most features that feel essential during planning turn out to be things you assumed users would want — and assumptions are exactly what an MVP exists to test, not to build on as though they were already true.
Here's a blunt exercise that clarifies fast. For each proposed feature, ask a single question: is the product useless without it? Not "is it nice," not "will someone ask" — useless. Usually only a small handful of things survive that question honestly. That handful is your MVP. Everything else is a backlog to be validated one item at a time, not a specification to be built all at once.
The trap that manufactures regret
Now for the part where "minimum" turns dangerous, because there's a right way and a wrong way to make something smaller, and from the outside they look almost identical while leading to opposite destinations.
The right way is to cut scope. Fewer features. Fewer edge cases handled. A narrower audience served. A smaller product built properly is a perfectly good foundation — you extend it later without tearing anything down, because what's there was built to be built upon.
The wrong way is to cut quality. Same broad ambition, but built shabbily, on shaky foundations, with a cheerful promise to "do it properly later." This is the trap, and it's the one that earns the regret, because it produces something that looks further along than the honestly-small version while resting on ground you'll have to dig up.
And here's the cruel timing of it. When does the reckoning arrive? Exactly when the MVP succeeds — which was the entire goal. Success means load, means users, means the thing mattering. And that is the precise moment you're forced to rebuild the foundations, while the building is occupied and the load is real, which is far more painful and far more expensive than building them properly when the site was empty. You turned your own success into a crisis, and you did it in the name of moving faster.
A narrow product on solid foundations grows gracefully. A broad product on rotten foundations collapses exactly when it starts to matter. Both were "smaller." Only one was survivable.
Be honest about which thing you're building
There's a distinction underneath all of this that, left unspoken, quietly produces a great many expensive rewrites: the difference between a prototype and an MVP.
A prototype is something you build to learn and then deliberately throw away. It has a completely legitimate place — sometimes the fastest way to understand a problem is to build a rough thing, look at it, and bin it. The one condition is that everyone knows that's the plan, and nobody tries to grow the throwaway into the product it was never built to become.
An MVP is the actual first version of a real product. It should be small — genuinely, ruthlessly small — but it should be built to grow: sound foundations, sensible structure, room to extend. Small in scope, serious in construction.
| Prototype | MVP | |
|---|---|---|
| Purpose | Learn something, then discard | Ship the real product's first version |
| Foundations | Whatever's fastest — they're temporary | Sound, because you'll build on them |
| Success looks like | You learned, and you threw it away | People use it, and you extend it |
| The fatal mistake | Growing it into the product | Building it as though it were disposable |
The mistake that costs the most is building a prototype's throwaway internals while treating it, in your head and your roadmap, as the MVP you'll build the whole business on. That single confusion — disposable construction, permanent expectations — is where a startling share of "we have to rewrite everything" moments are born. Both prototype and MVP are valid, honourable things to build. Pretending a disposable prototype is a durable foundation is neither.
Ship, and then actually listen
The entire justification for an MVP — the reason to accept the discipline of building small when every instinct says build more — is learning. You put something real in front of real people and let their behaviour, rather than your assumptions, steer what comes next. If you don't genuinely act on what you learn, you've paid the full price of the discipline and thrown away the only thing it was going to buy you.
This means treating the launch as the opening of a conversation, not the delivery of a verdict. Watch what people actually do, which is frequently not what they said they'd do, or even what they sincerely believe they do. Be prepared to be wrong about which features matter — you usually are, and discovering it cheaply is the whole point of having built cheaply. The plan you held before real users touched the thing was a hypothesis, and the MVP was the experiment you ran to test it. Clinging to the original plan in the face of what the experiment plainly tells you is the strangest failure of all: paying good money to run an experiment and then refusing to read the result.
The tension worth holding
Building a good MVP isn't picking a side between small and real, or between fast and sound. It's holding a tension without letting go of either end. Small enough to build quickly and learn cheaply, yet real enough that people genuinely use it. Minimal in scope, yet sound in quality. Focused entirely on today's core, yet built so that tomorrow's growth doesn't demand a demolition.
Hold that balance and an MVP is one of the most valuable things you can build. It derisks the large investment before you commit it, it tells you what to build next from reality rather than from a whiteboard, and it hands you a real foundation to grow on rather than a rehearsal you'll have to redo. Drop either end — too thin to teach you anything, or too shabby to keep once it works — and you've spent real money to learn less than you should have, or to build something you'll come to regret the very moment it succeeds. "Minimum" is the word that gets all the attention. "Viable" is the one that keeps you honest.