Onboarding best practice

My notes on onboarding

In general, the onboarding process aims to:

Educate the users about the app’s major functions. Collect information that is needed to create personalized content and experience.

  • Use as few words as possible. If there are too many words, the onboarding experience won’t be too pleasant. It’s not that people don’t like to read, but that after the download, the user really wants to run the app to see what’s in there.
  • Use about five pages and show the progress. People can get bored if the onboarding is too lengthy. Thus, it’s usually a good idea to use about five pages for your onboarding. In addition, use a page indicator or something to clearly show the onboarding progress to keep the users informed. Trust me. People have more tolerance if they’re informed.
  • Focus on effective communications. With the page limit, it’s critical to show the most important functions or benefits of your app. Leave the trivial things out for the user’s own exploration later. After the onboarding, the app users can have an overall intuitive impression of the app.
  • Allow the users to skip certain customization settings. For some content-providing apps, such as reading, music streaming apps, although it’s beneficial for the users to offer customized content, many users don’t like to answer a series of questions about their own behavior. So, it’s important that there is a skip button that allows the user to skip all these settings.


  • swiftui https://blckbirds.com/post/how-to-create-a-onboarding-screen-in-swiftui-1/
  • swiftui https://github.com/AugustDev/swiftui-onboarding-slider
  • For mac here: https://www.avanderlee.com/swiftui/dynamic-pager-view-onboarding/
  • Onboarding scrollview for ios and macos in swiftUI: https://github.com/benjaminsage/iPages/
  • onboarding lib: https://github.com/demianturner/DTOnboarding