PlanetScale vs Neon
Suspended compute costs $0 on Neon; PlanetScale's smallest HA Postgres cluster has a $15 monthly compute charge even when idle. Keep 0.25 CU awake on Neon Launch: 0.25 CU × 730 h = 182.5 CU-hours × $0.106 = $19.35/month before storage, versus $15/month for PlanetScale PS-5 HA.
Pick Neon if your databases sleep: suspended compute costs $0, and a branch per pull request costs $1.50 a month instead of a cluster. Pick PlanetScale if production must stay awake on a fixed cluster charge, or you already run Vitess-shaped MySQL — and test Neki outside production only, because its preview excludes it.
- PlanetScale rents you a machine; Neon bills the hours it is awake
- The $0 database out-bills the $15 cluster once it never sleeps
- Who should NOT pick Neon: existing Vitess-based MySQL deployments
- Who should NOT pick PlanetScale: projects with a $0 budget
- Neki adds sharded Postgres, but its preview excludes production
- Pick from measured compute, branch and data charges
- Cost arithmetic
- Decision matrix
- Migration path
- FAQ
At a glance
| Dimension | PlanetScale Clusters | Neon CU-hours |
|---|---|---|
| Product foundation | Postgres (single node, HA, Neki sharding) and Vitess for MySQL | Lakebase Postgres with branching, Data API, Functions and Object Storage |
| Pricing model | No free plan · Postgres $5/mo single node, $15/mo HA, Neki from $30/shard | Free plan · Launch $0.106/CU-hour · Scale $0.222/CU-hour |
| Hosting and deployment | No (managed on AWS, GCP and Azure) | No (managed, Databricks) |
| Runtime and integration | 3-node HA clusters; Neki shards run 1 primary and 2 replicas each | Up to 10,000 pooled connections per compute; scale to zero after 5 minutes |
| AI-related capabilities | MCP and Insights in the platform (vendor description) | Managed Better Auth and an AI Gateway with prepaid credits |
| Lock-in risk | Medium: Postgres or MySQL underneath, managed control plane on top | Medium: Postgres underneath, but branches and services are Neon's |
| Vendor | PlanetScale → | Neon → |
1. PlanetScale rents you a machine; Neon bills the hours it is awake
For Postgres with idle periods or many branches, compare billed CU-hours with dedicated clusters; existing Vitess-based MySQL still has an engine constraint.
PlanetScale: capacity is a cluster you rent. Neon: compute is CU-hours, meaning compute size × hours running on Lakebase Postgres.
- PlanetScale charges for idle cluster capacity; storage, backups and egress can add charges. Each branch runs on its own separately billed dedicated cluster.
- Neon's paid plans charge for CU-hours used, while suspended compute costs $0. Its pricing describes Lakebase Postgres as “from Databricks”.
PlanetScale's docs say it plainly: there is no free plan.
Figures below are AWS us-east-1 list prices checked 10 November 2026, or arithmetic on them; nothing is benchmarked.
2. The $0 database out-bills the $15 cluster once it never sleeps
The bottom of each price list:
| Entry | Monthly | What you get |
|---|---|---|
| Neon Free | $0 | 100 CU-hours, 1 GB storage per project |
| PlanetScale PS-5, single node | $5 | 1/16 vCPU, 512 MiB |
| PlanetScale PS-5 HA | $15 | 1 primary + 2 replicas |
Now keep a 0.25 CU Neon compute awake all month on Launch: 0.25 × 730 h = 182.5 CU-hours × $0.106 = $19.35, before storage.
Compute only: $19.35 − $15 = $4.35 more than PlanetScale's three-node cluster; capacity is not equivalent.
# Awake hours/month before 0.25 CU on Neon Launch out-bills PS-5 HA.
CU, RATE, PS5_HA = 0.25, 0.106, 15.00
break_even = PS5_HA / (CU * RATE)
print(f"approximately {break_even:.2f} of 730 hours")
# Assumes 0.25 CU runs throughout the awake hours.
3. Who should NOT pick Neon: existing Vitess-based MySQL deployments
Now one CU, awake all month:
| Option | Compute formula | Monthly |
|---|---|---|
| Neon Launch, 1 CU | 1 × 730 × $0.106 | $77.38 |
| Neon Scale, 1 CU | 1 × 730 × $0.222 | $162.06 |
| PlanetScale PS-80 HA | fixed cluster, arm64 | $148 |
Not identical machines. A CU is about 4 GB RAM; PS-80 is listed at 1 vCPU and 8 GiB plus two replicas.
- Scale's compute crossover: $148 ÷ (1 CU × $0.222/CU-hour) ≈ 666.67 h; choose PS-80 only if its capacity suits the workload.
- Neon's own typical-cost rows answer "how many hours?": intermittent load (140 CU-hours + 1 GB) is $15 on Launch, high load (3,000 CU-hours + 100 GB) is $353 on Launch and $701 on Scale.
- PlanetScale's SKU ladder answers "which size?", from PS-5 at $15 to PS-2560 at $4,529 HA on arm64.
Do not pick Neon if you must retain Vitess-based MySQL; Launch also lacks an uptime SLA. Compare billed CU-hours with the cluster charge before attributing savings to suspension.
4. Who should NOT pick PlanetScale: projects with a $0 budget
On PlanetScale every branch runs on its own dedicated cluster, billed separately and prorated to the millisecond. On Neon Launch a branch is a line item: 10 per project included, then $1.50 per branch-month, prorated hourly.
| 20 branches alive all month | Formula | Component/month |
|---|---|---|
| Neon Launch | 10 included + 10 × $1.50 | $15 extra-branch fees |
| PlanetScale, PS-5 HA each | 20 × $15 | $300 cluster compute |
- Add running compute and data storage on Neon; add storage, backups and transfer on PlanetScale.
- Millisecond proration helps PlanetScale with short-lived branches: one PS-5 HA branch costs $15 ÷ 730 h ≈ $0.02 per hour.
- Use actual branch lifetimes. Launch suspension after five minutes can be disabled.
Do not pick PlanetScale for a $0 budget; every database requires a paid subscription.
5. Neki adds sharded Postgres, but its preview excludes production
Neki is PlanetScale's sharded Postgres, in platform preview since 10 September 2026. PlanetScale says preview is not for production, and that "some of those changes will be breaking".
Apps reach it through a Neki router over the Postgres wire protocol.
- No single-node configuration: the smallest arm64 shard is PS-10 at $30, 1 primary and 2 replicas across 3 availability zones.
- Routers start at $6 (NKR-0). Production router compute = router rate × observed routers ÷ 3; the rate covers the three-router baseline, one per AZ.
- Four PS-20 shards plus NKR-20 routers: 4 × $50 + $170 × 3 ÷ 3 = $370/month, before storage, backups and network usage.
6. Pick from measured compute, branch and data charges
Choose Neon when measured CU-hours plus branch, storage and transfer charges beat PlanetScale's total. Choose PlanetScale for suitable always-on cluster compute or an existing Vitess-shaped MySQL estate.
Check this today:
- Pull last month's awake hours per Neon compute. For compute only: $15 ÷ (0.25 CU × $0.106/CU-hour) ≈ 566.04 h on Launch.
- Count branches alive at once and how long each lives, and price them as PlanetScale clusters before copying the habit.
- Check suspension configuration and billed CU-hours; add storage, backups and transfer before choosing.
- Do not run production workloads on Neki's platform preview; evaluate it only outside production.
Cost arithmetic at volume
These are computed from the published unit prices, not measured. Each row prints its own formula, so you can replace our assumption with your traffic and redo it.
Decision matrix
Rows are the situation you are actually in. Pick the row before you read the pricing page again.
| If this is you | Take | Because |
|---|---|---|
| Dev and test databases idle overnight, one branch per pull request | Neon Launch | Suspended compute bills $0 and branches past the included 10 cost $1.50 per branch-month instead of a cluster each. Running compute, data storage and transfer remain separate. |
| Always-on database comparing compute charges only | PlanetScale Postgres HA | For compute only, 0.25 CU × 730 h = 182.5 CU-hours × $0.106 = $19.35 on Neon Launch, versus $15 for PlanetScale PS-5 HA; storage and other charges remain separate, and capacity must suit the workload. |
| Existing Vitess-shaped MySQL estate | PlanetScale (Vitess) | Neon's pricing lists only Lakebase Postgres, so leaving Vitess would be an engine migration, not a vendor switch. |
| Side project or prototype with a $0 budget | Neon Free | PlanetScale has no free plan, while Neon Free is permanent, needs no card and includes 100 CU-hours per project. |
| Considering Neki for production sharding | Do not use Neki | Neki is a platform preview and PlanetScale says not to run production on it. |
| Compliance-bound production (HIPAA BAA, uptime SLA) with traffic that idles for hours | Neon Scale | Scale includes self-serve HIPAA with a BAA and an SLA; suspended compute costs $0, while running compute costs $0.222/CU-hour. Suspension is configurable from 1 minute to always on. |
| Comparing one always-on Neon Scale CU with PS-80 HA compute prices | PlanetScale PS-80 HA, only if its capacity suits the workload | Compute charges cross at $148 ÷ (1 CU × $0.222/CU-hour) ≈ 666.67 h; this compares prices, not equivalent workload capacity. |
| Need Launch's compute ceiling exceeded by a fixed-size deployment | Neon Scale | Launch autoscaling stops at 16 CU, while Scale offers fixed sizes up to 56 CU (224 GB RAM). |
Code and configuration
# PlanetScale bills the cluster, prorated to the millisecond.
# PS-5 HA = 1 primary + 2 replicas, $15/month per branch, awake or not.
# 20 branches for pull requests: 20 x $15 = $300/month.
# Here it breaks: a branch is not metadata, it is a second cluster,
# so preview environments get priced like production ones.
# Neon bills compute size x hours awake; suspended compute is $0.
# Launch: $0.106 per CU-hour. 0.25 CU awake all month:
0.25 * 730 * 0.106 # 19.35, before storage
# Here it breaks: a health check every few minutes keeps leaving
# the compute awake, so the invoice tracks uptime, not traffic.
What you gain, what you give up
PlanetScale
- A fixed cluster charge: PS-5 HA is $15/month whether the database sleeps or not
- Every branch is its own cluster, so a schema change never touches production
- Postgres, Neki's sharded Postgres and Vitess for MySQL on one platform
- Backups included up to 2x disk size and run automatically every 12 hours
- No free plan anywhere: the cheapest database is $5/month single node
- A branch is a second cluster, so 20 PS-5 HA branches bill $300/month
- Storage past 10 GB per instance bills at a region rate the docs expose only through an endpoint
- Neki is a platform preview, and PlanetScale says not to run production on it
Neon
- Suspended compute costs $0, so a database that sleeps most of the day costs almost nothing
- A permanent free plan: 100 CU-hours, 1 GB storage and 100 projects
- Branches cost $1.50 a month after 10 included, which makes a preview per pull request affordable
- Storage at $0.35/GB-month and 500 GB egress included per project on Launch
- An always-on 0.25 CU costs 0.25 x 730 x $0.106 = $19.35/month, above a $15 cluster
- One CU running all month is $77.38 on Launch and $162.06 on Scale
- Storage, instant restore, extra branches and egress are separate lines on the same invoice
- Scale doubles the CU rate for the same compute shape
Migration path
Neon to PlanetScale gives up brevity: branches become clusters, scale-to-zero disappears and the cheapest HA Postgres is $15/month. PlanetScale to Neon restarts the clock — CU-hours accrue while the database is awake, so the setting to watch is the suspension timer rather than a cluster size, and storage plus egress move onto the same invoice. Dump and restore with pg_dump in both directions; both are Postgres underneath.
Common questions
Sources & verification
Prices and limits were read from these pages on 2026-11-10. Vendor marketing claims are quoted as claims. Anything derived is arithmetic on the numbers below.
https://planetscale.com/pricing
https://planetscale.com/docs/postgres/pricing
https://planetscale.com/docs/planetscale-plans
https://planetscale.com/blog/introducing-neki
https://planetscale.com/changelog/neki
https://neon.com/pricing
Keep reading
Prisma vs Drizzle
The ORM that now shares a payroll with one side of this comparison.
Supabase vs Firebase
Metered reads against a flat instance: the ancestor of this arithmetic.