TL;DR: Yes. Supabase's Free plan costs $0 with no time limit, for 2 active projects, each with a 500 MB database, 5 GB of egress, 1 GB of file storage and 50,000 monthly active users (Supabase pricing). The catch is a pause after a week without database activity, and the next step is Pro at $25 a month.
- The pause: a free project pauses after about a week without database activity, and your API stops answering until you restore it.
- The 500 MB wall: past 500 MB the database goes read-only and writes fail.
- No backups: nothing restores a dropped table unless you saved a dump yourself.
- No surprise bills: over egress, users or storage, Supabase restricts your project instead of charging you.
- The next step: Pro at $25 a month, plus about $10 for each extra project.
- If you only need Postgres: a $7 server holds eight times the RAM with no pause, and Ployz, which I build, deploys your app and Postgres onto it for free.
Supabase is a hosted Postgres database with auth, file storage, realtime and an auto-generated API built around it. Its Free plan gives you all of that at $0, on small shared compute, with limits that decide when you start paying.
| Supabase Free | Supabase Pro | |
|---|---|---|
| Price | $0, no time limit | $25/mo, plus about $10 per extra project |
| Active projects | 2 | unlimited |
| Database | 500 MB, then read-only | 8 GB, then $0.125/GB |
| Egress | 5 GB | 250 GB, then $0.09/GB |
| Monthly active users | 50,000 | 100,000, then $0.00325 each |
| File storage | 1 GB | 100 GB, then $0.0213/GB |
| Pauses when idle | after 1 week | never |
| Backups | none | daily, kept 7 days |
Source: Supabase pricing. Which plan do you need? Free for a prototype or demo under 500 MB; Pro once anyone depends on the app staying up or on its data.
Would your project fit Supabase's free tier?
Pick the app closest to yours. The calculator checks it against the Free plan's limits, then prices it on Supabase Pro and on a rented server. Database size is the limit most projects hit first, and a staging copy of your app counts as a second project.
- Fits the Free plan?
- Yes, if you can live with the pause and no backups
- Supabase compute you'd need on Pro
- Micro per project
- Supabase Pro$25/mo
$25 plan; the $10 credit covers one Micro project; each extra project adds ~$10 of Micro compute; disk over 8 GB at $0.125/GB; egress over 250 GB at $0.09/GB; MAU over 100,000 at $0.00325. File storage under 100 GB assumed.
- Your own server + Ployz$7/mo
Hetzner CX23 ($6.49, 4 GB RAM, 40 GB disk) or CX33 ($9.99, 8 GB, 80 GB) past 10 GB, plus $0.60 IPv4. Several projects share one server. Auth runs in your app, so no per-user fee. Excludes off-site backup storage.
If the verdict is no, the Pro row is your floor, not your bill. The Supabase pricing breakdown covers what happens past Micro compute.
What does the Supabase free tier include?
Beyond the table above, the Free plan includes 5 GB of cached egress, 500,000 Edge Function invocations and 2 million Realtime messages. It keeps logs for one day and offers community support only.
| Item | Free | Pro ($25/mo) |
|---|---|---|
| Compute | Nano: shared CPU, up to 0.5 GB RAM | Micro: shared CPU, 1 GB RAM ($10 credit covers one) |
| Cached egress | 5 GB | 250 GB, then $0.03/GB |
| Max file upload | 50 MB | 500 GB |
| Edge Function invocations | 500,000 | 2 million |
| Realtime connections / messages | 200 / 2 million | 500 / 5 million |
| API and database logs | 1 day | 7 days |
Sources: pricing page, compute and disk, egress, MAU, storage, disk. Nano also caps you at 60 direct database connections (compute docs), so it's slower than Pro's Micro, not only smaller. Supabase also says Free plan compute is "subject to change" (compute billing).
How many free projects do you get on Supabase?
You get two active free projects. Paused projects don't count, so you can keep old ones paused and start new ones (billing docs). A third active project means Pro.
People trip on this without noticing. A production project plus a staging project already fills both free slots, and a side project makes three. On Pro, the $10 compute credit covers one Micro project, so three Micro projects cost $25 plus $20 of compute: $45 a month before any usage (compute billing).
Does Supabase pause free projects?
Yes. Supabase "pauses Free Plan projects that show low activity over a 7-day period" (project pausing docs). You get a warning email about a week before and a confirmation once it's paused. Supabase says a few database requests a day are usually enough to stay active. Pro projects never pause.
- Your API stops answering. A paused project isn't running, so your app breaks until you restore it from the dashboard.
- Restoring brings your data back. The pausing docs say you have up to a year to restore. An older changelog entry says 90 days, so I wouldn't count on the longer window.
- Paused projects are free and don't use a slot (billing FAQ).
The pause is why I wouldn't run anything people rely on on the Free plan. A portfolio demo nobody opens for eight days goes offline right before the one recruiter clicks it. A scheduled job that queries the database every day keeps it awake, and Supabase counts that as activity. But then you're running cron somewhere to keep a free database alive.
What happens when you hit the 500 MB database limit?
Your project goes read-only. Supabase's docs say "Free Plan projects enter read-only mode when your database size exceeds 500 MB", and writes then fail with errors like cannot execute INSERT in a read-only transaction (database size docs). Reads keep working. Writes come back once usage drops below the limit, which means deleting data or upgrading.
To get out without upgrading, the same docs give the steps in the SQL editor: switch the session to read-write, delete data, run vacuum to reclaim the space, then turn default read-only off. Free projects have 1 GB of disk, but the 500 MB quota is what triggers read-only mode.
The 500 MB counts everything Postgres stores: tables, indexes, and the auth schema where Supabase Auth keeps your users. On a table with a few indexes, the indexes can take as much space as the data.
What happens when you go over egress, users or storage?
You don't get charged. Supabase emails you and starts a grace period (egress docs). If you keep going over, its fair use policy allows restrictions: pausing projects, switching databases to read-only, blocking new projects, or answering every API request with a 402 status (billing FAQ).
| Limit you hit | What Supabase does on Free | How it clears |
|---|---|---|
| Database over 500 MB | Read-only mode right away | Delete data and vacuum, or upgrade |
| Egress over 5 GB | Email, grace period, then possible restrictions | Next billing cycle, upgrading, or (on Pro) disabling the spend cap |
| MAU over 50,000 | Email, grace period, then possible restrictions | Next billing cycle or upgrade |
| Storage over 1 GB | Email, grace period, then possible restrictions | Next billing cycle or upgrade |
| A week without activity | Project paused | Restore from the dashboard |
| A third active project | Can't launch it | Pause one, or upgrade |
Sources: database size, egress, MAU, storage, billing FAQ. Restrictions "are lifted once your quota refills at the start of the next billing cycle" (billing FAQ). There's no surprise bill, but your app can stop working mid-month and you find out from your users.
Egress is the one to watch. Every row your API returns counts, along with auth responses, file downloads, Edge Function output and Realtime messages. 5 GB a month is about 170 MB a day, so an endpoint that returns 50 KB of JSON uses it up at about 3,300 calls a day.
Does the Supabase free tier include backups?
No. Supabase backs up Pro, Team and Enterprise projects daily, and tells Free plan users to "regularly export their data using the Supabase CLI db dump command and maintain off-site backups" (backup docs).
The fix is cheap. Run supabase db dump (or pg_dump against your connection string) on a schedule from a machine you control, and copy the file somewhere else:
# nightly, from any machine with cron and the Supabase CLI
supabase db dump --db-url "$DATABASE_URL" -f "backup-$(date -u +%F).sql"
Then restore it once into a scratch database to prove it works. A backup you never restored is a guess.
When do you need Supabase Pro?
You need Pro at $25 a month as soon as any one of these is true:
- Your database passes 500 MB. Writes fail, so this one isn't optional.
- You need a third active project. You can't launch it, but you can pause an old one instead.
- You go over egress, users or storage every month. You get a grace period, but going over every month means you're on Pro whether you upgrade or not.
- Your app can't go offline after a quiet week. If anyone depends on it, the pause is reason enough.
- Losing a day of data would hurt. Pro's daily backups with 7 days of retention are the other half of the $25.
For a real product with paying users, the last two usually decide it first. Pro is $25 for the first project and goes up with every extra project, compute step and GB of disk past 8. A 40 GB database on Large compute with 600 GB of egress is about $160 a month, worked through in the Supabase pricing breakdown.
Is Supabase's free tier good enough for production?
For a side project, a prototype or a hackathon, yes. For anything with paying users, no: no backups, a pause after a quiet week, 0.5 GB of RAM, and read-only the day the database passes 500 MB. Any one of those is fine for a demo. Together they're a reason to pay for Pro or run Postgres yourself.
I think the Free plan is one of the better free tiers around. You get real Postgres, auth for 50,000 users, and no surprise bills. The trouble is the step after it. Free to $25 is reasonable. $25 to $160 when the database grows is where I'd stop and price a server.
What does the same app cost on your own server?
A 4 GB server costs about $7 a month in Europe: a Hetzner CX23 is $6.49 plus $0.60 for IPv4, after Hetzner's 15 June 2026 price adjustment. That's eight times the RAM of Supabase's free Nano, with no pause, no project limit and no per-user fee. The CX23 is Germany and Finland only; in the US, a Netcup VPS 500 in Manassas is the cheap option.
| Supabase Free | Supabase Pro | Hetzner CX23 | Netcup VPS 500 | |
|---|---|---|---|---|
| Price | $0 | from $25/mo | $6.49 + $0.60 IPv4 | €8.26/mo incl. VAT (12-month term) |
| RAM | up to 0.5 GB | 1 GB (Micro) | 4 GB | 4 GB |
| Database space | 500 MB | 8 GB, then $0.125/GB | 40 GB disk | 64 GB disk |
| Projects | 2 active | each adds compute | as many as fit | as many as fit |
| Pauses | after 1 week | never | never | never |
| Backups | none | daily, 7 days | yours to run | yours to run |
| Auth, storage, REST API | included | included | your app does it | your app does it |
Sources: Supabase pricing, Hetzner price adjustment, netcup VPS plans. The real gap is everything Supabase builds around Postgres. If you use Supabase Auth, Storage, Realtime or the auto-generated API, a plain server doesn't replace them; your app has to. If you use Supabase as a Postgres URL behind an ORM, a server replaces it completely.
I've seen where a cheap start ends. Railway began small for me and grew to $500+ a month, mostly from one busy database. Today one €80 dedicated server runs everything I have. The same trade on other platforms is in the hidden costs of PaaS, Render's free tier and Neon vs Supabase.
Should you stay on Supabase Free or move?
Stay on Supabase Free if it's a prototype, demo or learning project, the database is comfortably under 500 MB, you have two projects or fewer, and you'll run a db dump on a schedule.
Pick Supabase Pro if you've hit a limit and rely on Supabase Auth, Storage or Realtime, or you want daily backups without running anything.
Pick your own server if you use Supabase mostly as a Postgres database and Pro plus extra projects is heading past $40 a month, or you want several projects and a staging copy on one fixed-price machine.
Where Ployz fits
If you use Supabase as a Postgres database, Ployz gives you the same thing on a server you rent, plus the app in front of it, free on your own servers.
ployz up --server root@your-server
That installs Ployz on the server over SSH, builds your app and gives it an https address. Then:
- One-click PostgreSQL 18 next to your app, with a 5 GB volume by default and a generated password. Your app gets
DATABASE_URLthrough a reference like${{ postgres.DATABASE_URL }}. - No pause and no project limit. Projects and preview environments are unlimited on your own servers.
- Staging without a second bill. Branch production into
stagingwith its own services and empty volumes, then save changes back. - Push to deploy. Push to GitHub and Ployz builds and deploys, with no Dockerfile needed for most languages.
What it doesn't replace: Supabase Auth, Storage, Realtime and the auto-generated API. For backups, Ployz keeps a read-only mirror of the Postgres volume on another of your servers and syncs it when you ask. If the first server dies, you restore from the mirror. Postgres has no public address; connect from your laptop with ployz service port-forward.
Run your app and Postgres on your own server with Ployz, free.
FAQ
Is the Supabase free tier free forever?
Yes, as far as Supabase says: the Free plan has no trial period or end date (pricing). What ends is an idle project, which pauses after a week without activity and can be restored for up to a year.
Is Supabase free to self-host?
Yes. Supabase's pricing FAQ says you can self-host it for free with its Docker setup (pricing). A self-hosted stack runs one project and has no managed backups, branching or Management API, and you run the updates, security and backups yourself (self-hosting docs).
Does Supabase charge you if you go over the free tier?
No. On the Free plan Supabase emails you, gives a grace period, then may restrict the project. You only pay if you upgrade to Pro.
How do I stop a Supabase project from pausing?
Keep a few database requests a day going, for example a daily scheduled query, or upgrade to Pro, where projects never pause.
How much RAM does the Supabase free tier have?
Up to 0.5 GB, on a shared-CPU Nano instance with 60 direct database connections. Pro's Micro has 1 GB.
How I checked
I checked every price and limit on 2026-10-08 against Supabase's own pricing page and docs, linked next to each number. Server prices come from Hetzner's and Netcup's own price pages, checked the same day. I didn't test what happens at each limit myself; the behaviour is as Supabase documents it.
I build Ployz, so weigh the "Where Ployz fits" section with that in mind. The Supabase limits don't depend on it.
Run Postgres and your app on a server you rent with Ployz, free: get started.