DEV Community

Cover image for How I decide when an app is ready to launch
Shayan
Shayan

Posted on

How I decide when an app is ready to launch

There's no perfect moment to launch. I've shipped things too early and watched users bounce off broken flows. I've also waited too long, polishing features nobody asked for while the motivation slowly drained out of me. After launching a few products, I've landed on a simple framework for deciding when something is ready.

The core feature has to work

This sounds obvious, but it's easy to get wrong. Your app probably does multiple things, and you need to be honest about which one is the core feature. That's the one thing that has to work reliably before you launch.

For a note-taking app, that's creating and saving notes. For a feedback tool, that's submitting and viewing feedback. For an invoicing app, that's creating and sending an invoice. Everything else is secondary.

I ask myself one question: if a user signs up and tries to do the main thing, will it work? Not perfectly, not beautifully, but will it actually work? If the answer is yes, that box is checked.

Users can sign up and log back in

Authentication sounds basic, but I've launched things where edge cases in the auth flow caused real problems. Password reset didn't work. OAuth broke on certain browsers. Session expired too quickly.

Before I launch anything, I create a fresh account with a new email, go through the full sign up flow, log out, and log back in. I also test password reset. These paths get used immediately and failing here makes your product look broken even if everything else works.

I've used it myself for at least a few days

I don't launch things I haven't used. Not just tested, but actually used for real tasks over multiple days. This is where you find the friction that quick testing misses.

When I was building my feedback tool, I used it to collect feedback on itself during development. That sounds circular, but it revealed problems I never would have found otherwise. Features I thought were intuitive turned out to be confusing. Things I thought were fast turned out to feel slow when you're doing them repeatedly.

A few days of real usage teaches you more than weeks of staring at your code.

At least one other person has tried it

You're too close to your own product to see it clearly. You know where everything is. You know the workarounds. You fill in gaps mentally without realizing it.

I always get at least one other person to try the product before launching. Not for detailed feedback, just to watch where they get stuck. The first time someone else uses your app is humbling. They'll click things you didn't expect, miss things you thought were obvious, and abandon flows you thought were straightforward.

You don't need a formal beta program. Just one friend or colleague willing to spend 10 minutes poking around. Their confusion will show you what needs fixing before you put it in front of strangers.

I've decided what I'm not building yet

Scope creep kills launches. There's always one more feature that feels essential, one more edge case that needs handling, one more improvement that would make everything better.

Before I launch, I make a list of everything I'm explicitly not building yet. I write it down. This sounds unnecessary, but it helps me stop second-guessing. When I think "maybe I should add X before launching," I can check the list and remember that I already decided to ship without it.

The things on this list aren't bad ideas. They're just not launch blockers. They can come later, informed by real feedback from real users.

I have a way to hear what's wrong

Launching without a feedback channel is flying blind. Users will have problems, find bugs, and want features. If you don't give them an easy way to tell you, they'll just leave and you'll never know why.

I think collecting feedback is so important that I built my own tool for it called UserJot. But you don't need anything fancy. A feedback form, a dedicated email address, or even a link to a simple survey works. The point is that users can reach you easily and you have a place to collect what they tell you.

UserJot Website

This also takes pressure off the launch. You don't need to get everything right because you have a system for learning what to fix next.

The things that don't matter yet

Here's what I've learned to ignore when deciding whether to launch:

Perfect design. Good enough is good enough. You can improve the design after you know people actually want to use the thing.

Full feature parity with competitors. You're not going to win by having more features on day one. You're going to win by doing one thing well and improving based on feedback.

Documentation. A few tooltips and a basic help page are enough. If users constantly need documentation, your UX has bigger problems.

Scale. Unless you have reason to expect massive traffic on day one, don't worry about scale. Most products launch to a handful of users. You can optimize later when you have real load.

Edge cases. Some edge cases matter, but most don't. The ones that matter will become obvious quickly when real users hit them.

The actual decision

After all of this, the decision usually isn't that hard. I look at my checklist:

  • Does the core feature work?
  • Can users sign up and log back in?
  • Have I used it myself for a few days?
  • Has at least one other person tried it?
  • Do I have a clear list of what I'm not building yet?
  • Do I have a way to hear what's wrong?

If the answer to all of these is yes, I launch. If I'm still hesitating after that, I remind myself that the hesitation is usually fear, not a real problem. The feedback I'll get from launching will be more valuable than anything I'd learn by waiting.

The goal isn't to launch something perfect. The goal is to launch something real and start learning from the people who use it.

Top comments (3)

Collapse
 
code42cate profile image
Jonas Scholz

didnt read the post, 99% of the time it was ready to launch last month. Stop being scared, put it out there!

Collapse
 
lemii_ profile image
Lemmi

This was very helpful. Thank you.

Collapse
 
shayy profile image
Shayan

Sure thing.