I am designing the account system for a site and I need to decide how best to handle connection to Facebook vs. natively registered accounts.

Some options I have considered:

  • Make user sign up with their email, then give the option to expedite future logins with Facebook connect.

  • Let user have the choice between email signup and Facebook connect,
    and if they sign up with FBC, then give them the option to associate an email with the account.

I know there's something obvious I'm missing but I don't know what.

2 Answers 2


You should always ask first for the email, and use facebook login as an additional/experimental option.

The app logic should manage merging the local (email) accounts and 3rd party accounts (facebook, twitter, etc). Passport.js or Django-allauth are examples of packages that help devs achieve this.

The metrics will tell you which is the correct final choice. Take a look at this…


Hope it helps!


The main advantage of logging in with your Facebook account is not having to remember your username and password.

Thus for your website, you almost always do want to have the user's e-mail address. The procedure we use at our projects is:

  1. User clicks on Facebook logo
  2. User fills out the form provided by Facebook (in a popup)
  3. After successfully filling out the form, the user gets redirected to our regular signup page where they choose a user name and e-mail address and submits
  4. A confirmation e-mail is triggered (standard double opt-in)

Deleting the connection or reconnecting can then be done on the user settings page.

The advantages for both user and the website are

  • The step to set a password can be optional and at any place you want it, as there's no password needed for logging in (just be sure you don't allow disconnecting without a password - users would get locked out otherwise)
  • The user is less likely to abandon the form if it's shorter and they're already past step 1
  • Users usually remember that they registered by connecting with Facebook, so there are less multiple accounts per user (a lot of users just create a second account if it's a website where they don't store much information and just use the features)
  • Websites have a definite e-mail address to contact the user and don't have to guess if the proxied e-mail address provided by Facebook is valid
  • If there's a password set, the user has the possibility to log in using Facebook or their e-mail address and password. By relying solely on Facebook you'll run into the problem of users that aren't able to access their account on your website because they deleted their Facebook account. This kind of dependence should be avoided.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.