Supabase vs Neon vs AWS Aurora Serverless v2: Real Postgres Cost for an AI SaaS at 100 Million Queries in 2026
The short answer: none of these three platforms bills by query. Neon bills compute-unit hours plus storage, Supabase bills a project fee plus a fixed compute instance plus disk, and Aurora Serverless v2 bills ACU-hours plus storage plus, on the Standard configuration, a separate charge for every million I/O requests. For an illustrative production workload (100 million queries a month, 90% reads and 10% writes, a 100 GB database, and roughly 8 GB of RAM actively in use around the clock), the modeled single-instance bill is about $137 a month on Supabase Pro with a Large instance, about $194 on Neon's Launch plan, and about $370–$760 on Aurora Serverless v2 (Standard), depending on how many I/O requests the workload really generates. Aurora's range is the point: with the same 100 million queries, its bill moves by roughly $390 purely on I/O intensity, a variable that Neon and Supabase do not meter at all. Switching Aurora to I/O-Optimized removes that variable at a fixed $478 for this shape, which only wins once the workload exceeds roughly 590 million I/O requests a month.
The billing-unit mismatch, up front
Query count is not a billing unit on any of the three. Neon meters compute-unit hours (one CU is 1 vCPU and 4 GB of RAM, billed by the second and scaled to zero when idle) and GB-months of storage. Supabase meters a per-project platform fee, a fixed provisioned compute instance (billed hourly regardless of load), and provisioned disk. Aurora Serverless v2 meters Aurora Capacity Unit hours (one ACU is roughly 2 GB of memory with proportional CPU and networking), storage GB-months, and, on Standard, I/O requests. A "100 million queries" workload therefore has to be translated into an average compute requirement before any price can be computed, and into an I/O count before Aurora's Standard price can be computed. The translation below is an explicit assumption, not a measurement.
What each vendor actually bills
Neon (OFFICIAL, neon.com pricing). Neon was acquired by Databricks in 2025 and cut prices afterward: storage fell from $1.75 to $0.35 per GB-month, and compute fell by roughly a quarter. Launch: $0.106 per CU-hour, $0.35/GB-month of root-branch storage, and no monthly minimum (a $19 monthly figure still appears in some comparison pages and reflects the earlier structure). Scale: $0.222 per CU-hour, adding the SLA, SOC 2 Type 2 and HIPAA eligibility. Instant-restore history is billed separately, at $0.20 per GB-month of retained history on Launch, up to 7 days. Compute is $0 while suspended, but storage continues to bill. A permanently-on 1 CU instance costs $77.38 a month at the Launch rate ($0.106 × 730 hours). Free plan: 100 CU-hours and 0.5 GB per project.
Supabase (OFFICIAL, supabase.com/pricing and compute documentation). Pro: $25 per month per project, including a $10 monthly compute credit (enough for one Micro instance), 8 GB of database disk, 250 GB of egress, 100 GB of file storage and 100,000 auth MAU. Compute is a fixed instance by tier: Micro about $10/month (1 GB RAM), Medium $60 (4 GB), Large $110 (8 GB, dedicated 2-core ARM), scaling up to 16XL at $3,730 (256 GB). Disk beyond the included 8 GB bills at $0.125/GB-month; egress beyond 250 GB bills at $0.09/GB. Resizing compute is manual and involves brief downtime; there is no autoscaling of the instance. Point-in-time recovery is a $100/month add-on per 7 days of retention.
Aurora Serverless v2 (OFFICIAL, AWS Aurora pricing, US East / N. Virginia). Aurora Standard: $0.12 per ACU-hour, $0.10/GB-month storage, $0.20 per million I/O requests. Aurora I/O-Optimized: $0.156 per ACU-hour, $0.225/GB-month storage, no I/O charge. Capacity scales in 0.5 ACU steps. Recent engine versions support a minimum of 0 ACU with automatic pause after inactivity, so an idle cluster can stop accruing ACU charges, though the pause only triggers after a period with no connections. Backup storage beyond the allowance (up to database size) is about $0.021/GB-month, and internet data transfer out follows AWS's tiered schedule after the first 100 GB. Other ACU rates appear in third-party calculators for other regions and configurations; US East list pricing is used here.
Normalizing the workload
All ILLUSTRATIVE. 100 million queries/month (90M reads, 10M writes), a 100 GB database, production use, moderate continuous activity. The monthly average works out to about 38 queries per second, which a modest instance can serve for simple indexed queries. This article assumes an average active compute requirement of about 8 GB of RAM (2 Neon CU, 4 Aurora ACU, one Supabase Large instance), running all 730 hours of the month — a deliberately steady shape, since it sets aside the idle-time savings that scale-to-zero platforms offer. Neon is also assumed to retain 20 GB of instant-restore history. Supabase egress is assumed to stay within the included 250 GB. For Aurora Standard, I/O requests are modeled at three intensities: 0.5, 5 and 20 I/O requests per query, since buffer-cache hit rate, index design and write amplification decide how many page reads and writes actually reach storage.
Cost at the normalized workload
Formula: Neon = 2 CU × 730 h × $0.106 + 100 GB × $0.35 + 20 GB × $0.20; Supabase = $25 + $110 (Large) − $10 credit + (100 − 8) GB × $0.125; Aurora Standard = 4 ACU × 730 h × $0.12 + 100 GB × $0.10 + I/O requests ÷ 1M × $0.20; Aurora I/O-Optimized = 4 ACU × 730 h × $0.156 + 100 GB × $0.225.
| Platform / configuration | Compute | Storage and other | Total per month |
|---|---|---|---|
| Supabase Pro + Large | $110 (less $10 credit) | $25 base + $11.50 disk overage | $136.50 |
| Neon Launch | $154.76 | $35 storage + $4 history | $193.76 |
| Neon Scale (SLA/HIPAA tier) | $324.12 | $35 storage + $4 history | $363.12 |
| Aurora Standard, 0.5 I/O per query (50M I/Os) | $350.40 | $10 storage + $10 I/O | $370.40 |
| Aurora Standard, 5 I/O per query (500M I/Os) | $350.40 | $10 storage + $100 I/O | $460.40 |
| Aurora Standard, 20 I/O per query (2B I/Os) | $350.40 | $10 storage + $400 I/O | $760.40 |
| Aurora I/O-Optimized (any I/O volume) | $455.52 | $22.50 storage | $478.02 |
The ranking at this specific workload is Supabase, then Neon, then Aurora, but the platforms are not selling the same thing: a fixed Supabase Large instance cannot absorb a traffic spike, Neon's Launch plan autoscales within a published CU ceiling, and Aurora scales to a much higher ceiling. Supabase also bundles authentication, file storage and realtime into its $25 base, which Neon and Aurora do not.
Aurora's I/O variable: where Standard stops winning
Formula: I/O-Optimized wins when (ACU premium + storage premium) < I/O charge, i.e. when I/O requests exceed (($455.52 + $22.50) − ($350.40 + $10)) ÷ $0.20 per million = about 588 million I/Os a month, or about 5.9 I/O requests per query at this volume. Below that, Standard is cheaper; above it, I/O-Optimized is. The break-even is also close to AWS's own rule of thumb that I/O-Optimized pays off once I/O exceeds about a quarter of total Aurora spend. A workload that fits mostly in memory (0.5 I/O per query) pays only $10 for I/O; one with large scans, poor cache hit rates or heavy write amplification can pay several times the compute bill.
High availability and read replicas
An ILLUSTRATIVE second instance of equal size roughly doubles the compute line on each platform. Neon: two computes sharing one replicated storage layer cost about $348.52 (compute $309.52 plus the same storage), since Neon's read replicas are billed as compute without additional storage. Supabase: a read replica bills a second instance and its own disk, about $258 in total. Aurora: a second ACU-hour stream doubles compute to $700.80 on Standard (about $811 at 5 I/O per query) or about $934 on I/O-Optimized. Aurora's reader can run at a different, usually smaller, capacity than the writer, and read traffic split across both lowers each side's ACU requirement, so these figures are upper bounds for an equal-sized pair.
Sensitivity
- Average compute requirement. The largest lever on all three. Doubling the active RAM from 8 GB to 16 GB roughly doubles Neon's compute line ($154.76 to $309.52) and Aurora's ($350.40 to $700.80), and moves Supabase from a $110 Large to a $210 XL instance.
- Idle time and scale-to-zero. This article assumes 100% uptime. A database idle most of the day costs much less on Neon and Aurora (with auto-pause) than on Supabase, which bills its instance for every hour the project exists.
- Aurora I/O intensity. A 40x range in I/O per query (0.5 to 20) moves Aurora Standard from $370 to $760 at identical query volume.
- Plan tier on Neon. Moving from Launch to Scale for the SLA and compliance features raises the compute rate from $0.106 to $0.222 per CU-hour, a 109% increase that takes this workload from about $194 to about $363.
Budgeting traps
- Budgeting from query count. None of the three bills it. The same 100 million queries can fit a $137 or a $760 monthly bill depending on instance size and I/O.
- Assuming Neon still has a $19 minimum. The Launch plan has no monthly minimum in the current structure; $19 figures come from earlier comparison pages.
- Treating Supabase Pro's $25 as the database price. The base includes only a Micro instance credit; production workloads usually need a larger instance, billed on top of the base.
- Forgetting storage billing during idle periods. Neon and Aurora both stop compute charges when paused but keep billing storage.
- Choosing Aurora Standard without estimating I/O. The I/O line is the one component that can exceed compute, and it is only visible after the workload runs.
What to ask before you buy
Measure your real average memory footprint and I/O request rate on a representative copy of the workload before comparing these three, since those two numbers, not the query count, decide the invoice. Ask AWS or your reseller how I/O-Optimized would price your actual I/O volume, and confirm Neon's current plan limits (the autoscaling ceiling on Launch and the history retention charge) and Supabase's current instance prices for your project region before committing.