← Back to Supabase Bill Estimator

How to reduce your Supabase bill: levers ranked by dollar impact

A Supabase Pro invoice is a $25 organization fee plus compute for each project, then metered overage on database disk, egress, file storage, monthly active users, Edge Function invocations and Realtime messages. The useful question is not "how do I spend less" but "which line, changed by how much, saves the most". That is arithmetic you can do before the invoice, from the numbers on your dashboard's Usage page.

1. Rightsize compute

Every project beyond the first adds an instance, and many sit on a larger size than their CPU and memory graphs justify. Check the observability charts for a week; if CPU stays low, step down a size. Compute is billed per hour, so the change takes effect immediately.

2. Trim egress

Egress beyond the included 250 GB is billed per GB. Put a CDN or cache headers in front of storage files, select only the columns you render instead of select *, enable compression and serve resized images. If 30% of 900 GB goes away, you stop paying for 200 GB of overage.

3. Shrink the database

Disk is billed per GB above the included 8 GB and it does not shrink on its own. Archive old rows, drop unused indexes and vacuum table bloat. Disk is the one line that only goes down if you act.

4. Clean up storage and cache Edge Functions

Orphaned uploads and duplicate objects pay rent forever; set expiry on temporary files. For Edge Functions, cache responses and batch calls so fewer invocations run.

5. Batch Realtime and block fake sign-ups

Realtime messages are billed per million: batch updates and broadcast less often. Monthly active users beyond the included 100,000 cost per thousand, so bot and throwaway sign-ups are a direct cost; CAPTCHA and email verification remove them.

6. Consolidate organizations

Each Pro organization carries its own fixed fee. Small side projects can often live in one organization.

Run it on your numbers

Enter your usage in the estimator or from the CLI, and gate a budget in CI:

node cli.mjs estimate usage.csv --budget 500

What this cannot see

Plans, regions, spend cap settings, enterprise contracts and price changes are outside it. Prices here are approximate Pro-plan list prices and editable. The estimate is arithmetic on your inputs, never a bill reader.

Common questions

Which Supabase costs usually dominate?

For most small Pro teams it is compute for each additional project, then egress and database disk. Estimate your own mix with the estimator rather than assuming, because a storage-heavy app and a chatty Realtime app have different top levers.

Does the compute credit cover everything?

The bundled credit offsets compute only, not the organization fee or other usage. The estimator models it as the compute line's allowance, and you can edit every allowance.

Do the savings add up?

No. Levers can act on overlapping usage, so each is calculated alone and the list is a ranking, not a plan total.