I've relied heavily on Supabase for the last couple of years, but I haven't seriously compared it with alternatives such as Firebase or a self-hosted database. For a new website, how does Supabase compare in terms of features, cost, maintenance, authentication, and scalability? Would you recommend exploring a different option, and what trade-offs should I consider?
4 Answers
Supabase is still PostgreSQL at its core, but it adds useful services around it, including authentication, APIs, storage, and realtime functionality. If those features save you development time, switching may not be worthwhile. A managed relational database can also be a good middle ground if you want Postgres without managing a server yourself.
One drawback I ran into with Supabase was inactivity pausing on the free tier. If the project sits unused for a while, it may need to be reactivated, which can be annoying for a low-traffic site. SQLite avoids that kind of hosted-service behavior, but you give up some of the built-in scaling, multi-user concurrency, and backend features. The best choice depends on whether convenience or simplicity matters more for this project.
For a very lightweight project, Cloudflare D1 could be worth checking out. It uses SQLite and can be convenient for smaller applications deployed around Cloudflare’s infrastructure. Just keep in mind that SQLite-based services have different concurrency, scaling, and feature limitations than PostgreSQL.
A straightforward alternative is running PostgreSQL on a small VPS. You get the flexibility and power of Postgres without paying for a full backend platform, and it can stay inexpensive for smaller projects. The trade-off is that you’re responsible for updates, backups, security, monitoring, and scaling. It also won’t give you hosted authentication or realtime features out of the box.

That’s the main appeal for me too: you keep the relational database while getting several common backend services in one place.