How to make user onboarding suck less
Hi folks, It’s been a minute!
Hope you’re having a great summer and using this weekend to get a much needed break from that H2 planning.
Earlier this month I spoke at Product Festival about a topic that I’ve been thinking a lot about lately - how to make user onboarding suck less.
Here’s a video of the session:
And if you’d rather just read, here’s the transcript:
A few weeks ago I saw this gif about user onboarding and since then I have been waiting to share this with you because I hope you’ll understand why this is so funny.
The reason this is so funny to me is because its SO TRUE - most user onboarding is a drag. It’s usually taking users through a bunch of shrouded modals with tooltips trying to point to some place that the user has no context of and doesn’t care enough to want to know just yet.
But why should you care about user onboarding? Most SaaS apps lose 95% of new users within 90 days. That's insane. The way you welcome people into your product will make or break the experience for them. It doesn't matter if you have the best product — If your onboarding falls short, everything else will as well.
Let’s take interviews for example - According to a study, 60% of interviewers know within the first 15 minutes if the candidate they’re interviewing is suitable for the role. Product onboarding is similar - the user is hiring your product to do a job for them and the first few minutes spent with the product influence that decision tremendously.
Onboarding is rarely ever linear - every interaction at every touchpoint that a user has with your brand, your product till they reach the moment of value is part of their onboarding. Whether a user sees a tweet or an Instagram post or they engage with an email from you or they come to the website and sign-up - in all those moments they are learning something about your product and forming an opinion of what it can do for them. While you as a product owner or a PM are not responsible for all of those touchpoints, you have the ability to influence all of these and make sure the user experiences your brand and product as one.
Onboarding for a product is not done until the user is able to extract the core value out of the product.There could be additional features that they discover over time but they are “activated” once they have taken the action that leads to value. In the case of DocuSign, that action was sending your first document to get signatures. I imagine in the case of a rideshare app it is booking your first ride. In the case of a food delivery app it is placing your first order.
Understand user intent
Define what users are looking for: Before you start doing any work on your onboarding flow, you need a super clear picture of why people sign up for your product in the first place. Loosely formed opinions and generic answers won't cut it. Get detailed. What value do people expect to get out of your product? Why did they come to you instead of a competitor? What do they want to achieve by giving you their attention, time, and money?
Activate user data early: Ask users for the minimum amount of information you need from them. There are data enrichment solutions like Prove and Clearbit that use one piece of user info to auto-fill the remaining info you need, driving up successful sign-up rate. Once you have this info, use it for personalization.
Customization and personalization are distinct concepts that are often used interchangeably in practice. Customization is when users deliberately choose between options. Most people would agree that this is a good thing, but it's also a high cognitive-load task. On the other hand is personalization. This is when you anticipate someone's needs and automatically serve them the optimal experience. It's not always the case, but most onboarding tasks should try and move towards personalization.
Use engagement data to refine your understanding of intent: If you have data infrastructure set up (Segment, Heap) and access to someone that's technical or data-savvy OR if you have self-serve tools like Mixpanel or Amplitude, then this shouldn’t take long.
Decide on a success metric
Aggregate user-level data for a bunch of events
Set up a table where you can compute the correlation between columns
If you do this right, higher value events will have stronger correlation. Use your intuition to support the data.
Ex: Twitter studied their users' onboarding behavior and discovered that if a new user doesn’t follow at least a handful of other Twitter users immediately upon signing up, they’re much less likely to return in the near future.
Treat your users like adults
Educate: If your product is dead simple, you might not need to include user education. Don't waste people's time giving advice they already know. On the other hand, if you are doing something new to most people, have an unfamiliar user interface, or need to explicitly point out important nuances, then don’t be afraid to give them an assisted experience. Consider including integrated walkthroughs, tooltips, some sample data or a video. But make these contextual. Want someone to read your boring tooltips during a walkthrough? Only show tooltips after they engage with the corresponding feature. That's when they'll care to learn more.
Different actions are more enticing at different times. If you're reading an article, a call-to-action to read more similar articles might be effective. However, that same CTA might not work when I'm in the middle of messaging someone. Elevate and present features at the moment that they are most enticing. That's when you'll see the highest conversion.
Entice: While educating users, entice them with your product's value so they're willing to put up with the boring parts of onboarding. Tease them with how amazing life will be once they are done. To do this, start by identifying the magical moments in your product where users receive maximum value. Perhaps it's when they receive their first payment, find a date, or destroy an enemy's base. Your job is to visualize those exciting outcomes during the onboarding experience. Ex: Trello does this really well (see screenshot for
Lastly, companies and products rarely get onboarding right the first time. So don’t be afraid to iterate - learn from the existing flow, run experiments by making small tweaks!