Using an onboarding pattern is a great way to increase first time user engagement and retention, but when improperly designed it will make matters worse.
The word onboarding literally says “get them on board”. When your app has a complex UI, or long multi-step workflows, onboarding can be a great tool for making sure your users understand how to get through your setup, or one of your workflows. However, like any tool, it is only as good as its design.
Based on observations I’ve made over the years, here are a list of rules that you must follow when designing an onboarding workflow:
1) It has to actually.. you know.. get the user on board
This might seem obvious, but one thing I see over and over again is that an onboarding design simply points out aspects of the UI in a shotgun like fashion, and doesn’t actually walk the user through a setup or using the UI. This is a terrible waste of time and indicates that your app has problems that need addressing before using an onboading pattern at all. If you really have to point out what each and every button does, your app design is missing discoverability, affordance, and comprehensibility. Those are major problems and should be fixed first.
This shotgun “show things randomly” anti-pattern reminds me of technical whack-a-mole. You’re just randomly calling out different parts of the application with no clear goal.
Instead, design your onboarding to walk a user through a flow that actually accomplishes something that they’ll remember. If you’re doing a first time setup with many steps to complete, make sure the onboarding itself is intuitive and not distracting. Make sure that it takes your user through the shortest path to get up and running. Most importantly, make sure that by the end the user is actually set up enough to use the app!
2) It can’t be full of bugs or so badly designed that it causes a user to get rimrocked
When you’re climbing a mountain, the last thing you want is to get stuck in a position where there’s no way up, and no way back, but I’ve seen this a number of times in onboarding designs from both bad design and bad code. Just like every other part of your product or service, your onboarding patterns should be thoroughly tested both from a UX/UI standpoint, and from a technical one.
From a design perspective, the user should be able to escape from onboarding at any time. They shouldn’t be trapped. If they do decide to exit the onboarding journey, you should offer them the ability to pick up where they left off. Nothing is more frustrating than having to change views on a UI to get a better picture of things, and then having to start all over in a multi-step process.
On the technical side, onboarding is the worst place to have bugs. Your new users are coming in and utilizing onboarding to get acquainted and get started with your application. If there are software problems cropping up while these people are brand new to your app, they are certain to quickly abandon your platform. This is a waste of your advertising and marketing budget.
3) It must minimize distraction
Large applications can be really noisy. The interface is filled with a lot of controls, buttons, notifications and callouts all vying for a user’s attention. During onboarding, these types of distractions must to be minimized. Highlight the areas you’re concentrating on and make everything else secondary or completely unavailable. Your busy UI is likely to cause some squirrel effect during a time when it is absolutely critical for a user to be paying close attention.
Also, don’t dip the user’s toes in other parts of the application that are unimportant to the task at hand. “Here is X, but we’ll talk about this later” is pointless. Keep your user on the path you walking them through.
4) It must be forgiving
Your onboarding workflow is likely one of the first things a new user will experience. This experience must be forgiving. It must allow for mistakes to be made, and for your new user to go back and correct them. Don’t trap them in a forward-only linear flow where a single mistake in the past means they have to completely start over.
In summary, onboarding is a great way to increase user retention and reduce your support burden. However, it can’t fix all design problems. Before considering onboarding, do what you can to repair basic UX and UI issues in your application, and consider onboarding for truly complicated flows and setups.