Comparison · 11 min · 10 citations
Turso vs PlanetScale vs Neon: Serverless SQL 2026
Turso vs PlanetScale vs Neon 2026: Turso bills SQLite storage and rows, PlanetScale rents MySQL and Postgres nodes, Neon meters serverless Postgres.
Turso, PlanetScale, and Neon are three different SQL engines, not three prices for one product. Turso runs SQLite, through libSQL today and a Rust rewrite next, and bills storage plus rows read and written[1][2]. PlanetScale runs MySQL on Vitess and, since November 2025, Postgres, billed as a provisioned node from $5/mo[4][5]. Neon runs serverless Postgres, billed by compute-hour and storage, and suspends compute to zero when idle[7][9].
Choose on the engine and the billing unit, not the headline tier: rows-and-storage (Turso), a running node (PlanetScale), or metered compute that sleeps (Neon). All figures verified against official pages on 2026-07-17.
"Serverless SQL" now covers three genuinely different designs, so a plain price table hides the real decision. Turso puts SQLite-compatible databases next to the app and treats an idle database as a set of files, so there is no compute to pay for when nobody queries[2]. PlanetScale provisions a database node you rent by the month, MySQL on Vitess or its newer Postgres, and that node keeps running whether or not traffic arrives[4]. Neon separates Postgres compute from storage and scales the compute to zero after a few minutes idle, billing only the compute-hours you use[9]. This comparison lines the three up on engine, billing unit, and scale-to-zero behavior. For the broader "which backend platform" question, see Supabase vs Firebase vs Neon; this piece stays on the SQL engine itself.
1. What engine and protocol does each one speak?
| Vendor | Engine | Protocol / compatibility | Stated direction |
|---|---|---|---|
| Turso | SQLite, via libSQL (C fork) and Turso Database (Rust rewrite)[2][3] | SQLite dialect, file format, and C API; embedded replicas at the edge[2] | Rust rewrite replaces libSQL; experimental Postgres wire protocol added[3] |
| PlanetScale | MySQL on Vitess, plus Postgres[4][6] | MySQL wire protocol with Vitess sharding; native Postgres since 2025[5][6] | Two first-class engines, Metal (local NVMe) or network-attached storage[4] |
| Neon | Postgres, serverless[7] | Standard Postgres, full compatibility with common extensions[10] | Compute and storage separated; branch-per-feature workflow[7] |
The engine choice drives everything downstream. Turso is SQLite, so it fits embedded and edge workloads where the database rides close to the app and syncs on demand, and its Rust rewrite (Turso Database) is a clean-room reimplementation that stays compatible with SQLite's dialect, file format, and C API[2][3]. PlanetScale is MySQL on Vitess, the sharding layer built to scale MySQL horizontally, and it now offers Postgres as a second engine on the same platform[4][6]. Neon is plain Postgres with a serverless storage and compute split, which is what lets it branch a full database in milliseconds and suspend compute when idle[7][10]. If your codebase already assumes Postgres, Turso is a migration; if it assumes SQLite, Neon is.
2. What does each one bill you for?
| Vendor | Entry point | Billed on | Ceiling shape |
|---|---|---|---|
| Turso | Free $0 · Developer $4.99/mo · Scaler $24.92/mo · Pro $416.58/mo[1] | Storage plus rows read and rows written; no separate compute charge[1] | Plan allowance plus per-unit overage on rows and storage[1] |
| PlanetScale | No free tier; PS-5 Postgres $5/mo (non-HA), $15/mo HA; Vitess from $39/mo[4][5] | Provisioned node per month, plus storage $0.50/GB above 10 GB and backups $0.023/GB[6] | Node price is a floor you pay continuously[4] |
| Neon | Free $0 · Launch $0.106/CU-hour · Scale $0.222/CU-hour[7] | Compute-hours (CU-hours) plus storage $0.35/GB-month; no monthly minimum[7] | Pure usage meter that falls to near zero when idle[7][9] |
Three billing units, three risk shapes. Turso meters the database's work directly: gigabytes stored and rows touched, with no line item for a running server, so a read-heavy app should model row-read overage above the plan allowance ($1 per billion extra reads on Developer)[1]. PlanetScale rents you a node: the $5 PS-5 is the smallest, and you pay it every month whether the database serves one query or millions, with storage and backups added on top[4][6]. Neon meters compute-hours and storage separately with no monthly minimum, so an idle project trends toward a near-zero bill and a busy one scales with the compute you actually burn[7]. Fold whichever unit fits your workload into your AI stack cost calculator, and if you are storing embeddings, price the vector footprint with the embeddings DB cost tool.
3. Which one has a real free tier, and what does paid entry cost?
- Turso: a genuine free plan with 5 GB storage, 100 databases, 500 million row reads and 10 million row writes per month[1]. Enough to run a small production app, not just a demo, then $4.99/mo Developer when you outgrow it.
- PlanetScale: no free tier at all; every database requires a paid subscription[6]. The floor is the $5/mo single-node PS-5 Postgres, production-ready but non-HA, which since November 2025 gives PlanetScale a low entry point it previously lacked[5].
- Neon: a free plan with 100 CU-hours and 0.5 GB of storage per project, up to roughly 5 GB across ten projects[7]. Paid entry is pure usage with no monthly minimum, so the "entry price" is whatever you consume rather than a fixed number[7][8].
Framed honestly: two of the three still have a usable free tier (Turso and Neon), and the one that dropped free (PlanetScale) answered with a $5 floor instead of a $0 one[5][6]. For a side project that must cost nothing at rest, Turso's storage-only idle bill or Neon's suspended compute both work; for a project that wants a guaranteed always-on node from day one, PlanetScale's $5 PS-5 is the cleaner answer[1][4].
4. How does each handle an idle database?
| Behavior | Turso | PlanetScale | Neon |
|---|---|---|---|
| Idle compute | None to run; database is files in object storage[2] | Node stays warm and running[4] | Auto-suspends after 5 min idle[9] |
| Idle cost | Storage only[2] | Full monthly node price[4] | Storage only while compute is suspended[7][9] |
| Wake latency | No wake step; queries served from storage[2] | None; already running[4] | Reactivates within a few hundred milliseconds[9] |
Turso and Neon both get an idle bill near zero, by opposite routes. Turso has no per-database compute process to begin with, so "there is nothing to scale to zero" is literally the architecture, and durability sits on S3 and S3 Express[2]. Neon keeps a real Postgres compute but parks it after five minutes of inactivity and brings it back in a few hundred milliseconds, which applies to computes up to 16 CU[9]. PlanetScale trades that idle saving for predictability: the node never sleeps, so there is no cold start and no wake latency, but you pay for it around the clock from the $5/mo floor up[4]. If cold-start latency is unacceptable, PlanetScale's warm node wins the row it loses on idle cost.
5. What changed in 2025-2026?
- Neon, May 14, 2025: Databricks announced it had agreed to acquire Neon, framed as intent subject to customary closing conditions; the release notes that over 80% of databases on Neon were created by AI agents[10]. Separately, on August 14, 2025 Neon moved paid plans to fully usage-based pricing with no monthly minimum and storage at $0.35/GB-month, and later stopped enforcing the old $5 minimum[8]. Current Launch compute is $0.106/CU-hour[7]. Neon does not tie the pricing move to the acquisition, so treat them as two separate facts.
- PlanetScale, November 14, 2025: shipped single-node Postgres databases from $5/mo and lowered development branches from $10 to $5, adding a low entry point to a platform that had been Vitess-first with no free tier[5][6].
- Turso: went all-in on Turso Database, the Rust rewrite of SQLite, which its own materials say replaces libSQL as the intended direction, with the engine now also speaking Postgres experimentally[2][3]. libSQL still powers production today; the Rust engine is pre-1.0[3].
The actionable one is PlanetScale's $5 Postgres: it turns a platform that used to start at MySQL-at-scale prices into a plausible home for a small Postgres app, and it undercuts the mental model that PlanetScale is "for big fleets only"[5]. On Neon, verify current rates before committing, because the pricing structure changed twice inside a year[7][8].
6. Which should you pick?
- SQLite at the edge or embedded, idle cost equal to storage only: Turso, billed on rows and storage with no compute line[1][2].
- Serverless Postgres that sleeps between requests and branches per feature: Neon, metered by compute-hour with no monthly minimum[7][9].
- MySQL at scale via Vitess, or a predictable always-on Postgres node with no cold start: PlanetScale, from a $5/mo PS-5 node[4][5].
- Lowest bill at rest: Turso or Neon; the always-warm PlanetScale node costs its full monthly price even idle[2][4][9].
- Guaranteed entry cost without a free tier: PlanetScale's $5 node; if you need $0 at rest, use Turso's or Neon's free plan[1][6][7].
Re-verify each pricing page before you commit: PlanetScale added a whole engine and a $5 floor in late 2025, Neon rewrote its pricing model twice, and Turso is mid-migration from libSQL to a Rust engine[5][8][3]. For the hosting layer that runs above the database, see Railway vs Render vs Fly; to fold the database line into your full stack, use the AI stack cost calculator.
All pricing and engine figures verified against official pricing pages, docs, and vendor announcements as of 2026-07-17.
Frequently asked questions
Is Turso, PlanetScale, or Neon actually serverless?
Turso and Neon both drop the idle bill toward zero, by opposite mechanisms. Turso has no per-database compute process at all: an idle database is a set of files in object storage, so you pay only for storage and the rows you read and write. Neon runs a real Postgres compute that auto-suspends after five minutes of inactivity and reactivates in a few hundred milliseconds, so you pay only for active compute-hours. PlanetScale is the odd one out: even its cheapest option, a $5/mo single-node PS-5, is a provisioned node that runs continuously, so it is fully managed but not scale-to-zero. All three verified against official pages on 2026-07-17.
Does PlanetScale support Postgres now, or only MySQL?
Both. PlanetScale started as MySQL on Vitess, the horizontal-sharding engine behind large MySQL fleets, and it still offers that. Since November 14, 2025 it also sells single-node Postgres databases starting at $5/mo, described as production-ready but non-HA, and it lowered development branches from $10 to $5 per month at the same time. A production 3-node HA Postgres cluster (PS-5) starts at $15/mo, and the cheapest Vitess MySQL configuration (PS-10) starts at $39/mo. There is no free tier on either engine, verified 2026-07-17.
What happened to Neon after the Databricks deal, and did pricing change?
Databricks announced on May 14, 2025 that it had agreed to acquire Neon, framed as intent subject to customary closing conditions. Separately, on August 14, 2025 Neon moved its paid plans to fully usage-based pricing with no quotas, overages, or monthly minimums, and set storage at $0.35 per GB-month; it later stopped enforcing the old $5 monthly minimum. As of 2026-07-17 the pricing page lists Launch compute at $0.106 per CU-hour and Scale at $0.222 per CU-hour. Neon's own materials do not attribute the pricing move to the acquisition, so treat the two as separate facts rather than cause and effect.
Is Turso still using libSQL or the new Rust engine?
Both exist, and the direction is clear. libSQL, a fork of SQLite written in C, is what powers Turso Cloud in production today. Turso Database, a ground-up rewrite of SQLite in Rust, is the stated future: the project's own materials say it replaces libSQL as the intended direction. It stays SQLite-compatible at the SQL dialect, file format, and C API level, its GitHub repository now also lists experimental Postgres wire-protocol support, and it is still pre-1.0 while already running some production workloads. Verified 2026-07-17.
References
Sources
Primary sources only. No vendor-marketing blogs or aggregated secondary claims.
- 1 Turso — Pricing (Free 5 GB / 100 databases / 500M row reads + 10M row writes per month; Developer $4.99/mo incl. 9 GB and 2.5B reads; Scaler $24.92/mo; Pro $416.58/mo; billed on storage plus rows read and written, no separate compute charge) — accessed 2026-07-17
- 2 Turso — What is Turso (ground-up rewrite of SQLite in Rust, SQLite-compatible at SQL dialect / file format / C API; an idle database costs only its object-storage footprint because no process runs when nobody queries, so there is nothing to scale to zero; durability on Amazon S3 and S3 Express) — accessed 2026-07-17
- 3 Turso Database — GitHub repository (tagline: "A SQL database in Rust: SQLite-compatible, now also speaking Postgres (experimental)"; the Rust rewrite replaces libSQL as the intended direction; pre-1.0, powers production applications today) — accessed 2026-07-17
- 4 PlanetScale — Pricing (no free plan; single-node PS-5 Postgres from $5/mo non-HA; PS-5 HA 3-node from $15/mo; Vitess MySQL PS-10 from $39/mo; Metal local-NVMe vs network-attached storage) — accessed 2026-07-17
- 5 PlanetScale — "$5 PlanetScale is live" (Nov 14, 2025: single-node Postgres databases from $5/mo, production-ready but non-HA; development branches lowered from $10 to $5 per month) — accessed 2026-07-17
- 6 PlanetScale — Plans docs (no free plan, all databases require a paid subscription; network-attached storage $0.50/GB above 10 GB included; user backups $0.023/GB per month; Vitess MySQL and Postgres engines) — accessed 2026-07-17
- 7 Neon — Pricing (Free 100 CU-hours + 0.5 GB per project; Launch $0.106/CU-hour; Scale $0.222/CU-hour; storage $0.35/GB-month; branching 10/25 included, $1.50 per extra branch-month; no monthly minimum) — accessed 2026-07-17
- 8 Neon — "Neon's New Pricing, Explained: Usage-Based, No Minimum" (Aug 14, 2025: paid plans became fully usage-based with no quotas, overages, or monthly minimums; storage $0.35/GB-month; the $5 monthly minimum is no longer enforced) — accessed 2026-07-17
- 9 Neon — Scale to zero docs (compute auto-suspends after 5 minutes of inactivity and reactivates within a few hundred milliseconds; you pay only for active compute time; applies to computes up to 16 CU) — accessed 2026-07-17
- 10 Databricks — "Databricks Agrees to Acquire Neon" press release (May 14, 2025; announced as intent to acquire, subject to closing conditions; states over 80% of Neon databases were created by AI agents; serverless Postgres for developers and AI agents) — accessed 2026-07-17
Tools referenced in this article