The hardest thing about an MVP

The hardest thing about an MVP

Building an MVP is the most exciting part of a startup journey.

You get to focus on the problem and apply all the best practices to build something people want quickly.

Progress is great, you can fly through most of it and even show progress to early adopters.

But then you need to get ready to onboard customers and you need to make your MVP somewhat usable. And that's when things get hard.

If you've been in this game for a while, you know the 90/90 rule.

But before I tell you about this rule, let me give you some context.

  • I'm building a SaaS in public, posting progress every day today is day 18.
  • I'm adding lessons from my mistakes and learning from current events.
  • I'm live-sharing as I build holding nothing back.
  • If you're interested, you can binge-read all the past updates in my newsletter.

In software engineering 90/90 rule states:

The first 90 percent of the code accounts for the first 90 percent of the development time. The remaining 10 percent of the code accounts for the other 90 percent of the development time.

There is also Hofstadter's Law

Hofstadter's Law: It always takes longer than you expect, even when you take into account Hofstadter's Law.

This is a funny way to say that no matter how much we plan and focus:

  • things will take longer than expected
  • the last 10% of the work is what takes the longest (a.k.a the second 90%)

This has a big impact when building an MVP.

Let me give you a real case, my SaaS.

I started the MVP of Landing Page Wizard almost 10 days ago:

  • I focused on the core concept: Make it easy for people to create a high-converting landing page.
  • I had something working the first day. A simple page that was loading some hardcoded content on a site somewhere.
  • The day after I added a "Hero" section. Then configured a bunch of NextJs magic to have the page as perfomant as possible.
  • Then I added most of the sections that a landing page needs (social proof, benefits, faq, etc)
  • The next day, I made the content editable via a form to create as many pages as needed.

That was about 4 or 5 days' worth of work. All was going incredibly well.

Then I started adding images and went down a rabbit hole of performance optimization.

I can spend the next 100 days talking about this, needless to say is still a hard thing to get right but I did it.

That set me back a day or so but still insane progress.

I then shared a demo with a close group of people to get some early feedback, all was great and I got positive comments.

It was time to get some early customers.

Things started to get complicated.

To have a customer I need to have a "few" things in place:

  • a way for them to pay me
  • for them to pay me I need to set up Stripe
  • to set up Stripe there are some requirements, for example, a Terms and Conditions page
  • After stripe is set up and I can get a customer, they need an account
  • So I need to add an auth system, can easily take one off the shelf like Clerk, I choose supabase. Less drop-in features but I used them in the past so no learning curve.
  • I need a database to store some of the user information and the landing pages they are creating
  • I need to add authorization to make sure users can only see the data that belongs to them

And the list grows longer.

As you can see, it all started as a simple way to create landing pages. But it quickly became a whole lot of work that had nothing to do with the problem I wanted to solve.

I hear you in the back of the room: "Just use a SaaS starter kit"

You might be right. I see SaaS starter kits as the wrong solution to this problem.

I'll cover this in more detail as I have some good examples of how SaaS starter kit can be more harmful than good

I believe they create a false sense of security.

Ship your SaaS in days not weeks but then spend weeks learning how the starter kit works. Configure all the third-party providers. Work in the things you MIGHT need, not what you desperately need.

I'll use auth as an example, without a starter kit you need to think:

"What's the easiest thing I can do for my users to have an account"

Note that the question didn't cover creating an account, password recovery, email confirmations, and more. That's on purpose

The easiest way for my customers to have an account is to create the account manually. I can add it to my auth provider and set up a magic link for them to log in.

I'm onboarding people manually so I don't need to have a full login system now.

It's super important to keep applying the same principles throughout the whole MVP development cycle. Not only the first 90%, but the second 90% too!

In 2024 is super easy to find something that solves your problem. What's hard now is knowing what problems that solution creates.

Over to you now:

How do you go about making your MVP good enough to onboard your first customer?

Are you a SaaS starter kit user? What was your experience with it?

Progress

So far

  • I started a SaaS 2 years ago. I failed at making it take off.
  • I had a problem: I wasted tons of time and money in creating landing pages that sucked.
  • To make it worse, I wasted tons of money on ads that would send traffic to terrible landing pages.
  • I decided to get all the learning from my failure and build something new in public
  • I'm documenting the journey and the actions I'm taking every day. Also adding learning from my experience
  • After I picked the problem I wanted to solve. I formulated a hypothesis: "People are willing to pay for a product that makes it easy to create high-converting landing pages."
  • I did a few user interviews to confirm the hypothesis.
  • After doing enough interviews I had enough confidence to build an MVP.
  • I shared the initial MVP with a few people and I got positive results.
  • My business model will be a monthly subscription starting at £10 a month for the first 10 customers.
  • Once I've onboarded the first few customers I'll have a better idea for pricing.

Latest

  • I'm making the MVP ready to onboard customers.
  • The core MVP is good enough but a few things are missing:
  • User accounts, an auth/authz, and a database. Nothing major.
  • Yesterday I added a database, I went for Turso + Drizzle as ORM.
  • Today I'm adding auth using supabase. I will create an account manually for now so nothing special is needed
  • After that the last thing missing is Stripe. Getting a payment link for customers to pay me and start using my product

Celebrations

So many legends!

  • Yesterday the newsletter count was stuck at 33. Today is at 38! This is unbelievable thank you all so much!
  • The LinkedIn newsletter just keeps growing 155 people subscribed so far!
  • I met some incredible people on X, if you're on that platform come say hi.

I cannot thank you all enough for your help and support, you're all legends!


Bhaval Patel

Startup & Enterprise Growth Specialist | Tech Unicorn Architect | 20+ years in Software Development & Consulting

8 个月

Oh, the infamous second 90%"—where dreams of a smooth launch go to test our patience! It's like the MVP is saying, "You thought you were done? Hold my coffee!

Katie Deloso ??

?? Fractional product designer & behavioral science nerd helping apps get good & sticky (300+ and counting).

8 个月

Making progress bit by bit ... ??

Auroriele Hans

?? Message right for customer-driven revenue | Stand out in crowded categories and channels. Build trust and relationships. Make people love your product. ??

8 个月

That's right! It costs more to get new customers than to keep your current ones.

Wayne Alexander

Building ALL-IN companies and teams

8 个月

90/90 - I’m going to remember this one Matt ????

要查看或添加评论,请登录

Matt Hertel的更多文章

  • Why having no new customers is the best news for me

    Why having no new customers is the best news for me

    I've been building me new SaaS in public for 6 weeks. I got my first customer after 4 weeks.

    3 条评论
  • The one thing early founders don't do

    The one thing early founders don't do

    They don't look after themselves. We learned that only the people who grind for 18/20 hours a day can succeed in this…

    13 条评论
  • From 0 to my first paying customer in 28 days

    From 0 to my first paying customer in 28 days

    I am blown away that I can write this title. I had to take a screenshot of the email I got from stripe Over a month ago…

    12 条评论
  • Investor update - Revealing all the numbers

    Investor update - Revealing all the numbers

    I'm building a SaaS in public, posting progress every day. I don't have investors but I have people investing their…

  • How to create your own luck

    How to create your own luck

    In my previous SaaS, it took me a while to realize that I needed to validate a problem before building a solution…

    5 条评论
  • Only successful founders to this?

    Only successful founders to this?

    They sell their product. In a previous post, I talked about how sales are hard as a tech founder.

    5 条评论
  • What to do when is one of those days?

    What to do when is one of those days?

    Building a company is the best thing ever! It is fun, challenging, and rewarding. And some days is the worst thing that…

  • When can I stop interviewing users?

    When can I stop interviewing users?

    To validate my SaaS idea I've interviewed 15 people. I posted the whole process out in the open including: how I was…

    4 条评论
  • As a tech founder, I could handle anything. Except this.

    As a tech founder, I could handle anything. Except this.

    Sales. It used to be the worst thing for me.

    12 条评论
  • This week's numbers are in! Investor Investor

    This week's numbers are in! Investor Investor

    I'm building a SaaS in public, posting progress every day. I don't have investors but I have people investing their…

    5 条评论