I'm trying to make the decision whether to use OpenID or stay with a well-built custom login system. I think the appeal of OpenID is clear, in that the user doesn't have to create yet another account to log into your site. But can you help me answer the question: What do I lose if I use OpenID instead of the custom login system I built?
I think the StackOverflow blog covers it quite well:
Several lesser providers (Technorati, Vidoop, Mozilla Weave) went belly-up, leaving their users stranded with no way to authenticate.
Occasionally OpenID providers will have bugs or service outages — even big ones like Yahoo. Fortunately this is quite rare, but it does happen, and troubleshooting it can be a pain precisely because it’s open and decentralized, and there are three parties involved — the website, the user, and the OpenID provider.
The OpenID protocol itself can be implemented in unusual or incomplete ways by different providers. This leads to challenges for us, but fortunately we have an excellent dialog with Andrew Arnott, the primary author of the open source DotNetOpenAuth library we use. We support the project financially and also try to contribute as many bugfixes as possible, so OpenID can get better for everyone.
In addition to the previous poster, you may lose people who are unfamiliar with open id and don't understand the registration process or how it works. When you redirect someone off of your site and onto a different one, people naturally get a little hesitant, especially if they're entering passwords and creating accounts. Of course, this effect depends on your user base; if you are dealing with grandmas that just want to post pictures of their kittens, don't go with openid, but if your users are at least a little savvy, then OpenID is acceptable.
Additionally, there's no reason you have to give up one. You can let the users choose which one they want to use. Personally, if Facebook were the only option for registration I'd leave the site, so maybe some people feel the same way about OpenID.