I'm working on a personal project using Supabase for the database, with FastAPI on the backend and Next.js on the frontend. I'm trying to decide between using Clerk or Supabase Auth for authentication. I know Supabase has great integration with their own database, but since I'll be using my custom backend, that might not be as critical. I've heard that Clerk offers a superior developer experience with a lot of features already taken care of, but I'm curious if Supabase Auth might be just as good as it sounds. If anyone has experience with either, I'd love to hear your thoughts and suggestions!
3 Answers
If you're using a separate FastAPI backend, I'd recommend Clerk for its cleaner integration. You just provide your JWT secret and handle server-side verification without needing an SDK. On the other hand, Supabase Auth can require more configuration to get the JWT flow right when working with a custom backend. For a personal project, Clerk’s free tier is pretty robust, plus the developer experience really does feel more polished. Unless you're heavily invested in the Supabase ecosystem with features like RLS or edge functions, Clerk might be the better choice.
Why not just build your own authentication system from scratch? It can give you full control and customization.
Honestly, I think Supabase is a decent option too, especially if you're familiar with it. I like using Neon as well, but if I had to pick between Clerk and Supabase, I'd lean towards Supabase.

Because I really don't want to deal with that complexity right now!