Six databases, and the two questions that narrow it down fast.
Two questions do most of the work when picking a database: does your data need to update in real time (chat, live feeds), and how much scale do you actually expect? Answer those first — everything else is refinement.
| Database | Setup | Real-time | Scales to | Best for |
|---|---|---|---|---|
| SQLite | None — a single file | No | Small projects, low concurrency | Learning SQL, small apps, mobile storage |
| MySQL | Included on most shared hosting | No | Small to large | Traditional sites, first SQL database |
| PostgreSQL | More to configure than MySQL | No | Small to very large | Structured data that needs to grow |
| MongoDB | Moderate — document model to learn | Needs added work (websockets) | Small to large | Flexible/varied document data |
| Firebase (Firestore) | None — no server to manage | Built in | Small to large (usage-based cost) | Chat, live feeds, collaborative apps |
| Supabase | None — hosted Postgres | Built in | Small to large | Firebase-style real-time, open-source SQL |
A full SQL database stored in a single file — no server, no installation, nothing to configure. For learning or a small project it's the lowest-friction way to get all the benefits of SQL. It's also what most mobile apps use internally. It isn't built for a lot of concurrent traffic, so it's a starting point more than a destination.
Included in almost every shared hosting plan and usually the first database most developers learn. SQL knowledge transfers almost entirely to PostgreSQL and other relational databases later, so learning MySQL isn't a dead end — it's the fundamentals. Rock-solid for the vast majority of projects.
The industry's default answer once you expect real scale — hundreds of thousands of users and beyond. It handles both structured data and semi-structured data (via JSON columns), has a strong reliability track record, and every major cloud provider offers it managed, so you don't have to migrate as you grow. Slightly more setup than MySQL on basic shared hosting.
Stores flexible, document-shaped data (think JSON objects instead of table rows) — a good fit for varied or evolving data like logs or content with inconsistent fields. The document model is a bigger mental shift than SQL, and most beginner projects actually have relational data that fits SQL better, so it's worth being intentional about reaching for it rather than defaulting to it.
The easiest way for a beginner to get real-time sync working — chat apps, live feeds, collaborative tools — with no server to manage and a generous free tier. The trade-off is vendor lock-in to Google's ecosystem and costs that can climb with usage as an app grows.
An open-source alternative that pairs Firebase-style real-time updates and auto-generated APIs with an actual PostgreSQL database underneath — appealing if you want Firebase's convenience without giving up SQL. Newer and smaller community than Firebase, but worth watching.