Design signup flows

Business Benefits

Maximize revenue and users, and improve the user experience.


Calculate signup flow friction by measuring steps to completion, information cost, and effort investment.

  • Steps to completion: The number of steps or the series of pages that the user is expected to pass through.
  • Information cost: The number of fields that a user has to fill up.
  • Effort investment: The number of decisions the user must make, and the number of additional activities required like email confirmation, and CAPTCHA.

Outline what you’re trying to accomplish, who your audience is, and what your users need to do to get to their ‘Aha!’ moment, where they understand the value of your platform.

  • What’s the purpose? What are you trying to accomplish with the sign-up process and how does each step help you do that? Is your priority gathering user information, scoring lead quality, or a great user experience?
  • Who is your audience? Different people respond differently to privacy concerns, have longer or shorter attention spans, and value their time and effort differently. Test it on your own audience.
  • What’s the product? How complicated is it? What problem does it solve? Mold the product to the target market, and make the user flow as seamless as possible while still giving the user the information they need to succeed.

Pick a signup flow style depending on how quickly you want to get people using your product, and the information that you need from them.

App access after a series of tasks: Sign up (Email ID + Password) ? Account Setup ? Email Confirmation ? App

Ask users to submit their information such as email, username, and password on the signup form, then guide them to set up an account and confirm via email, before they get access to the software. Positives: users are familiar with the process, and it helps you keep spammers away from your product.

  • To eliminate friction from this flow, require minimal effort on your signup page. For example, ask only email address and password.
  • If you’re making access to the app the last thing that users experience, make sure they know why they have to finish each task.

Account setup after app access: Sign up (Email ID) ? App ? Email Confirmation ? Account Setup

The user is taken to the app as soon as they type in their email address, and then they verify their email address and claim their account by filling in other details. Positives: guides people directly to the product without distractions, eliminates friction, and is user-focused. Segment serious evaluators who set up complete accounts to streamline your marketing and sales efforts.

Access app immediately: App ? Sign up (Email + Password) ? Email Confirmation ? Account Setup

The user goes straight to the app, and only afterward they are prompted to sign up, asked to set up email, password, and verify account. This approach is known as a lazy or soft registration process. Positive: eliminates all signup-based friction.

  • Think about how you can avoid signup forms in favor of gradual engagement when planning a customer’s initial experience for your web service.
  • Show potential customers how they can use your service and why they should care.
  • If you choose to auto-generate accounts for potential customers, ensure there is a clear way for them to access their accounts. People will often ignore or not see account creation emails, and might be uncertain if they have an account or not.
  • Don’t simply distribute the various input fields in a signup form across multiple pages. This will usually reduce efficiency and not delight anyone.

Plan out your signup flow, using the example flow diagrams to guide you.

App Access after a series of tasks:

Account setup after app access:

Access app immediately:

Simplify your signup flow where you can, and add microcopy to explain why a step is needed where you can’t.

If you are asking for more information upfront on your signup form, you need to justify it to the user. For example, Slack uses microcopy to offer an explanation on why entering a Team Name helps the user later.