A worked monthly bill for a small logged-in app at three sizes, from the Supabase and Firebase price lists on October 24, 2026.
On this page
The short answer
For the small SaaS priced below, Firebase is $0.00 a month at 1,000 users, $0.90 at 10,000, and $23.40 at 50,000. Supabase Free still covers the 1,000 user case, and Supabase Pro is $25.00 at all three sizes. The rates are the vendor prices on October 24, 2026, and every assumption is written under the bill.
What each bill counts
Supabase vs Firebase is three choices stuck together: what the database charges for, what auth charges for, and what it takes to leave. It lives on the backend and stack hub.
Supabase sells Postgres with a monthly plan. API requests are unlimited on every plan, Free included. You pay for the disk you provision, file storage, egress, monthly active users, and the compute instance under the project. Pro is $25 a month and includes a $10 compute credit, which covers one Micro instance. A second project pays its own compute. The credit covers one Micro, not the second.
Firebase Blaze has no plan fee. Firestore Standard bills each document read, write, and delete, then stored data and egress. The free quotas still apply on Blaze, and the read, write, and delete quotas reset every day. They do not roll over. Files sit in Cloud Storage, with a separate set of quotas. Email, password, and social sign-in are no-cost. Phone sign-in is billed per SMS.
The dollar rates depend on the Firestore location, and you cannot change that location later. The location guide names nam5 as the United States multi-region, and it says to pick a regional location when you want the lower price. The table uses nam5. Iowa (us-central1) is the regional comparison.
| Meter | Supabase Pro | Firebase, nam5 |
|---|---|---|
| Plan fee | $25 a month | $0 |
| Reads | Unlimited API requests | $0.06 per 100,000 after 50,000 a day |
| Writes | Not billed per write | $0.18 per 100,000 after 20,000 a day |
| Deletes | Not billed per delete | $0.02 per 100,000 after 20,000 a day |
| Database storage | 8 GB disk included, then $0.125 per GB | 1 GiB included, then $0.18 per GiB-month |
| Database egress | 250 GB uncached, then $0.09 per GB, shared across services | 10 GiB a month, then $0.12 per GiB |
| Files | 100 GB included, then $0.0213 per GB | 5 GiB included, then $0.02 per GiB-month |
| File downloads | Count as egress. Cached egress has its own 250 GB, then $0.03 per GB | 100 GiB a month on a us-central1 bucket, then $0.12 per GiB |
| Auth | 100,000 MAU included, then $0.00325 | Email and social sign-in are no-cost |
Iowa’s Firestore rates on the same pricing page are $0.03 per 100,000 reads, $0.09 per 100,000 writes, $0.01 per 100,000 deletes, and $0.15 per GiB-month. The Firebase Standard edition docs quote that Iowa read price. The nam5 row is the one in the bill below.
Two storage prices are easy to misread, so here is how they were taken. Firestore lists nam5 stored data as $0.000246575 per GiB-hour and as $0.18 per GiB-month. Iowa is $0.000205479 per GiB-hour and $0.15 per GiB-month. Both monthly figures are the hourly price times 730 hours, which is the hour count in Google’s own examples. Cloud Storage’s regional Standard price is $0.000027397 per GiB-hour. Times 730 hours, that is $0.02 per GiB-month. File operations for a single-region Standard bucket are $0.005 per 1,000 uploads (Class A) and $0.0004 per 1,000 downloads (Class B).
Supabase bills the disk you provision, not the bytes sitting in the tables. The default general purpose disk is 8 GB, then $0.125 per GB. Egress is one uncached pool for database, auth, storage, and functions, plus a separate cached pool.
The bill at 1,000, 10,000 and 50,000 users
This is a pricing model. We did not run these apps, and we did not time a dump or an export. The workload is a logged-in SaaS that talks to the database from the client.
Same shape on both sides:
- 1,000, 10,000, and 50,000 monthly active users. Call them MAU.
- 2 registered accounts for each MAU. Half the accounts do something in the month.
- 10 KB of database data per account, with a KB at 1,000 bytes. 200 KB of files per account.
- Per MAU in the month: 300 document reads, 15 document writes, no deletes, 1 MB of database response, 4 MB of file downloads, 2 download operations, and 0.1 upload operations. A MB is 1,000,000 bytes.
- The month has 30 days, and usage is spread evenly. That matters, because a quiet Tuesday does not bank Firestore reads for a busy Wednesday.
- Queries have at most one range field, so Firestore does not add index-entry reads. Security rules do not call
get(),exists(), orgetAfter(). Those calls add reads. - No Cloud Functions, no Edge Functions, no phone auth, no SAML, no point-in-time recovery, no read replicas, no log drains.
- One Supabase project, on Micro, on the default 8 GB disk. At 50,000 users the rows are 1 GB, so the disk is not grown. WAL and system files use some of the 8 GB. This model does not add them.
- File downloads are uncached. A high cache hit rate would move Supabase file bytes onto the cheaper cached pool. At these three sizes the pool is not full either way, until 50,000 users, where uncached egress lands exactly on 250 GB.
- Firestore is nam5. The file bucket is the newer
*.firebasestorage.appbucket inus-central1, which is one of the three regions where the free storage quotas apply. A bucket outsideus-central1,us-west1, andus-east1does not get those quotas. - Google bills gibibytes. The 100 GB download allowance and the 5 GB storage allowance are taken as 100 GiB and 5 GiB. Treating the download allowance as 100 decimal GB instead adds $0.83 to the 50,000 user Firebase total.
- Each line is rounded to the nearest cent, then the lines are added.
- Supabase overage assumes the spend cap is off. Pro turns the cap on by default, and a capped project gets restricted instead of billed when it passes a quota. At these three sizes the usage still fits, so the cap does not change the $25.
| Plan | 1,000 users | 10,000 users | 50,000 users |
|---|---|---|---|
| Firebase, United States (nam5) | $0.00 | $0.90 | $23.40 |
| Firebase, Iowa (us-central1) | $0.00 | $0.45 | $19.22 |
| Supabase Free | Fits, $0.00 | Does not fit | Does not fit |
| Supabase Pro | $25.00 | $25.00 | $25.00 |
Firebase at 10,000 users, line by line
United States multi-region (nam5). Each line is rounded to the cent.
| Line | Usage | Billed | Cost |
|---|---|---|---|
| Document reads | 3,000,000 in the month, 100,000 a day | 1,500,000 reads at $0.06 per 100,000. Allowance: 50,000 a day. | $0.90 |
| Document writes | 150,000 in the month, 5,000 a day | 0 writes at $0.18 per 100,000. Allowance: 20,000 a day. | $0.00 |
| Document deletes | 0 in the month, 0 a day | 0 deletes at $0.02 per 100,000. Allowance: 20,000 a day. | $0.00 |
| Database stored | 0.19 GiB | 0.00 GiB at $0.18 per GiB-month. Allowance: 1 GiB. | $0.00 |
| Database egress | 9.31 GiB | 0.00 GiB at $0.12 per GiB. Allowance: 10 GiB a month. | $0.00 |
| File storage | 3.73 GiB | 0.00 GiB at $0.02 per GiB-month. Allowance: 5 GiB. | $0.00 |
| File download egress | 37.25 GiB | 0.00 GiB at $0.12 per GiB. Allowance: 100 GiB a month. | $0.00 |
| File operations | 1,000 uploads, 20,000 downloads | 0 uploads, 0 downloads at $0.005 and $0.0004 per 1,000. Allowance: 5,000 uploads and 50,000 downloads. | $0.00 |
| Firebase total | 10,000 monthly active users | Sum of the lines above | $0.90 |
Supabase Pro at 10,000 users, line by line
| Line | Usage | Billed | Cost |
|---|---|---|---|
| Pro plan | 1 organization | 1 plan at $25 a month. Allowance: The plan fee. | $25.00 |
| Compute | 1 Micro instance | 0 extra at $10, then a $10 credit. Allowance: $10 credit covers 1 Micro. | $0.00 |
| Database disk | 0.20 GB of rows | 0.00 GB at $0.125 per GB. Allowance: 8 GB provisioned. | $0.00 |
| File storage | 4.00 GB | 0.00 GB at $0.0213 per GB. Allowance: 100 GB. | $0.00 |
| Uncached egress | 50.00 GB | 0.00 GB at $0.09 per GB. Allowance: 250 GB. | $0.00 |
| Monthly active users | 10,000 | 0 at $0.00325 per MAU. Allowance: 100,000. | $0.00 |
| Supabase Pro total | 10,000 monthly active users | Sum of the lines above | $25.00 |
What costs money at 50,000 users
Nam5 again. Supabase Pro is still $25.00. Uncached egress is 250.00 GB, which is the whole 250 GB allowance.
| Line | Usage | Billed | Cost |
|---|---|---|---|
| Document reads | 15,000,000 in the month, 500,000 a day | 13,500,000 reads at $0.06 per 100,000 | $8.10 |
| Document writes | 750,000 in the month, 25,000 a day | 150,000 writes at $0.18 per 100,000 | $0.27 |
| Database egress | 46.57 GiB | 36.57 GiB at $0.12 per GiB | $4.39 |
| File storage | 18.63 GiB | 13.63 GiB at $0.02 per GiB-month | $0.27 |
| File download egress | 186.26 GiB | 86.26 GiB at $0.12 per GiB | $10.35 |
| File operations | 5,000 uploads, 100,000 downloads | 0 uploads, 50,000 downloads at $0.005 and $0.0004 per 1,000 | $0.02 |
| Firebase total | 50,000 monthly active users | Sum of the paid lines. Every other line is $0.00. | $23.40 |
Try your own numbers
The three buttons put back the workload in the tables. The rates stay the October 24, 2026 prices. Moving a field only changes the workload.
Firebase, United States multi-region (nam5): $0.90 a month. Supabase Pro: $25.00 a month.
Supabase Free does not cover this workload. File storage is 4.00 GB, and the cap is 1 GB. Egress is 50.00 GB, and the cap is 5 GB.
Document reads: $0.90 (1,500,000 reads).
The 10,000 user read line is the one to check by hand. 300 reads times 10,000 users is 3,000,000 reads in the month, 100,000 a day. The free quota is 50,000 a day, so 50,000 a day are billed. That is 1,500,000 billed reads. At $0.06 per 100,000, the line is $0.90. Writes are 5,000 a day, under the 20,000 cap. Storage, egress, and file operations are under their caps too. The Blaze invoice is $0.90.
At 50,000 users the reads are the same idea at a bigger scale. 300 times 50,000 is 15,000,000 reads, 500,000 a day. After the daily 50,000, that is 450,000 billed a day, 13,500,000 in the month, $8.10. Writes are 25,000 a day, so 5,000 a day are billed, 150,000 in the month, $0.27.
The file download line is the other one worth doing longhand. 50,000 users times 4 MB is 200,000 MB, which is 186.26 GiB. The allowance used here is 100 GiB, so 86.26 GiB are billed at $0.12, which is $10.35. Database responses are 50,000 MB, 46.57 GiB, and 36.57 GiB of that is past the 10 GiB allowance: $4.39. File storage is 18.63 GiB, 13.63 GiB past 5 GiB, at $0.02: $0.27. Download operations are 100,000, and 50,000 of them are past the free 50,000, at $0.0004 per 1,000: $0.02.
Add the 50,000 user Firebase lines: $8.10 + $0.27 + $4.39 + $0.27 + $10.35 + $0.02 = $23.40.
Supabase Pro stays at $25.00 because nothing leaves an included quota. Uncached egress at 50,000 users is 250 GB, the entire allowance. One step past it, egress is $0.09 per GB. Stepping the same formula one user at a time, the two bills meet at 54,916 MAU, both $27.21. At 54,917 MAU, Firebase is $27.22 and Supabase is $27.21. Set the calculator to 54916 if you want to see the tie. Change the reads per user and the tie moves.
Iowa, with the same workload and the lower regional rates, is $0.00, $0.45, and $19.22 at the three sizes.
The next Supabase compute size is Small, $15 before the same $10 credit, so $5 more a month. This bill stays on Micro. Micro is a shared CPU, 1 GB of RAM, and 200 pooler connections. That is the included size. It is not a load test. A chatty app can run out of connections before it runs out of disk.
Where the free plans stop
At 1,000 users the Supabase side is 20 MB of database (the cap is 500 MB), 0.40 GB of files (the cap is 1 GB), 5.00 GB of egress (the cap is 5 GB), and 1,000 MAU (the cap is 50,000). It fits, and it uses the whole egress cap.
Free projects pause after a week with no activity. A launched app that receives requests does not hit that. A project you leave quiet while you are still building does.
At 10,000 users the database is still 0.20 GB, under the 500 MB free cap. Files are 4 GB and egress is 50 GB. Free is done. Pro is $25, and both of those lines sit inside the Pro quotas.
Firebase’s Spark plan includes the Firestore free quotas. The pricing page marks Cloud Storage capacity as not applicable on Spark, so files mean Blaze. Blaze keeps the no-cost quotas. At 1,000 users every line in this model is inside them, and the invoice is $0. You do need a billing account.
At 10,000 users on nam5, reads are the only Firebase line that leaves the free quota.
Auth, backups, and the extras
Supabase counts a monthly active user as a distinct person who signs in or refreshes a token during the billing cycle, once. Social sign-in counts. Pro includes 100,000, then $0.00325 each. All three sizes here are under that line.
Firebase Authentication, without Identity Platform, does not meter those same users. The pricing page lists phone auth separately, billed per SMS. Identity Platform, if you turn it on, includes 50,000 MAU and then uses Google Cloud pricing. This bill does not turn it on. Supabase’s phone MFA add-on is $75 a month for the first project. This bill does not turn that on either.
Pro keeps 7 days of daily backups. The backup does not include Storage files. The database holds metadata about those objects, and restoring a backup does not bring back a file you deleted later. Free projects are told to export with the Supabase CLI db dump command and keep a copy somewhere else. Point-in-time recovery is about $100 a month for 7 days, and it needs at least a Small compute instance. It is not in the $25.
Firestore’s managed export needs Blaze. It writes documents to a Cloud Storage bucket you create. Exporting charges one read per document, and those reads do not show in the usage section of the console. A recurring export can surprise you for that reason. The export is not in the monthly totals above.
Edge Functions on Pro include 2 million invocations, then $2 per million. Cloud Functions on Blaze include 2 million invocations, then $0.40 per million, plus 400,000 GB-seconds, 200,000 CPU-seconds, and 5 GB of outbound networking. A client that talks to the database directly uses none of that. If you put every request behind a function, recount the GB-seconds. The invocation price is on the Firebase pricing page. The GB-second price past the included amount is Cloud Functions pricing, and this model does not enter it.
Getting the data out
Supabase is Postgres. The way out is a Postgres dump: the CLI db dump command, or a restore from the 7 daily backups on Pro. Anything that speaks Postgres can read the result. Storage files are a second copy job, because they are not inside the database backup.
Firestore’s way out is the managed export, or a load of that export into BigQuery. The file you get is Firestore documents. It is a different shape from rows in Postgres. You also pay the read for each document on the way out, on top of needing Blaze to run the export at all.
That is the leaving cost this comparison can actually show. We did not clock a dump against an export on a local emulator, so there is no timing claim here.
Which one to start on
At 1,000, 10,000, and 50,000 users, with this workload, the Firebase invoice is the lower one: $0.00, $0.90, and $23.40 on nam5, against $25.00 for Supabase Pro once Free no longer fits.
Start on Firebase Blaze when that invoice is the decision and the client can talk to Firestore directly. Watch the daily read quota. It is the first line that starts costing money, and unused days do not carry forward. Pick Iowa, or another regional location, if you want the lower operation rates and you are willing to live with a regional database. You cannot move it later.
Start on Supabase Pro when you want Postgres, a $25 bill that does not move at these three sizes, and a dump you can restore in any Postgres. Free is enough for the 1,000 user shape, including the week-of-inactivity pause if the project is actually receiving traffic. The 5 GB egress cap is full at that size, so a heavier page will push you to Pro before the user count does.
If your app reads a lot more than 300 documents per user, change that field in the calculator before you decide. The $0.90 line is 300 reads. It will not stay $0.90 if the client refetches a big list on every click.
That bill is a cost. What those users pay you is MRR. How to calculate MRR is the monthly price of the subscriptions you still have, with trials, tax, one-off fees, and usage left out. At 10,000 users the nam5 bill is $0.90. Set that next to the MRR those users produce.
The site in front of either backend still has to get into Google. The order of operations is in how to get a new website indexed by Google.
How to get a new website indexed by Google The steps in order, what each Search Console status means, and how long to wait. GuideFAQ
Is Supabase cheaper than Firebase?
Not at the three sizes priced here. On the United States multi-region, Firebase Blaze is $0.00 at 1,000 monthly active users, $0.90 at 10,000, and $23.40 at 50,000. Supabase Pro is $25.00 at all three, and Supabase Free still fits at 1,000.
Does Firebase charge for authentication?
Email, password, and the social providers are no-cost on the Firebase pricing page. Phone sign-in is billed per SMS, and this comparison leaves it out. Identity Platform is a separate meter: 50,000 monthly active users included, then Google Cloud pricing.
Does Supabase charge per API request?
No. Every plan on the Supabase pricing page includes unlimited API requests. The meters that move are disk, file storage, egress, monthly active users, and the compute size.
Can I stay on the free plan?
At the 1,000 user workload in this post, Supabase Free fits, and it uses the whole 5 GB egress cap. Firebase needs Blaze before Cloud Storage is available, and the invoice at 1,000 users is still $0. At 10,000 users, Supabase Free is past its file and egress caps.
How do I get my data out?
Supabase is Postgres. Pro projects keep 7 days of daily backups, and you can dump the database yourself with the Supabase CLI. Firestore’s managed export writes documents to a Cloud Storage bucket. It needs Blaze, and each exported document counts as a read.
What counts as a monthly active user on Supabase?
A distinct user who signs in or refreshes a token during the billing cycle, counted once. That is the definition in the MAU guide. Pro includes 100,000, then $0.00325 each.
Sources
- Supabase Pricing Checked
- Manage Egress usage (Supabase) Checked
- Manage Monthly Active Users usage (Supabase) Checked
- Manage Disk size usage (Supabase) Checked
- Database Backups (Supabase) Checked
- Firebase Pricing Checked
- Firestore pricing (Google Cloud) Checked
- Cloud Firestore locations (Firebase) Checked
- Firestore Standard edition (Firebase) Checked
- Cloud Storage pricing (Google Cloud) Checked
- Export and import data (Firestore) Checked