While designing the onboarding, always remember about the edge cases and empty states. The user will most likely not follow the perfect user flow you have created. That’s why designing for the edge cases and testing them before launching the product can’t only improve the customer satisfaction but also decrease the churn rate. Moreover, don’t show empty screens and don’t punish users for something that isn’t done correctly. Indicate small improvements and achievements. Each error and problem during the onboarding can be designed, so the user goes smoothly through it without the feeling that something is wrong. It can be done by using well-thought copy, tutorials, tooltips and visual clues that help the user. Also, an unexpected error shouldn’t be the dead-end. Always indicate the next step that the user has to take. Don’t break the flow by not giving the way out.