Neon vs Supabase vs PlanetScale in 2025: the managed-Postgres-and-friends decision
Three platforms eating Heroku Postgres’s lunch. Each one optimises for a different jobs-to-be-done. Here is the working choice for engineers in 2025.
Neon, Supabase, and PlanetScale are the three platforms that have meaningfully eaten Heroku Postgres’s lunch since 2022. They sit in similar conceptual slots — managed cloud database with developer-friendly DX — but optimise for different jobs.
After running production on two of the three and evaluating PlanetScale on a side project, here is the working comparison for 2025.
The honest short answer
| What you care about | Pick |
|---|---|
| Serverless / edge-friendly Postgres | Neon |
| Full BaaS (DB + auth + storage + realtime) | Supabase |
| MySQL at scale with mature ops | PlanetScale (but pricing changed) |
| Postgres branching workflow | Neon (clear lead) |
| Best-in-class dashboard | Supabase |
| Cost-conscious starter project | Neon (free tier wins) |
Neon — the serverless Postgres specialist
What Neon wins on:
- Serverless architecture — pay for what you use, scales to zero
- Branching workflow is best-in-class (see our Neon branching guide)
- Edge-friendly HTTP API — works inside Cloudflare Workers, Vercel Edge, with minimal latency
- Real free tier that supports actual side-project use
Where Neon loses:
- No auth, no storage, no realtime — it’s a database, not a backend platform
- Cold-start latency on infrequently-used databases (the serverless trade-off)
- Smaller community than Supabase
Supabase — the open-source Firebase
What Supabase wins on:
- Full BaaS — Postgres + auth + storage + realtime + edge functions, all in one
- The dashboard is best-in-class — table editor, SQL editor, auth UI, all polished
- Open source — you can self-host the whole stack if you want to
- Real-time subscriptions built on Postgres LISTEN/NOTIFY — actually works
- Strong free tier with generous-enough usage
Where Supabase loses:
- More moving parts means more failure modes
- Auth is opinionated; if you have specific requirements (multi-tenancy SSO, etc.) you may fight it
- Pricing scales up faster than Neon at the small-team tier
PlanetScale — the MySQL-at-scale play
What PlanetScale wins on:
- MySQL with Vitess sharding under the hood — proven at YouTube scale
- Branching (Vitess-based) — predates Neon’s branching by a long time
- Mature ops controls — connection management, schema migrations, deploy reviews
Where PlanetScale loses:
- Pricing changed dramatically in 2024 — the famous “no free tier anymore” move pushed many small teams away
- MySQL only (no Postgres) — a real limitation if your stack expects Postgres
- The deploy-request schema-change workflow is opinionated; you either love it or work around it
The 2024 pricing change ended PlanetScale’s dominant position with small teams. The product is still excellent for the right use case, but the “default pick” energy has migrated to Neon.
Which to pick by profile
Choose based on what you actually need
Pros
- Just need Postgres + don’t want to self-host → Neon
- Need DB + auth + storage in one place → Supabase
- High-scale MySQL with sharding requirements → PlanetScale
- Edge / serverless compute target → Neon
- Building a SaaS that needs realtime → Supabase
- Heavy database branching workflow → Neon
Cons
- Don’t pick Supabase if you’re Postgres-only and need maximum flexibility
- Don’t pick PlanetScale unless MySQL is a hard requirement; the pricing change closed the small-team door
- Don’t pick Neon if you need a backend platform, not just a database
- Don’t pick any of these for analytics workloads — use ClickHouse / BigQuery
- Don’t pick any of these for embedded / multi-tenant-per-DB — see our [Turso review](/databases/turso-review-edge-sqlite/)
- Don’t over-research — all three work; the choice usually matters less than the team thinks
Pricing in mid-2025
| Free tier | Smallest paid | Scaling math | |
|---|---|---|---|
| Neon | Real, supports side projects | ~$19/month | Scales smoothly via storage + compute usage |
| Supabase | Real, with 500MB DB | ~$25/month | Bundled (DB + auth + storage), scales by usage |
| PlanetScale | None (since 2024) | ~$39/month (Scaler) | Per-database, larger commitments at scale |
What r/PostgreSQL says
The branching cost comparison thread is the canonical community reference. Pattern:
- Neon wins on branching cost-efficiency
- Supabase wins on bundled value (database + auth in one bill)
- PlanetScale’s pricing change cost it community goodwill that has not recovered
The general 2025 sentiment in the Postgres community: Neon is the default for new projects, Supabase is the default if you also want auth, PlanetScale is the choice when MySQL/Vitess is specifically needed.
The recommendation
Most engineers picking a database in 2025:
- Just need Postgres? Neon. Free tier is real, branching workflow is a step change, scaling is sensible.
- Need a full backend? Supabase. The BaaS is genuinely good and the open-source path is real insurance.
- MySQL specifically with serious scale? PlanetScale, accepting the pricing.
- Edge / serverless target? Neon (HTTP API) or Turso (covered in our Turso review) — SQLite-based.
For our own stack, we’re on Cloudflare D1 for the content metadata and considering Neon for any future relational workload. The decision matrix is “what does my workload actually need,” not “which is best.”
Sources
Every reference behind this piece. If we make a claim, it's because at least one of these said so — or we lived it ourselves.
- Firsthand Ran production workloads on Neon and Supabase, evaluated PlanetScale on a side project
- Docs Neon, Supabase, and PlanetScale documentation — Various vendors
- Blog r/PostgreSQL — branching cost comparison — r/PostgreSQL
- YouTube Theo and Web Dev Simplified database platform reviews — Various