Skip to content
North Tech Labs
Software DevelopmentPart of: Custom Software Development

Product Discovery: Validating What to Build Before You Build It

Product discovery is the structured process of reducing uncertainty about what to build, before any decision has been made to build it — a distinct mode of work from delivery, which executes on a scope that's already been chosen. Real discovery means talking to actual users about real behavior rather than hypothetical preferences, testing demand and feasibility with cheap experiments instead of code, and setting decision criteria upfront so the process has a clear exit. The output isn't a specification; it's a scoped, testable next step. Skipping this stage doesn't save time — it usually means building the wrong thing with more confidence and at higher cost than building nothing at all.

Key takeaways

  • Discovery and delivery are different modes of work with different goals — conflating them is the root cause of most wasted engineering effort
  • What users say they want and what their behavior shows they need are frequently different things; behavioral evidence should win
  • Cheap validation methods — prototypes, concierge tests, landing-page signals — exist specifically to avoid writing production code before you know it's warranted
  • Technical and economic feasibility must be checked during discovery, not discovered after a team has already committed to a roadmap
  • Discovery without upfront decision criteria either becomes theater that rubber-stamps a predetermined build, or a process that never converges on a decision

Most software isn't derailed by poor execution. Teams that write clean code, ship on schedule, and follow sound engineering practices still routinely build things that fail to gain traction — not because the delivery was weak, but because nobody rigorously tested whether the underlying problem was worth solving before committing resources to solving it. That gap sits upstream of scoping, upstream of architecture decisions, and upstream of any conversation about what an MVP should contain. It's the gap that product discovery is meant to close.

Discovery and delivery are different modes of work

The single most common mistake in how organizations run discovery is treating it as an early stage of delivery rather than a fundamentally different activity with a different goal. Delivery mode exists to execute efficiently against a known scope — the team understands what's being built, and the job is to build it well, on time, and within budget. Progress in delivery mode is measured by output: features shipped, tickets closed, milestones hit.

Discovery mode exists to reduce uncertainty about what's worth building in the first place. Progress in discovery is measured by a completely different unit: validated or invalidated assumptions. A discovery effort that produces no code but definitively rules out a bad direction has succeeded. A delivery effort that produces a polished feature nobody asked for has failed, regardless of how well it was engineered.

The confusion between these two modes shows up in predictable ways:

  • Sprint planning language applied to discovery. When a team puts "conduct user interviews" and "build interview findings into design" on the same two-week sprint board as delivery tickets, discovery gets treated as a task to complete rather than a question to answer. The interviews happen, a summary gets written, and the team moves forward with whatever was already planned — the sprint format itself pressures discovery toward a predetermined outcome.
  • Estimating discovery like delivery. Delivery estimates are grounded in known unknowns — how long will this integration take, how complex is this data migration. Discovery estimates are guesses about how long it takes to resolve unknown unknowns, which is a different kind of forecasting problem. Committing to "discovery finishes in three weeks" before you know what you'll find defeats the purpose.
  • Rewarding discovery for confirming, not informing. If the only acceptable outcome of a discovery process is "yes, build it," the incentives quietly corrupt the process. People will find a way to hear what they were already inclined to hear.

None of this means discovery and delivery can never coexist on a roadmap. A healthy organization typically runs delivery on a validated scope from a prior discovery round while discovery is already underway on the next problem. What doesn't work is running both modes on the same decision simultaneously — starting to build while still genuinely deciding whether to build.

Uncovering real problems instead of assumed ones

Most product ideas originate from an assumption about a user problem, often formed by a founder, a sales conversation, an internal stakeholder's intuition, or a single vocal customer. The purpose of discovery's early stage is to test that assumption against reality before treating it as a foundation.

Structured interviews, not pitch meetings

A user interview intended to surface real problems looks very different from a sales call or a feature-validation conversation, even though they can superficially resemble each other. The distinguishing features of a well-run discovery interview:

  • It asks about past behavior, not future intentions. "Walk me through the last time you had to do X" produces concrete, checkable detail. "Would you use a tool that did X" produces a polite, low-stakes guess that costs the respondent nothing to make and is a weak predictor of actual behavior.
  • It avoids describing the solution before the problem is understood. Describing a proposed feature early in the conversation anchors the respondent's answers to reacting to your idea rather than describing their actual situation.
  • It digs for workarounds. If someone has already cobbled together a spreadsheet, a manual process, or a combination of other tools to solve a problem, that's a far stronger signal of real pain than a hypothetical "yes, that would be useful."
  • It treats silence and hesitation as data. A respondent who struggles to recall a recent instance of the problem, or who has to think hard to justify why it matters, is telling you something important about how acute the problem actually is.

Watching workflows beats asking about them

Interviews alone have a structural limitation: they rely on people's ability to accurately recall and describe their own behavior, and that ability is imperfect even among well-intentioned respondents. Observing someone actually perform the workflow in question — a contextual inquiry or shadowing session — routinely surfaces friction points the person themselves wouldn't have thought to mention, because the workaround has become so habitual it no longer registers as a problem worth reporting.

This is particularly valuable for operational or back-office software, where the person who would answer an interview question ("How do you currently handle inventory reconciliation?") may describe an idealized version of the process rather than the actual sequence of manual corrections, phone calls, and spreadsheet patches that really happens on a busy day.

Say versus do

The gap between stated preference and revealed behavior is one of the most consistent findings across product research, and discovery processes need an explicit method for handling it rather than assuming interview answers are reliable on their face. A few practical techniques:

  • Look for corroborating actions, not just statements. If someone says a problem is a top priority but has never tried to solve it, budgeted time for it, or complained about it to anyone else, treat the stated priority skeptically.
  • Ask what they tried last time, not what they'd try next time. Past attempts are observable; future intentions are aspirational.
  • Weight willingness to pay or commit over willingness to comment. A prospective user willing to join a waitlist, pre-pay a deposit, or rearrange their current process even slightly is giving costlier, more credible evidence than one who is willing to spend twenty minutes on a call.
  • Notice when "yes" is really "that sounds reasonable." Politeness bias is real. Respondents often answer in a way that avoids friction with the interviewer rather than expressing genuine intent, especially when the interviewer is visibly invested in the idea.

A practical framework for discovery

Discovery works better as a structured sequence than as an open-ended set of conversations. The following framing doesn't require weeks of ceremony — a narrow, well-scoped discovery effort can move through all four stages in days — but skipping stages tends to produce weaker evidence at each step that follows.

StageCore questionTypical methodsWhat "done" looks like
Problem framingIs this a real, specific, frequent problem, and for whom?Interviews, workflow observation, support/sales-ticket reviewA problem statement specific enough to be wrong — not a vague theme
Hypothesis generationWhat are the plausible ways to address this, and what would have to be true for each?Assumption mapping, competitive/alternative-solution reviewA short list of named, falsifiable assumptions, ranked by risk
Cheap validationDoes real evidence support the riskiest assumption?Prototypes, concierge tests, landing-page or demand testsA specific assumption confirmed, disconfirmed, or genuinely inconclusive
Feasibility checkCan this actually be built and sustained at reasonable cost?Technical spikes, architecture review, cost/effort estimationA clear-eyed view of what building it would require, before committing

Problem framing

A problem statement that says "users struggle with reporting" is not yet usable. A problem statement that says "operations managers at mid-sized logistics firms spend part of each week manually reconciling delivery data across two systems because the systems don't share a common identifier" is specific enough to be tested, and specific enough to be proven wrong. The discipline of problem framing is largely the discipline of forcing vague impressions into statements that can fail.

Hypothesis generation

Once the problem is framed, the next step is naming the assumptions embedded in any proposed solution — not the solution's features, but the conditions that would need to hold true for it to matter. For a given idea, that typically breaks into three categories worth separating explicitly: is the problem real and does it matter enough to act on (desirability), can it actually be built within reasonable constraints (feasibility), and does solving it make sense as an ongoing effort rather than a one-off favor (viability). Naming these separately matters because a team can validate desirability enthusiastically while quietly ignoring that feasibility was never checked.

Cheap validation before code

The purpose of this stage is to generate evidence at the lowest possible cost, which almost always means avoiding production code entirely at first:

  • Clickable or static prototypes let people react to a concrete interface without any of it being functional, surfacing usability confusion and mismatched expectations before a single line of backend logic exists.
  • Concierge and Wizard-of-Oz tests deliver the outcome the product would eventually automate, but do it manually behind the scenes — a person fulfilling requests, compiling a report by hand, or manually routing a request that a system would eventually route automatically. This tests whether the outcome is valued at all before investing in automating it.
  • Landing-page and demand tests put a description of the offering in front of real prospective users and measure a genuine action — an email signup, a waitlist join, a scheduled call — rather than a survey response. The value of this method depends entirely on measuring committed action, not passive interest; a page that just asks "would you be interested" collects opinions, not demand signal.
  • Manual, small-batch delivery for a handful of real users can validate an entire workflow end-to-end before any part of it is built as software, at the cost of not scaling past that handful of users — which is exactly the point at this stage.

Each of these methods trades a small amount of time for a large reduction in the cost of being wrong. The mistake to avoid is treating any of them as a formality to get through on the way to a predetermined build — they only produce useful information if the team is genuinely prepared to change direction based on what they show.

Feasibility has to be checked early, not assumed

A problem can be real, painful, and validated by every interview and demand test the team runs, and the resulting product can still be a poor idea because it's technically impractical, prohibitively expensive to build and operate, or dependent on data or integrations the team can't reliably access. This is where discovery frequently breaks down: teams treat desirability validation as the whole of discovery and only bring in engineering once a direction has already been socialized internally, at which point a feasibility concern feels like an obstacle to push past rather than legitimate new information.

The fix is straightforward in principle and requires discipline in practice: involve technical judgment during hypothesis generation, not after. A short technical spike — reviewing whether a required integration actually exposes the data needed, estimating whether a compute-heavy workflow can run within a reasonable cost envelope, or checking whether a regulatory constraint makes an approach a non-starter — is far cheaper run in parallel with desirability testing than run afterward as a surprise. Economic feasibility deserves the same early scrutiny as technical feasibility: a solution can be fully buildable and still fail to make sense if what it costs to operate exceeds any plausible value it creates.

Avoiding discovery theater

Discovery theater is what happens when an organization performs the rituals of discovery — interviews get scheduled, workshops get run, a findings deck gets presented — without any of it having the power to change what gets built. It's a particularly costly failure mode because it consumes real time and goodwill from users and stakeholders while providing none of discovery's actual benefit, and it tends to make the organization more confident in a predetermined decision rather than less, because "we did the research" gets treated as validation regardless of what the research actually showed.

Signs that discovery has become theater rather than substance:

  • The roadmap or the pitch deck was written before the interviews happened. If a leadership narrative or external commitment already describes the product in detail, subsequent user research is functionally unable to change the outcome, no matter how the interviews go.
  • Interview questions are structured to confirm rather than explore. Questions like "Wouldn't it help to have X?" invite agreement rather than surfacing what's actually happening.
  • Disconfirming evidence gets explained away rather than acted on. A pattern of "that user just didn't understand the vision" applied to every piece of contrary feedback is a reliable signal that the process isn't actually open to a different conclusion.
  • There's no predefined threshold for what would change the decision. Without stating in advance what evidence would justify continuing, pivoting, or stopping, any result can be interpreted as support for whatever was already planned.
  • The same few enthusiastic voices are the only ones consulted. Relying on the most engaged existing customers or the loudest internal advocate for validation systematically overrepresents people who were already inclined to say yes.

The countermeasure to all of these is the same: set explicit decision criteria before gathering evidence, not after. Before running a validation test, write down what result would justify moving forward, what result would justify stopping, and what result would be genuinely ambiguous. This single habit does more to prevent discovery theater than any amount of methodological rigor in how the interviews themselves are conducted, because it removes the after-the-fact flexibility to interpret any outcome as confirming.

Turning discovery into a scoped next step

Discovery that produces a large specification document has usually gone wrong somewhere along the way. A comprehensive spec written at the end of discovery reintroduces the exact problem discovery exists to prevent: it commits to a large, detailed scope based on assumptions that are still, in some respects, untested. The appropriate output of a discovery round is narrower and more provisional than that.

A well-run discovery effort should conclude with:

  1. A problem statement specific enough to be revisited later if new evidence contradicts it, rather than treated as settled permanently.
  2. A short, explicit list of what was validated, what was invalidated, and what remains genuinely unknown — the unknowns matter as much as the confirmations, because they define what the next round of discovery or the first delivery milestone needs to address.
  3. One clearly scoped next step — not a roadmap. That next step might be a further, narrower validation test if a key assumption is still shaky, or it might be a genuinely scoped first build if the riskiest assumptions have real evidence behind them. Either way, it should be small enough to complete and evaluate on its own, not a multi-quarter commitment justified by discovery findings that were themselves gathered in a matter of weeks.
  4. A named decision-maker and a re-evaluation point. Discovery findings age. A validated assumption from six months ago in a fast-moving market deserves a fresh look before a large investment is built on top of it.

This is the natural handoff point into the kind of scoping work involved in defining an MVP: discovery answers whether and roughly what to build, and MVP scoping takes over from there to decide which sliver of that validated direction to build and test first.

Common failure modes

Two failure patterns account for most of the ways discovery goes wrong in practice, and they sit at opposite ends of the same spectrum.

Skipping discovery under time pressure. When a deadline or a competitive pressure makes discovery feel like a luxury, the instinct is to move straight to building based on the strongest available assumption. The result is rarely "we built the wrong thing slowly" — teams under this kind of pressure often execute quite efficiently. The result is closer to "we built the wrong thing quickly, and confidently, with a team that now has to unwind a shipped product rather than an unvalidated idea." The cost of being wrong is dramatically higher after something has shipped than before, because reversing a live product involves users, data, and sunk organizational commitment that a discarded prototype never accumulates.

Discovery that never converges. The opposite failure is a discovery process with no defined endpoint, where every new interview surfaces a new nuance and every finding invites another round of research rather than a decision. This usually traces back to the absence of upfront decision criteria described earlier — without a predefined threshold for "we know enough to decide," there's no natural stopping point, and discovery quietly becomes a way to defer the risk of commitment rather than a way to reduce it. A discovery process is working correctly when it produces a decision, even an unwelcome one, within a timeframe set by the stakes of the decision rather than by how long the team feels like continuing to look.

Both failure modes point back to the same underlying requirement: discovery needs a clear goal, an honest willingness to act on disconfirming evidence, and a stopping condition defined before the evidence comes in. Without those three things in place, neither more time nor more rigor in the interview technique will reliably produce a better outcome.

Frequently asked questions

How is product discovery different from scoping an MVP?

Discovery comes first and answers a different question. It asks whether a problem is real, who has it, and whether solving it is worth pursuing at all — the output is a validated problem and a hypothesis worth testing further. MVP scoping starts after that: it assumes you already know roughly what you're building and asks which slice of it to build first in order to test the riskiest remaining assumption cheaply. Teams that skip straight to MVP scoping without discovery often end up efficiently building a well-scoped version of something nobody needed.

How long should a discovery process take?

There's no fixed duration that applies across products, and treating discovery as a calendar-bound phase — "two weeks of discovery, then we build" — is itself a common failure pattern. Duration should be set by decision criteria, not a calendar. A narrow, well-understood problem might be validated or invalidated in days through a handful of interviews and a landing-page test. A genuinely novel problem space with technical uncertainty may reasonably take longer. The question to ask is not "how much time is left" but "what evidence would let us decide, and do we have it yet."

Who should be involved in product discovery?

Effective discovery is cross-functional from the start rather than handed off in stages. Whoever owns the problem framing needs to be in the room for user conversations, not reading a summary after the fact — direct exposure to how users actually talk about the problem is difficult to substitute with a report. Engineering input belongs in discovery early too, specifically to assess technical and economic feasibility before a direction is chosen, not after a roadmap commitment has already been made public.

What if discovery shows the original idea was wrong?

That is discovery working as intended, not a failure of the process. The purpose of discovery is to make it cheap to be wrong early, before the cost of being wrong includes months of engineering time and a shipped feature nobody uses. If every discovery process confirms the initial idea, that is itself a signal worth examining — either the ideas are unusually well-formed already, or the process is structured in a way that only produces confirming evidence.

Can discovery happen alongside delivery, or does it have to finish first?

Discovery doesn't have to fully conclude before any delivery work starts, but the two should not be blended on the same workstream at the same time for the same decision. A common and workable pattern is running discovery on the next problem while delivery executes on a scope that a prior discovery round already validated, so the engineering team is never idle but also never building against an unvalidated assumption.

Have a specific question about your project?

This article covers the general pattern — the fastest way to get a specific answer is to ask us directly.