DEV Community

Cover image for Should you use your Own auth or use third party Auth Providers
Parth Bhovad
Parth Bhovad

Posted on Originally published at linkedin.com

Should you use your Own auth or use third party Auth Providers

You may have confusion about what's the best approach for implementing Authentication in your application. There are lots of people who may say "you should build your own Auth" because it gives you control, third party tools can be expensive and it creates unnecessary dependencies.

But in reality, it depends. Both your own auth and third party auth solution is good, depending upon the use case.

Typically, the software can be divided into 3 phases. And what approach to choose depends on in which phase your software belongs to.

Phase 1: ~ 0–100 users

You have no idea whether even a single user is interested in your app or not. You are just starting out. We can consider here that only around 0–100 users will be there on your application.

In this phase your goal is to take a bet on yourself and do one experiment to validate your app. Your goal should be building the most core functionality as soon as possible. In such case investing your time in building your own Auth doesn't make sense at all. You don't have users yet, you don't know your idea will even work or not. So, it's better use any third party auth provider like Better Auth/Clerk. It will save your time.

Phase 2: ~ 101–10,000 users

Here you have validated your application. There are good number of users already using your app. Or you are scaling your app from phase 1 to phase 2. We can consider here that around 101 to 10,000 users are using your application.

Even in this case it's better to go with external Auth Providers. Because your focus should be in scaling the app. The user cares about features and experience of your application.

Complexity

Building an authentication system is not just about Login, Signup, forgot password. There is lot more than that. You need to build APIs, knowledge of encryption, security, scalability and there is the entire user management. Another reason to avoid creating an authentication system is that there are already great ones available. Just pick any one of them.

Phase 3: ~ 20,000 or more

Your application is very huge with lots of users, and it is a Giant Application. Your application is serving 50k+ users. At phase 3 it might make sense to implement your own auth.

I prefer to not talking much about phase 3 because it is out of the scope of my expertise.

Conclusion:

There are phases where you should implement your own auth. But if you are starting out or in the 2 phase you should be more concerned about building your software and monetizing it rather than wasting hours implementing your own auth, which again not going to give you anything special.

Top comments (0)