5 Steps to a Better Onboarding Experience

Likely, your app’s onboarding experience isn’t very good. This isn’t because your product isn’t well designed or easy to learn; it’s because building successful onboarding experiences is just hard.


A couple of months ago, my chess puzzle app was struggling to retain new users. I loved the app, and many of my users did too, but, most people who downloaded the app wouldn’t use it more than once. So, I decided to build an onboarding experience for all the lost users.

Today’s users are more discerning than ever, have more options, and have shorter attention spans. When you look at your product, you may see a useful, beautiful, fun app which is great at solving a specific problem or need. But when new users see your product, they see a menu with too many options, a login screen trying to steal their email address, and a learning hurdle they need to overcome.

I followed five steps which got me to an onboarding experience I was proud of:

  1. Dissect your current onboarding
  2. Make your users successful ASAP
  3. Bucket your users
  4. Test it on real users
  5. Measure your success

1. Tear it apart

It’s hard to critique your own work, but it’s a valuable skill to foster. I was inspired to take this step seriously by useronboard.com. The site has done incredible teardowns of many famous products and does a fantastic job showing what works and doesn’t work when onboarding new users. I’d highly recommend going through several of their slideshows before taking a look at your own product.

So, here is my teardown of my old app with all its flaws. I hope you find it brutal enough.

Here’s everything I did wrong

There’s obviously a lot to improve, but the top things I decided to fix were:

  1. Persuade the user the app is worth their time before asking them to sign up.
  2. Set up each user for success, not failure.
  3. Minimize choice when users first use the product.

2. Make your users successful ASAP

Great products aren’t just powerful; they make people feel powerful. Your product should transform your user into a better version of themselves. This could be making them more productive, more informed, or simply happier. You need to identify the earliest moment that people feel this emotion.

For us, this action was completing a difficult puzzle correctly. Chess is a hard game, so this is no easy feat. But when users overcome this challenge, they realize they’ve become something new — a smarter chess player. This transformation will persuade them to keep using the app.

Currently, the app requires users to sign in before even attempting a puzzle. Instead of this, I rewrote how login worked to allow people to play puzzles without signing up. I only ask them to sign up after they’ve successfully completed a puzzle. But, the order of these actions is only half the problem. As I said, chess is a difficult game, and many users aren’t yet capable of completing a difficult puzzle. If the app gave them a difficult puzzle immediately, they’d be set up to fail.

3. Bucket users

When an experienced player comes to the app, they want to be challenged. But, if the first puzzle the app gives users is too difficult, beginners will fail. So, I had to design different experiences for beginners and experts. This is the first screen for a fresh install:

First launch screen

A couple of things to note:

  1. This screen has only three options so the user won’t be overwhelmed for choice.
  2. Users are often nervous about picking wrong and then having to restart. The help text at the bottom should help these users realize that this decision won’t ruin their experience if they pick slightly wrong.

Likely, your user cohorts will be different. If you’re a music discovery app, you might bucket users into those who are looking for specific music and users who want to explore new music. For a reading app, you may split your users into fiction readers, nonfiction readers or other genres. Just make sure you don’t make the mistake that Apple Music and many other apps make which overload their users with options. People are way more willing to enhance their profile after they see value than before. You should bucket them just enough to get them to that key experience you’ve identified.

If a user is a beginner, they start with some interactive lessons which teach them how to solve chess puzzles. If the user is advanced, they go straight into tough and interesting puzzles.

4. User Testing

Once you’ve built a first version of your onboarding, you need to test it on some real people! You’ll be shocked at how difficult people find things which you think are easy. The best way to do this testing is in person. You won’t understand how people are using your app unless you actually watch them. Find some friends who haven’t used the app, sit down with them and ask them to start using the app. Likely, they will quickly ask you questions on how things work or what they should be doing. Resist the urge to help them! Instead, simply reply with more questions like:

“What would you do if I weren’t here?”

“Do you see a way of answering that with the product?”

Every time they ask you a question, it shows a weakness in your onboarding flow. New users have no loyalty and will quickly revert to using other apps at the first sign of trouble. Candy crush is just a few taps away and you only have one chance to convert each person. On one of the user tests I did, I wrote down twenty-nine places the user could have dropped out! Each problem was just a small fix such as writing clearer copy or adding a tooltip.

5. Measure success

When you release your new experience, you’ll want to see how much better you’re app is doing. You should identify a few metrics which you expect to improve after the release. For my app, I wanted to improve 1-day and 7-day churn as well as have more users attempt at least one puzzle. You don’t need to overdo it here and track every user action as they onboard. Just track a few key flows and try to find where users drop off.

We’ve only just released the new update, so I don’t have much data yet. Early results suggest that day 1 retention has approximately doubled. I’ll update this post once we have more to share!

Update: It’s been a little over two weeks since we released the new version and day 1 retention has remained bullish (increasing by about 2.5x). However, day 7 retention has only increased by about 50%. This is still a great improvement, but I think I can do even better. Since most of my work concentrated on the first few days, this isn’t that surprising. Next, I should look at keeping the user engaged a week or more after they’ve used the product.

Success! The sooner users get here, the better.

Try it for yourself

If you’re looking for ideas, want to learn something new, or just have some fun, check out what we’ve done. You can download the new Chess Tactics & Lessons on the App Store, and let us know what you think of the onboarding process in the comments.

Thanks to Alice Avery, Nick Snyder, Islam Sharabash, Judy Logan, Ryan Blunden, and Joe Kramer for your help on this post.