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 offering ever — If your onboarding falls short, everything else will as well.

In this post, I'll lay out what I've picked up while recently working onboarding and how you can use these principles to improve your own product. My views on this subject are largely aggregated from a bunch of other helpful resources:

Defining Onboarding

Terms like "onboarding" seem pretty straightforward, but people tend to use them to mean a wide array of different things. My favorite definition is a bit broader than most:

Onboarding is the experience between signing up and becoming an engaged user.

Note that "engaged" will mean different things for different products. The main thing to understand is that onboarding goes beyond that first session. It's everything in a person's journey up until the moment when they are truly up and running with your product.

I like how Julian Shapiro breaks this up into two phases:

  • First session: Everything the user experiences immediately upon signing up their first time. If you lose them here, you'll probably lose them forever.
  • Follow-up engagement: Everything that happens afterward. This includes notifications, support, and early product use.

If you can get both of these phases right, you'll be in great shape. But let's take a step back for a second. Why should you care so much about onboarding?

Why You Should Care

In short, you should care about onboarding because you care about retention. Engagement, word of mouth, network effects, and a bunch of other important drivers are all dependent on retention; the centerpiece of the modern-day growth model. If you want to improve it, the best place to start is with onboarding:

This maps to my own experience, where I see that most of the leverage in improving these retention curves happen in how the product is described, the onboarding flow, and what triggers you set up to drive ongoing retention. This work is generally focused on the first days of usage, whereas the long-term numbers are hard to budge, no matter how many reminder emails you send.

The reality of building a product is that very few parts of it reach a significant portion of impressionable users. Onboarding is one of those things that touch just about everyone. Couple that with the fact that it directly influences retention, and you have a compelling argument for it being worth your time.

After lots of research and some experience of my own, I've landed on a framework that I find helpful for going from research to development to iteration of your onboarding flow. Let's dig into each piece of the puzzle.

Understand User Intent

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. It's easy to nod along to this and say "I know why people come to my site," but take a second and think more deeply about this idea.

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?

Brainstorming answers to these questions is a good start, but in order to get real, unbiased data, you have to talk to users. This could be a survey or series of 1:1 conversations. Get started with the following questions:

  • Why did you seek out Product X?
  • What did you hope to get out of it?
  • What differentiated it from the competition?
  • Did it achieve the goals you wanted it to?

You can go deeper than this, but these questions should serve as a good start. Synthesize the results and come up with major themes for what users expect out of your product. These themes will be your north star throughout the rest of this process. If they are super surprising, you may need to rethink messaging and broader strategy first.

Now that you have the end goal in mind, you need to work backwards to create an experience for users that lives up to their expectations or ideally, exceeds them in a delightful way. Identify your products value to users. Map the user's journey towards that value. Simple enough.

Analyzing User Engagement

You're eager to jump in and start making product changes, but I suggest you pump the brakes momentarily while we go through one more research step. As a general rule, it's helpful to separate information collection from creation. Building product is no different.

What do your "best" users do when they get into your product? This is one level lower than the research we did on your product's value. This is how users achieve that value. Once you know what these high-value actions are, you can craft your onboarding experience in a way that encourages them.

If you have data infrastructure set up (Segment, Heap) and access to someone that's technical or data-savvy, then this doesn't take long. You can also use a self-serve tool like Mixpanel or Amplitude, but I have found them to be finicky in past analyses, so keep an eye out for inconsistencies.

When I did this for Hugo, this was the process that worked for me:

  1. Decide on a success metric
  2. Aggregate user-level data for a bunch of events
  3. Set up a table where you can compute the correlation between columns

If you do this right, higher value events will have stronger correlation. Watch out for interaction effects and don't blindly except outcomes. Use your intuition to support the data.

Remove Obstacles

You know the ultimate goal of your users. You know the indicators of them reaching that goal. It's time to build. Identify and remove obstacles along the user's path to achieving the value that they came for.

Obstacles are the things that require the most work and are the most boring to complete. They make it difficult for new users to get up and running. You can run user sessions or use a tool like FullStory to identify your obstacles.

Julian Shapiro also addresses this in his guide by going deep on the different types of improvements and how they can address common obstacles.


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 nuance, then consider the following:

  • Integrated walkthrough: This is a structured process usually within the product, where you have users set up their profile or create sample output. They do it once with instruction, then can continue on their own with a better understanding of how things work.
  • Tooltips: Similar to walkthroughs, but a bit lower-touch are tooltips. These are little bubbles or markers next to features that users can hover over or click on to get more information about how a feature works. Be cautious to overdo it here, or else you will end up pulling people's attention in a bunch of different directions.
  • Video: Personally, this is my least favorite. It makes sense to have videos available for the curious, but if your product is so complex that you need a detailed video explanation to get people started, be a little worried. Most of the time, it will just get skipped.


Ideally, your onboarding process isn't a total drag. It's your first impression! You need to provide reason for the user to keep up the momentum. These improvements aim to answer the question, "Why should I put up with all this?" by clearly presenting why someone should be motivated to go through this process.

The way to do this most effectively is with value props. People won't put up with education if they don't think they are getting something in return. Tease the experience that awaits them when they are done. Even better, preview the magic moment for them before they go through the slog.

Another part of this is time and place. 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.


You shouldn't leave users empty-handed at the end of onboarding. Give them a small dopamine hit of accomplishment. These improvements help people achieve the value they came to you seeking. In my experience, this makes them the most powerful of all.

Dating apps do this especially well. When they are walking you through setting up your profile, it's not some arbitrary exercise, it's clear that this is a productive endeavor on your part. If you can get a user to experience your products value in the first few minutes, then you're really off and running.

Continue to Iterate

Once you ship the new onboarding experience, that's not the end of the road. Onboarding should be treated like any other product feature. It should be continuously optimized and iterated on.

Lenny Rachitsky's framework for continued conversion optimization is my favorite for this. There are two places to focus: Keeping users in the flow and bringing them back in the flow.

Keeping users in the flow

This is where the majority of your time should be spent. In general, it's much easier to keep someone engaged than it is to reengage them. In rough order of potential upside, improvements here can be bucketed into three categories: Motivation, focus, and friction.

  • Motivation: What will motivate users to continue to go through the experience? At its core, this is all about understanding why they came to your product in the first place. Once you get that, you can employ tactics like creating scarcity and highlighting value.
  • Focus: What is keeping users from getting distracted with the other 10 billion things on the internet? It's your job to decrease distractions. Make it clear what the next action is and don't take attention away from that if possible.
  • Friction: What is making it more difficult for users to complete the action? Friction will always creep back in the flow. Beat it back by removing unnecessary steps, setting smart defaults, and improving performance.

Bringing users back into the flow

You never want to see users churn early in their experience, but the world is an imperfect place. When it inevitably does happen, what can you do about it?

  • Medium: How do you reach users that bounce? There are only so many viable answers to this question, but getting the combination right for your app is crucial. Things like emails, push notifications, and retargeting are the usual suspects to get started with.
  • Message: Once you reach users that you aim to resurrect, what are you going to tell them? You can give them a reminder, saying that they didn't finish the process they started. You can say that something has changed, maybe prices went down or a new feature was shipped. Lastly, you can offer more useful information. The key is choosing the framing that makes the most sense in the context of the action the user was performing when they left the flow.

More Onboarding Principles

I've laid out the broad strokes of how I'm thinking about engineering new onboarding experiences, but clearly there's more to it. These are some more principles that I've found useful helpful using the framework above.

Customization vs. 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.

Lasers, not shotguns

It's tempting to accomplish a lot during user onboarding, but you also don't want it to be too long, right? This thought process isn't wrong, but it can lead to ineffective and overwhelming experiences for new users.

Getting onboarding right means knowing precisely what people want to accomplish and then putting all your energy into getting them there in the most effective way. This means you can't pull people in different directions. Pick something and be focused.

One related tip is to go deep on one or two concepts rather than trying to expose new users to every feature. Start with the important and familiar stuff. Then layer on features that aren't as instrumental or are a little more confusing.

Active vs. passive

There is a spectrum when it comes to how "hands-on" your onboarding process can be. Ultimately, this depends on your product and business model. Superhuman is a paid product trying to teach you a new way of working, so it makes sense for them to get on a call and explain the workflow.

On the other side of the spectrum, if you are the 1000th calendar app on the market, then there's no need for a call or structured onboarding. Just point out the key features and let people get started. If people "get it" from the jump then you're already at an advantage. Don't add unnecessary friction.

Delightful first moments

Onboarding should guide users to the aha moment. Lots of great product teams get this part right. Where they miss opportunities is with all of the other first moments. First login. First landing. First emails. All of these things can be done in special ways. When you put them all together, they add up!

Your goal should be to welcome people into your product in a way that excites them to become lifelong customers. Excitement is achieved through a delightful onboarding experience.

Setting intelligent defaults

You should be opinionated about how your product is used. Most products try to please everyone and end up pleasing no one in the process. These opinions show up in product design, but also in defaults. Be mindful of what you choose. The reality is that the majority of users won't change it. As they say, the devil is in the default.

Account for different contexts

Keep in mind that some people will come into onboarding with less context than others. With Hugo, this shows up in team invites. People can invite team members via email and they are in the product before ever landing on our marketing website.

It's easy to overlook these cases, but the onboarding experience for these people is even more critical. They have less context. Quickly show them why they should care to use your product.

Match triggers to natural patterns

Triggers are what bring people back into your product: Push notifications, emails, messages, and more. Before you go adding a bunch of triggers, take the time to understand your natural usage patterns. Then layer on cues to amplify them.

This varies depending on the product. For notetaking, you know that your app should be used several times every day. For payroll, it's more like a couple times a quarter. Once you understand these inclinations, think about the mediums that fit natural patterns best to get people back into your product. This is habit building 101.

Onboarding is ongoing

Throughout this post, we've talked about onboarding in the context of initial experiences that a person has within an app. This isn't wrong, but in a way, onboarding never ends. As users become more experienced at using your product, there will be features they haven't discovered and updates being introduced.

These should be brought to attention gradually, and in a way that allows people to tackle learning a new feature only after achieving mastery of the previous one.

This can be difficult to get right, but longer term, it will become more and more important as you want to convert activated users into lifelong customers.

Thanks for reading! If you enjoyed this post and you’re feeling generous, perhaps like or retweet the thread on Twitter. You can also subscribe in the form below to get future posts like this one straight to your inbox. 🔥