Only two of these three services actually have a free tier — and a surprising number of pricing roundups get this wrong. PlanetScale's own documentation states plainly that it "does not offer a free plan," while Supabase and Firebase both do, with genuinely different ideas of what "free" should include. This comparison sticks to what each company's own pricing and plans pages state, since the three products aren't really interchangeable: two are full backend platforms bundling a database with auth and storage, and one is a database only — a distinction that matters more than any single price point.
This comparison is based on official pricing and documentation pages verified as of 14 September 2026 — the same standard we used comparing Cursor, GitHub Copilot, and Claude Code's pricing.
What "free" actually includes — normalized
| Supabase Free | Firebase Spark | PlanetScale | |
|---|---|---|---|
| Cost | $0 | $0 | No free plan |
| Database storage | 500 MB | 1 GiB (Firestore) | N/A — cheapest is $5/mo |
| Auth users | 50,000 MAU included | 50,000 MAU (email/social); only 50 MAU for SAML/OIDC | N/A — no bundled auth |
| File storage | 1 GB | Billed under Blaze only, not part of Spark | N/A |
| Idle behavior | Project pauses after 1 week of inactivity | No pausing; quota simply stops the product for the month | N/A |
Supabase's own pricing page lists its Free plan as capped by fixed monthly quotas — 500 MB of database, 50,000 monthly active users, 5 GB egress — with the project itself pausing after a week of no activity. Firebase's Spark plan, per Firebase's own pricing page, uses daily rather than monthly caps for its database (Firestore reads/writes reset each day) and doesn't pause your project — it simply stops serving the over-quota product until the next day or billing cycle.
The PlanetScale confusion, straight from PlanetScale
Search results for "PlanetScale free tier" turn up a wave of pricing-roundup sites still describing a free Hobby or Developer plan. PlanetScale's own current documentation corrects this directly: "PlanetScale does not offer a free plan, previously known as the 'Developer' or 'Hobby' plan. All databases require a paid subscription starting with our Base plan." That free tier existed before April 2024 and was removed; PlanetScale's own docs make no mention of ever reinstating it.
The cheapest real entry point, per PlanetScale's own plans page, is a single-node Postgres database at $5/month — explicitly non-highly-available and intended for development rather than production. Vitess (PlanetScale's MySQL-compatible engine) has no single-node option at all; its production-ready tiers start considerably higher.
How each one stops you from getting an unexpectedly large bill
- Supabase: its own Pro plan documentation states a spend cap is "enabled by default to keep costs under control" — you have to explicitly switch it off to be billed for usage beyond your plan's included quota.
- Firebase: Blaze has no fixed monthly price and, per multiple pricing analyses cross-checked against Firebase's own rate card, no hard spending cap by default — every metered product (Firestore reads/writes, storage, bandwidth, function invocations) bills independently once you exceed the free quota carried over from Spark.
- PlanetScale: pricing is per fixed cluster SKU rather than granular usage meters — you choose a compute tier (PS-5 through PS-2560, or Metal) and pay that flat rate, which is more predictable but means you're paying for provisioned capacity whether you use it or not.
Compute: always-on versus scale-to-zero versus fixed SKU
A less obvious but consequential difference sits in how each platform bills compute once you're past the free tier. Supabase's own documentation is explicit that its Postgres instances do not scale to zero on paid plans — "each project runs on a Postgres instance," billed hourly whether or not it's receiving traffic, though paid plans include a $10/month compute credit that covers one Micro instance. Firebase's Blaze plan has no equivalent compute line at all for its core database products; Firestore and Realtime Database bill per operation and per gigabyte rather than per provisioned server. PlanetScale sits closest to Supabase's model — you select a fixed compute SKU (from PS-5 up through PS-2560, or a Metal tier with dedicated NVMe storage) and pay for that capacity continuously, with no scale-to-zero option documented for any tier.
What each one is actually built to be
- Supabase bundles a full Postgres database with Auth, Storage, Edge Functions, and Realtime under one price — Anthropic-style "one bill" backend-as-a-service, built on open-source Postgres rather than a proprietary database engine.
- Firebase centers on Firestore or the Realtime Database (NoSQL, not SQL) plus Auth, Hosting, and Cloud Functions — historically the default choice for mobile-first apps needing real-time sync without managing a backend server.
- PlanetScale is a database only — Postgres or its Vitess-based MySQL-compatible engine — with no bundled auth, storage, or serverless functions. You're expected to bring your own auth provider and file storage — a foundation-first design choice similar to the trade-offs we found comparing Zed, Devin Desktop, and Cursor's underlying editor architecture.
Which one fits which project
- You want a free tier and a relational (SQL) database: Supabase. It's the only one of the three offering both a genuinely free plan and Postgres rather than a NoSQL document store.
- You're building a mobile app with real-time sync and don't mind NoSQL: Firebase. Its Spark plan's daily-reset quotas suit low-traffic prototypes, and Blaze scales without a hard cap once you're in production.
- You need pure database performance and already have your own auth and storage: PlanetScale. There's no free tier to start on, but the fixed-SKU pricing model is more predictable at scale than granular per-operation metering.
- You want to avoid a runaway bill on a side project: Supabase's default-on spend cap is the most protective of the three by default; Firebase's Blaze plan requires you to set your own budget alerts manually since there's no default cap.
Frequently asked questions
Does PlanetScale really have no free tier at all?
Correct, as of this writing. PlanetScale's own documentation states it removed its free Hobby/Developer plan and has not reintroduced one; the cheapest option is a $5/month single-node Postgres database not intended for production.
Can I get billed a huge amount unexpectedly on Firebase's Blaze plan?
It's possible, since Blaze has no fixed monthly price and no default spending cap — Firebase's own documentation recommends setting budget alerts manually, which is not automatic the way Supabase's spend cap is.
Is Firebase's free tier better than Supabase's?
They're not directly comparable because they cap different things — Firebase's Spark plan resets its Firestore read/write quotas daily and stops a product for the rest of the day if you exceed them, while Supabase's Free plan caps total monthly database size and pauses the entire project after a week of inactivity.
Does Supabase or Firebase include user authentication for free?
Both do. Supabase's Free plan includes up to 50,000 monthly active users through its built-in Auth service; Firebase's Spark plan includes the same 50,000 MAU figure for email and social sign-in, though SAML/OIDC enterprise sign-in is capped at just 50 MAU on Firebase's free tier.
Last verified: 14 September 2026. Pricing, quotas, and plan names for all three services are subject to change — confirm current details on each company's own pricing page.
