Imagine a user logged into my iOS app using their Google account. Months later, they are trying to create an account using their email address (the same one connected to their previous Google social login). Should I

a) serve them an error message reading "This email is tied to a Google-authenticated account already in our system."


b) simply let them create the account again - and figure out how to merge the 2 accounts together seamlessly?

If it's b), can you explain the technical hurdles I'll run into by merging the two accounts? I'm preparing my specs and want to communicate my needs to the engineers as succinctly as possible. Thanks!

  • It should be (a). Personally, I think you should always guide users to create account on your website rather than using 3rd party logins. Because using 3rd party logins often confuse users on which service they have used to login the last time. So the rule of thumb for me is, use the 3rd party login information to create an account on your own website, in other words make the registration as simple as you can by using 3rd party login APIs.
    – Ades
    Jul 7, 2015 at 4:23
  • It depends on specifics. Is the email address the username? If so, that needs to be unique. So they couldn't have two accounts with the same username in the first place.
    – DA01
    Jul 7, 2015 at 16:16
  • As for b) that's a question entirely dependent on your code base. We can't answer that.
    – DA01
    Jul 7, 2015 at 16:17
  • @Ades, are you saying "use Google to authenticate their account", but still ask them to create their own account? I'm confused by your suggestion. I'm imagining you mean: Google authenticates their account, but they additionally create their own username and password for my product. please clarify.
    – Sergi
    Jul 7, 2015 at 16:30
  • @DA01, the code base isn't built yet - so, yes, please speculate on the best practices that should be designed into the code architecture. Re: the username - email is the primary account identifier. Regardless, my focus is how to handle the situation of them attempting to create a custom login after they've already associated their account to Google. The chances of them ending up w/ 2 accounts is possible, if, for example, their Google account is not the same email address as their custom login. If so, I hope they use the same name so i can alert them as to the overlap & merge their accounts.
    – Sergi
    Jul 7, 2015 at 18:20

1 Answer 1


c) Just log them into their existing account with no error message. (I just tried it and confirmed this is what StackExchange does.) Serving an error message and making the user navigate to the login page and retype their credentials is a poor experience. Once the user is logged in, it will be clear that they didn't need to sign up as they already had an account. You should be ensuring that accessing your app is as quick and easy as possible, removing any possible barriers to entry.

  • Did you try from iOS? I've tried several times over the last 2 days on iOS8. First I turned off my open ID on the StackExchane website profile and left only my Google as one of my account log ins. Then i tried creating a custom(Stack Exchange) account in iOS. The error message was: Error - This email address is already in use. Then i tried logging in via the custom account (same email as my Google) and received the: Error - Bad Password. This is exactly the user experience I'm attempting to avoid. That's why I'm considering solution a) above.
    – Sergi
    Jul 8, 2015 at 15:47
  • I apologize, I only tried it in a desktop browser. However, I still think this is the best solution. Jul 8, 2015 at 16:05

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.