Commitment Engineering

Among the hardest things about building a new product is finding your first users and customers.

It is difficult to sell the product itself, because it sucks. It's early, rough, and hasn’t gone through real iteration with users. Many founders will get frustrated trying to sell their product right off the bat, which usually results in spinning wheels without making real commercial progress.

The way out of this is Commitment Engineering: the art of building feedback loops with early users. You don't ask them to pay for (or even use) an unproven product. Instead, you ask for small, reasonable commitments as a way to validate their need and interest. It’s a test that you’re climbing up the right mountain, toward the summit of customer-dom.

The first step is finding users who identify with the problem you’re solving. This is why founders should spend their time publishing content about the problem, not the solution. An insightful blog post that makes the reader feel like you really understand their pain is an excellent way to attract potential users (and is way more effective than a vaporware mockup).

For an initial conversation with a prospective customer / design partner / user, just focus on the problem. Ask them about what they use today, why it’s sub-optimal, and what an ideal solution would look like. At the end of the interaction, summarize what you have heard, and create your first commitment hook: “if I came back in a few weeks with a first version of a product that solved this, would you take 45 minutes to use it and give me feedback?”

If they say no, stop right there! You are misunderstanding their problem, or how painful it is. Change course. But if you’re understanding things correctly, they will say yes, and now you’re in a Commitment Engineering loop.

So you build a prototype, come back a few weeks later, have them click around, and they’re going to give you a lot of feedback. Now, you create the next loop: “if I came back with another version that addressed feedback points X, Y, and Z, would you invite another person on your team to a next usage session?” Again - their reaction should give you a very good sense of whether you’re on the right track.

And on and on you go, asking for bigger commitments in exchange for your continued iteration. You can ask them to share something from the app with others, or run a meeting out of it, or use it "in anger" for a day, or demo it to their boss. It can be almost anything, but it has to be a meaningful exchange of value; if they aren't willing to invest their time or social capital, it's probably not that valuable.

Finally, you will go for the final commitment: asking them to pay (or at least introducing you to someone who can). At that point it should be easy: they’re used to the give-get loop, you intimately understand their pain points, and you have built a great product together that addresses them.

And now you have your first customer!


A special thanks to Chris, Bob, Emily, and the others who developed, perfected, and taught me the art of Commitment Engineering.