Supabase 免费层能做多大

开源 Firebase 替代:500MB Postgres + 5 万月活 + 1GB 存储的真实边界,附 7 个踩坑。

← 返回教程列表

分类:实测教程 · 最后更新:2026-09-30 · 适用:中文个人开发者

Supabase 常被称作「开源版 Firebase」:它在一套界面里给您 Postgres 数据库 + 用户认证(Auth)+ 对象存储 + 实时订阅 + Edge Functions。对想做小产品后端、又不想自己拼 MySQL+Redis+登录系统的个人开发者,免费层几乎是「开箱即用」的最优解——注册即用、不绑卡也能跑起来。

本篇是实测向教程,重点在「免费层到底给多少」和「哪里会踩坑」。注册网址:supabase.com。支持用 GitHub 账号直接登录,无需信用卡。

一、免费层额度清单(先看清边界)

Supabase 的免费套餐叫 Free plan,下面这些额度是 2026 年实测到的量级,做产品前心里先有数:

资源免费层额度说明
数据库(Postgres)500 MB含数据 + 索引,超出需升级
对象存储(Storage)1 GB放图片 / 文件,另有带宽限制
出口带宽2 GB / 月用户下载产生的流量,图片站很快超标
Auth 月活用户(MAU)50,000这是 Supabase 最大卖点,5 万月活前不花钱
Edge Functions500,000 次 / 月跑轻量后端函数够用
项目数2 个超出需删除或升级;非活跃项目会被自动暂停
数据库连接共享算力 + 并发上限Serverless 必须走连接池,详见踩坑 5
⚠️ 踩坑 1 — 免费层项目会「休眠」。一个项目 7 天无活跃请求会被自动暂停(paused),再次访问时需要几秒冷启动唤醒。低频次的小工具尤其明显:用户第一次打开会卡一下。对策:用外部定时请求(如免费 Cron 或 UptimeRobot)保活,或接受首次延迟。

二、适合用它做什么

三、开通全流程(实测步骤)

  1. 注册 / 登录。打开 supabase.com,点 Sign Up,可用 GitHub 账号一键登录,无需信用卡。
  2. 新建组织(Organization)。首次会要求建一个组织,名字随意(如您的昵称或项目名),区域选「离用户近」的,如 Singapore、Tokyo、Frankfurt。
  3. 新建项目(Project)。填项目名、设一个数据库密码(务必记下),选区域,套餐保持 Free。点 Create,初始化约 30–60 秒。
  4. 拿到密钥。进项目后左侧 Project Settings → API,会看到:
    • Project URL(形如 https://xxxx.supabase.co)
    • anon public key(浏览器端用,可公开)
    • service_role key(服务端用,绝不能暴露到前端)
  5. 拿数据库连接串。同页 Connection string 里有两种:Direct connection(端口 5432)和 Connection pooling(端口 6543,走 pgbouncer)。Serverless 环境务必用 pooler(详见踩坑 5)。

四、最小可跑示例

先在 SQL Editor 建一张表:

create table posts (
  id bigint generated always as identity primary key,
  title text,
  created_at timestamptz default now()
);
-- 别忘了开启行级安全(见踩坑 6)
alter table posts enable row level security;

前端用官方 JS 客户端读写(只放 anon key):

import { createClient } from '@supabase/supabase-js'
const supabase = createClient(
  'https://YOUR-PROJECT.supabase.co',
  'YOUR-ANON-KEY'   // 浏览器端只用 anon key
)
const { data, error } = await supabase
  .from('posts').select('*')

五、7 个真实踩坑提醒

⚠️ 踩坑 2 — 500MB 数据库上限。数据 + 索引都算,日志表、附件元数据也会占空间。小产品随手用没事,但别拿它当网盘元数据仓。超了只能升级付费计划。
⚠️ 踩坑 3 — Storage 1GB + 带宽 2GB/月。放用户上传图片、或做图床,很容易超标。图片类业务建议:小图走 Supabase,大文件 / 高频下载转 Cloudflare R2(免出口流量费,本站有专篇教程)。
⚠️ 踩坑 4 — 仅 2 个免费项目。想多开几个试验田?不行。而且不活跃项目会被自动暂停释放资源。规划好:一个正式、一个折腾足矣。
⚠️ 踩坑 5 — 连接串用错会「连接数爆炸」。在 Vercel / Cloudflare Pages 这类 Serverless 环境,每次调用都可能新建连接;若用 Direct(5432),免费层并发连接很快耗尽、请求报错。正确做法:用 Connection pooling(6543) 那条 URL,并在连接参数加 ?pgbouncer=true。
⚠️ 踩坑 6 — anon key 是公开的,必须开 RLS。前端代码里能看到 anon key,若不给表开「行级安全(Row Level Security)」,任何人都能读改写您的全部数据,等于裸奔。建表后务必 enable row level security 并写好策略。
⚠️ 踩坑 7 — 删除项目有 7 天宽限期。手滑删了项目别慌,删除后进入暂停态、7 天内可在控制台恢复;超过才真正销毁。同样,改套餐、清数据前先备份。
💡 组合拳:Supabase(数据 + 登录)+ Cloudflare Pages(前端托管,本站即此)+ R2(大文件存储)= 一个几乎零成本的全栈小产品底座,正好对应本站收录的免费服务矩阵。

六、什么时候该升级付费

出现下面任一信号,说明免费层到顶了:数据库快满、需要更多项目、受不了休眠冷启动、要自定义邮件域名 / SAML 登录 / 审计日志、或团队要协作。届时 Supabase 的 Pro 计划按需升级即可,迁移成本很低(数据都在您自己的 Postgres 里)。

← 返回教程列表