What is social login?
Social login is the ability for visitors who come to your website to login using their existing social media account credentials, such as their Facebook or Google account. From the user's perspective, it's pretty annoying to have to create a new account on every different website you want to access. Being able to click a button and approve credential sharing is much easier than creating a brand new account and dreaming up a new password - or worse, recycling the same on again. It can cause some confusion for users who can not remember which login option that they originally chose, also, if they close their social media account, they will also lose access to your site. These disadvantages are fairly small compared to the potentially huge boost in registrations and logins.
Rolling Your Own
Generally speaking, each of the mainstream social login (or federated login) providers does offer an open API that you can use to integrate social login with your site. Although they provide an end-point, you still have to do a significant amount of coding to get it working on your site! If you are only integrating one social login option, it's probably not too difficult to do it. It might even be fun to utilize a social login API and make cURL-JSON requests (or whatever is required), but if you plan to integrate several, I would not recommend undertaking such a project unless you are doing it as a learning experience or creating a business out of it, because it will certainly take a lot of effort. The next option, using something existing that is already open source is probably more reasonable.
Open Source Library
It's a bit difficult to find open source social login offerings because when you search for them on Google the results are all of the place. To find a reasonably popular solution, I went straight to GitHub and did a search for "social login". After a bit of clicking around, I came to HybridAuth that seems to have a lot of providers supported and is written in PHP (of course!). The main benefit of using this is that there is already an existing user base and development community around this project. So, if you need help integrating it, you could probably find a wealth of examples and even get help from the community. If you build upon it by adding a new provider, you will probably make a lot of people happy and maybe make some new friends in the process.
The obvious disadvantage of a commercial offering is that it is not free, duh. If you take a broader view however, it may be less expensive in the long-run if it takes less developer hours to integrate. If you don't expect to have a large user base, you may even get away using a free-tier of the commercial offering. But if you do end up having a significant number of users, that this option can get expensive as there is a monthly service fee that increases based on the number of users. Some of the benefits are robust reporting and possibly high quality customer support. If your project has a nice budget, these options may fit right in. Here are a list of the top offerings I could find:
Social login is important and one more consideration if you have or build websites. The scope of what is needed to build a competitive website is ever-increasing and staying on top of trends can be tiring - or exciting depending on how you look at it. As far as I can tell, social login is not a fad and if you are not already using it, you probably should be. If you need help integrating it on your website, feel free to give us a buzz.