Supabase pricing guide
How Supabase pricing works and what the spend cap covers
Supabase starts at $0 per month on the Free Plan, while production workloads usually run on the $25 per month Pro Plan. The built-in spend cap prevents runaway bills on 12 specific usage metrics, but it does not stop charges for compute add-ons, extra projects, or dedicated tooling.
If you add a second project or scale your database beyond the default instance, your invoice will pass that base $25 fee even with the spend cap enabled. Here is how the tiers work, what compute instances actually cost, and where the limits apply.
The core plans: Free, Pro, and Team
The Free Plan costs $0 per month and includes 50,000 monthly active users, 500 MB of database space, a shared CPU with 500 MB RAM, 5 GB egress, 5 GB cached egress, and 1 GB of file storage. You also get unlimited API requests, 500,000 Edge Functions invocations, and 50,000 third-party MAUs. Realtime quotas cover 200 concurrent peak connections and 2 million messages per month with a 256 KB max message size. Log retention is 1 day, with 1 GB log ingestion and 100 GB log query. Max file upload size sits at 50 MB.
Free projects come with operational limits. They are paused after 1 week of inactivity, and your account has a limit of 2 active projects. You can keep as many paused projects as you want, pausing and unpausing them as needed. If you do not want hosted limits at all, you can self-host Supabase for free using the Docker setup or the Supabase CLI, which includes Supabase Studio.
The Pro Plan starts at $25 per month and is charged up front on a monthly schedule. It includes your first project, while additional projects cost from $10 per month each. The plan includes:
- 100,000 monthly active users (then $0.00325 per MAU)
- 8 GB disk size per project (then $0.125 per GB)
- 250 GB egress (then $0.09 per GB)
- 250 GB cached egress (then $0.03 per GB)
- 100 GB file storage (then $0.0213 per GB)
Additional usage is calculated and billed at the end of the month.
The Team Plan starts at $599 per month. It includes your first project (extra projects start at $10 per month) and adds SOC2 & ISO 27001 compliance, project-scoped and read-only access, SSO for the Supabase Dashboard, priority email support and SLAs, 14-day daily backup storage, and 28-day log retention. HIPAA is available as a paid add-on. If your organization purchases Pro or Team through AWS Marketplace to satisfy an AWS spend commitment, keep in mind that the Spend Cap is unavailable on AWS-managed organizations.
Compute instances and the $10 credit
Paid plans bill compute instances by the hour. Every paid plan includes $10 per month in compute credits, which covers the full monthly cost of one Micro instance or offsets the price of any larger instance you choose.
Compute tiers up to Medium run on shared CPUs, while Large and above run on dedicated vCPUs. Instance changes are usually applied with less than 2 minutes of downtime, though it can take longer depending on the underlying cloud provider.
| Compute Size | Hourly Price | Approximate Monthly Price | CPU Type | RAM |
|---|---|---|---|---|
| Nano | $0.00 / hr | $0 / mo | Shared CPU | Up to 0.5 GB |
| Micro | $0.01344 / hr | ~$10 / mo | Shared CPU | 1 GB |
| Small | $0.0206 / hr | ~$15 / mo | Shared CPU | 2 GB |
| Medium | $0.0822 / hr | ~$60 / mo | Shared CPU | 4 GB |
| Large | $0.1517 / hr | ~$110 / mo | Dedicated (2 vCPUs) | 8 GB |
| XL | $0.2877 / hr | ~$210 / mo | Dedicated (4 vCPUs) | 16 GB |
| 2XL | $0.562 / hr | ~$410 / mo | Dedicated (8 vCPUs) | 32 GB |
| 4XL | $1.32 / hr | ~$960 / mo | Dedicated (16 vCPUs) | 64 GB |
| 8XL | $2.562 / hr | ~$1,870 / mo | Dedicated (32 vCPUs) | 128 GB |
| 12XL | $3.836 / hr | ~$2,800 / mo | Dedicated (48 vCPUs) | 192 GB |
| 16XL | $5.12 / hr | ~$3,730 / mo | Dedicated (64 vCPUs) | 256 GB |
There is a catch with Nano instances. When you upgrade from the Free Plan to Pro, your existing project might stay on Nano. Supabase does not auto-upgrade compute sizes because of the downtime incurred. In a paid organization, Nano instances are billed at the same price as Micro Compute ($10 per month), and you cannot launch new Nano instances on paid plans. You should manually upgrade that project to Micro when convenient.
What the spend cap covers
The spend cap is available only on the Pro Plan. Users on the Free Plan are not charged anyway.
On the Pro Plan, the spend cap is turned on by default. It covers 12 specific usage-based metrics:
- Disk Size
- Egress
- Edge Function Invocations
- Logs Ingest
- Logs Query
- Monthly Active Users
- Monthly Active SSO Users
- Monthly Active Third Party Users
- Realtime Messages
- Realtime Peak Connections
- Storage Image Transformations
- Storage Size
When the spend cap is on and you exceed the included quota for one of these 12 items, further usage of that specific item is disallowed until your next billing cycle begins. You are not charged overages. But if you consistently exceed the quota, your services will be restricted according to the Fair Use Policy.
If you turn the spend cap off, your projects continue operating normally after exceeding a quota, and extra usage is billed per unit at the end of the month. You can toggle this setting when creating your Pro organization or later in the Cost Control section of your organization billing page.
The spend cap does not support fine-grained cost control. You cannot set a custom dollar threshold or receive an alert when a single resource reaches a specific dollar amount. To see where you stand, you have to monitor the organization usage page and check the Upcoming Invoice section for estimated cycle costs. If you are comparing this behavior against other managed database providers, read our breakdown of which cloud and AI providers let you set a hard spending cap?.
What the spend cap does not cover
Many developers assume the spend cap ensures their monthly Supabase bill will never exceed $25. It does not.
Supabase excludes usage items that are predictable and explicitly opted into by the user. There are 11 specific items that bypass the spend cap completely:
- Compute
- Branching Compute
- Read Replica Compute
- Custom Domain
- Additionally provisioned Disk IOPS
- Additionally provisioned Disk Throughput
- IPv4 address
- Log Drain Hours
- Log Drain Events
- Multi-Factor Authentication Phone
- Point-in-Time-Recovery
If you enable these features, you will be billed for them even with the spend cap turned on.
Point in Time Recovery costs $100 per month per 7 days of retention. Custom Domains cost a flat fee of $10 per domain per month per project add-on. Advanced Multi-Factor Auth with phone verification costs $75 per month for the first project and $10 per month for each additional project. Branching costs $0.01344 per branch per hour, and Log Drains cost $60 per drain per month plus $0.20 per million events and $0.09 per GB egress. If you spin up extra projects beyond the one included in the base plan, each one adds at least $10 per month to your invoice.
Disk storage, IOPS, and throughput rules
The default storage engine on Supabase is General Purpose SSD (gp3). It supports a maximum disk size of 64 TB. The Pro Plan includes 8 GB of disk space (extra space costs $0.125 per GB), 3,000 IOPS (then $0.024 per IOPS up to 80,000 at 160 GB disk size), and 125 MB/s throughput (then $0.095 per MB/s up to 2,000 MB/s maximum).
If you need higher sustained performance, High Performance SSD (io2) supports up to 60 TB with 80,000 max IOPS at an 80 GB disk size. It costs $0.195 per GB for disk storage and $0.119 per IOPS, while throughput scales automatically with IOPS at no extra charge.
Two disk configuration rules frequently catch teams off guard:
- Provisioning extra IOPS or throughput requires a Large compute instance or above. You cannot attach high-IOPS disk configurations to Micro, Small, or Medium instances.
- After any disk attribute change, there is a cooldown period of approximately four hours where no further adjustments can be made. If you encounter performance throttling during this window, you must wait out the cooldown.
Most importantly, disk size can only be increased. It cannot be decreased. If you scale up your gp3 disk to handle a temporary data import, you will continue paying for that provisioned disk space indefinitely. For an architectural comparison with branching storage engines, see our guide on Neon vs Supabase: which is cheaper for a small app? and our breakdown of how does Neon Postgres pricing work?.
Why your Supabase bill is higher than the base plan
When an invoice arrives higher than the advertised $25, the discrepancy usually stems from unmanaged add-ons or off-cap overages.
First, check your active projects. A Pro organization includes one project, but every extra project adds at least $10 per month. If you spin up two extra test environments and leave them running, that is $20 added immediately.
Second, check your compute size. The included $10 compute credit covers a single Micro instance. If you upgrade to Small ($0.0206 per hour, roughly $15 per month), your net compute charge is $5 after applying the credit. If you run a Medium instance ($0.0822 per hour, roughly $60 per month), you will pay around $50 in compute alone.
Third, look at your add-on selections. Did someone turn on Point in Time Recovery for seven days? That adds $100 per month. Did someone attach a custom domain? That is $10 per month. Did someone enable database branching? That accrues $0.01344 per branch per hour.
Fourth, check if the spend cap was toggled off. When it is off, any spikes in bandwidth or active users spill over into raw meter billing. Edge Functions charge $2 per 1 million invocations beyond the included 2 million. Log Ingestion charges $0.50 per GB past the included 20 GB. Realtime charges $10 per 1,000 connections over 500, and $2.50 per million messages beyond 5 million. Single Sign-On (SAML 2.0) includes 50 MAUs, then bills $0.015 per MAU. Storage Image Transformations include 100 origin images, then cost $5 per 1,000 origin images.
Finally, Supabase applies sales tax, VAT, GST, and other indirect taxes where required by law based on your billing address. If you cancel your subscription, the organization is allocated credits for unused time during the billing month, which can be used for other projects.
Tracking Supabase spending with Costbrake
Supabase does not have an external usage or billing API, which means billing tools cannot pull live hourly meter metrics directly from their platform. Costbrake bridges this gap by reading your active projects, compute instance sizes, disk allocations, and provisioned add-ons directly from your organization settings.
Costbrake monitors spend across 23 cloud, AI, and SaaS platforms, including AWS, Cloudflare, Neon, and Supabase. Because Supabase does not export metered usage via API, Costbrake calculates an estimated baseline from your provisioned compute sizes, active disks, and add-ons using official list rates, while spreading the $10 monthly compute credit evenly across the hours of the billing month.
When you configure Costbrake, you get:
- Spike alerts if an hour costs more than 3x the usual baseline (calculated from the last 7 days) and at least $5 more than normal.
- Budget threshold alerts at 50%, 80%, and 100% of your configured budget.
- Forecast alerts when month-to-date spend plus your recent 72-hour pace would pass your target by month end.
- New-charge alerts whenever a new service or add-on first bills over $1 during the month.
To connect your account, generate a personal access token in the Supabase dashboard with Read access to Organizations, Organization Settings, Projects (account-wide), Add-ons, and Disk Config. You can connect it manually or follow the automated agent setup. Review Costbrake pricing to choose between the Free plan or Pro monitoring.
Questions and answers
Is Supabase completely free?
The Supabase Free Plan costs $0 per month and includes up to 2 active projects, 50,000 monthly active users, 500 MB of database space, and 1 GB of file storage. Free projects pause automatically after 1 week of inactivity, but you can unpause them whenever you need them.
What happens if I exceed a quota with the spend cap enabled?
When the spend cap is on and you exceed the quota for any of the 12 covered items, further usage of that specific resource is blocked until the start of the next billing cycle. You will not receive an overage charge, but services will be restricted under the Fair Use Policy if you consistently exceed the limit.
Why is my Pro plan bill higher than $25?
The base Pro Plan covers your first project and provides a $10 monthly compute credit. Your bill will exceed $25 if you run additional projects (from $10 each), upgrade beyond a Micro compute size, enable unmanaged add-ons like Point in Time Recovery ($100 per month) or Custom Domains ($10 per month), or turn off the spend cap and incur usage overages.
Does the Supabase spend cap prevent compute charges?
No. Compute, branching compute, and read replica compute are explicitly excluded from the spend cap because they are considered predictable resources you opt into. If you scale up your instance or run multiple databases, those hourly charges will be billed regardless of your spend cap status.
Can I set custom budget alerts inside the Supabase dashboard?
The native Supabase Spend Cap does not support fine-grained budgets or threshold notifications. You can only view current spending and projected costs in the Upcoming Invoice section of your billing page, or connect an external monitoring tool like Costbrake to track cost projections.
Sources
Updated