Supabase Pricing in 2026: Free, Pro and What Usage Add-Ons Cost
Supabase Pro costs $25 a month. For most small production apps that is the whole bill, and it stays that way longer than people expect. The trouble starts when you add a second project, move to a bigger database instance, or hit 100,000 monthly active users. Then the invoice turns into a list of line items, and a few of them are not covered by the spend cap that most buyers assume protects them.
I've signed off on enough cloud bills to know that the headline price is rarely the problem. The problem is the line item nobody modeled. Here is what each Supabase plan actually costs, taken from the Supabase pricing page on November 1, 2026, and where the extra charges come from.
The Short Version
- ▸Free: $0. Two active projects, 500 MB database, 50,000 MAUs, 5 GB egress, 1 GB file storage. Projects pause after one week of inactivity.
- ▸Pro: from $25/month. 8 GB disk per project, 100,000 MAUs, 250 GB egress, 100 GB storage, daily backups kept 7 days. Includes $10/month of compute credit, which covers one Micro instance.
- ▸Team: from $599/month. Adds SOC 2 and ISO 27001 reports, SSO into the dashboard, read-only and project-scoped roles, 14-day backups and 28-day log retention.
- ▸Enterprise: custom quote. Uptime SLAs, AWS PrivateLink, 24x7 support, a named account team.
My recommendation up front: start on Free, move to Pro the day real users touch the app, and do not let anyone talk you into Team unless a customer's security questionnaire is asking for a SOC 2 report.
Free: Good for Building, Bad for Anything Live
The Free plan is generous on paper. Unlimited API requests, 50,000 monthly active users for Auth, 500,000 Edge Function invocations, 2 million Realtime messages. Plenty of hobby apps never get close to those numbers.
Pausing is the catch. A Free project with no activity for a week gets paused, and someone has to restore it by hand. For a demo you show investors once a quarter, that is a real risk. Show up to the meeting, the app is asleep.
Two other limits matter more than the quota table suggests. There are no automatic backups on Free, and log retention is one day. If you break your schema on a Friday and notice Monday, you have nothing to roll back to. Run pg_dump on a cron job yourself or accept the risk.
The two-project limit also counts across every organization where you're an Owner or Admin, per the billing docs. Creating a second org doesn't get you a third free project.
Pro: $25 Is the Floor, Not the Price
Pro removes pausing and adds daily backups, email support and much bigger quotas. The $25 includes one Micro compute instance (shared CPU, 1 GB RAM, 60 direct connections, 200 pooled) because the $10 compute credit cancels it out.
Every project after that pays for its own compute. Here is the price list for the instances most teams will touch, from the compute and disk docs and the pricing page:
| Instance | Price/month | CPU | RAM |
|---|---|---|---|
| Micro | $10 | Shared | 1 GB |
| Small | $15 | Shared | 2 GB |
| Medium | $60 | Shared | 4 GB |
| Large | $110 | 2 dedicated vCPUs | 8 GB |
| XL | $210 | 4 dedicated vCPUs | 16 GB |
| 2XL | $410 | 8 dedicated vCPUs | 32 GB |
The $10 credit applies once per organization, not per project. So the math works like this:
- ▸One project on Micro: $25.
- ▸One project on Small: $25 + $15 - $10 = $30.
- ▸One project on Large: $25 + $110 - $10 = $125.
- ▸Three projects on Micro (say production, staging and an internal tool): $25 + $10 + $10 = $45.
Staging environments are where small teams quietly double their bill. If staging doesn't need to run all the time, use branching instead, which Pro bills at $0.01344 per branch per hour. A branch alive for eight working hours a day, 22 days a month, costs about $2.37.
There's one more structural rule. Billing is per organization, and you can't mix plans inside one org. Upgrade an org to Pro and every project in it is now a Pro project with its own compute charge. Keep throwaway experiments in a separate Free org.
Usage Overages on Pro
Once you pass the included quota, these are the per-unit rates:
- ▸Disk: 8 GB included per project, then $0.125/GB. A 40 GB database adds $4. Cheap.
- ▸Egress: 250 GB included, then $0.09/GB. Cached egress (served from the CDN) has its own 250 GB and then $0.03/GB.
- ▸Monthly active users: 100,000 included, then $0.00325 per MAU.
- ▸File storage: 100 GB included, then $0.0213/GB.
- ▸Edge Functions: 2 million invocations included, then $2 per million.
- ▸Realtime: 500 peak connections included, then $10 per 1,000. 5 million messages included, then $2.50 per million.
- ▸Image transformations: 100 origin images included, then $5 per 1,000.
Most of those are small. Two are not.
MAUs scale with your user count, not your usage. An app with 250,000 monthly active users pays for 150,000 extra, which is $487.50 a month on top of the plan. That's the single biggest surprise I see in Supabase bills, because it grows with success instead of with load. If your users log in once a month and do almost nothing, you still pay for each of them. Compare that against running your own auth or a provider priced per active org before you hit six figures.
Egress punishes media-heavy apps. Serving 1 TB of uncached database and API traffic costs about $68 beyond the included 250 GB. Push images and files through the Storage CDN where you can, since cached egress is a third of the price. The egress docs explain which services count toward which bucket.
The Spend Cap Doesn't Cover Everything
Pro ships with the spend cap turned on. When you hit a quota, Supabase restricts that usage item until the next billing cycle instead of charging you. That protects you from a bot hammering your Auth endpoint or a runaway Edge Function loop.
Read the cost control docs before relying on it, though. The cap covers disk size, egress, MAUs, Edge Function invocations, Realtime, storage and logs. It does not cover:
- ▸Compute (including read replicas and branching compute)
- ▸Point-in-time recovery
- ▸Custom domains
- ▸Log drains
- ▸Phone MFA
- ▸IPv4 addresses and extra provisioned IOPS or throughput
Supabase's argument is that those are items you opted into on purpose, so they're predictable. Fair enough. But if a developer bumps production from Small to XL during a load spike and forgets to scale back, the cap won't stop $195 a month of extra compute. Put compute changes behind the same review as any other infrastructure change.
Also understand what the cap does when it triggers. Your app stops getting more of that resource. For a consumer app with an Auth MAU cap, that can mean new users can't sign up. I'd rather pay $50 in overage than lose a launch day. Turn the cap off once you have billing alerts in place and someone actually reads them.
Add-Ons Worth Budgeting For
These are opt-in, priced flat, and catch people at renewal time:
- ▸Point-in-time recovery: $100/month per 7 days of retention. Daily backups on Pro are fine for most apps. If losing a day of data would end up in front of a lawyer, buy PITR.
- ▸Custom domain: $10/month per project. Mostly cosmetic for API calls, but it matters if your Auth emails and OAuth redirects show the supabase.co hostname to users.
- ▸Phone MFA: $75/month for the first project, then $10 per additional project. TOTP MFA is free on every plan. Use that.
- ▸Log drains: $60 per drain per month, plus $0.20 per million events and $0.09/GB egress. If you already run Datadog or a SIEM, this is how logs get there, and it adds up quickly per project.
- ▸SAML SSO for your app's users: 50 SSO MAUs included on Pro, then $0.015 each. Cheap compared with Auth0's enterprise tiers.
Team at $599: Pay for Paperwork, Not Features
Team doesn't make your database faster. It buys compliance artifacts and access control: SOC 2 and ISO 27001 reports, SSO into the Supabase dashboard, read-only and project-scoped roles, platform audit logs, longer backup and log retention, and support with an SLA. HIPAA is a paid add-on on top.
From the security side, I'd say this is exactly the right list of things to charge for, and $599 is reasonable if a customer contract requires it. It is $574 a month of overhead if no one is asking. A five-person startup with no enterprise customers should stay on Pro and revisit when the first security questionnaire lands.
What a Real Bill Looks Like
Three examples using the published rates:
Side project with a few hundred users. Free plan, $0. Accept the pausing risk or keep it awake with a scheduled ping. I'd still move to Pro if anyone pays you for it.
SaaS startup, 30,000 MAUs, production plus staging. Pro $25, production on Small ($15 minus the $10 credit), staging on Micro ($10). Disk and egress inside quota. About $40/month.
Consumer app, 220,000 MAUs, 600 GB egress, Large instance, PITR. Pro $25, Large $110 minus $10 credit, 120,000 extra MAUs at $390, 350 GB extra egress at $31.50, PITR $100. Roughly $646/month. MAUs are 60% of that bill.
How It Compares
Supabase is cheaper than Firebase for most relational workloads, and the gap widens once you're past the free tier because Firebase charges per document read. I covered that in detail in Supabase vs Firebase. If your frontend runs on Vercel or Netlify, the hosting side has its own usage traps; see the Coolify vs Vercel vs Netlify breakdown.
Self-hosting Supabase is free and open source. It isn't free to run. You take on Postgres upgrades, backups, Auth patching and the Realtime server. Below roughly $300 a month in Supabase spend, your time costs more than the bill.
My Take
Supabase Pro at $25 is one of the best deals in backend hosting for a single production app. Budget for compute on every extra project, model MAUs before your user count passes 100,000, and know which charges the spend cap ignores. Do those three things and the bill holds no surprises. Skip Team until a customer demands the SOC 2 report.