Firebase的计费结构一直是新用户最容易困惑的地方。官方文档里一堆术语,什么Spark、Blaze、Sandbox,看完反而更糊涂了。这篇文章就把两个核心计划掰开揉碎讲清楚,包括Spark计划到底给了多少免费额度、Blaze计划多花了钱能换来什么、以及升级前必须知道的注意事项,帮你做出合适的选择。

Spark计划:免费额度到底有多少
Spark是Firebase的免费层,不需要绑定信用卡就能使用,这一点对个人开发者和学生非常友好。它并不是简单的功能阉割版,而是给每个核心产品都设定了明确的配额上限。以Cloud Firestore为例,Spark计划每天提供约50000次文档读取、20000次写入和20000次删除,同时实时监听的数据传输也有50GiB的上限。对于一个小型应用或者原型验证项目来说,这个量级基本够用。
Hosting部分免费提供10GB的存储空间和每月360MB的数据传输量,还附带SSL证书和自定义域名支持,这意味着你完全可以零成本上线一个带HTTPS的静态网站。Cloud Storage的免费额度是5GB存储加每月1GB的下行流量。Authentication对大多数登录方式免费,只有电话短信验证这一项会消耗短信发送费用,在Spark计划下需要特别注意,因为短信验证实际上依赖付费能力。
不过Spark的限制也很硬:Cloud Functions无法调用外部网络(只能访问Google自家服务)、Cloud Storage不支持下载文件、无法使用BigQuery导出、超过配额的服务会直接停止响应而不是降速运行。如果你的函数需要请求第三方API,比如调用OpenAI的接口或者发送 webhook到外部服务器,Spark计划直接就会报错,这是升级Blaze最常见的原因。
Blaze计划:付费之后解锁了什么
Blaze是按量付费模式,所有资源没有固定上限,用多少算多少。但很多人不知道的是,Blaze仍然包含了和Spark一样的免费额度,也就是说升级之后你的用量如果落在免费额度内,账单依然是零。这就是所谓的免费层延续策略,升级本身不产生费用,只有超出免费额度的部分才计费。
除了弹性配额,Blaze解锁的关键能力包括:Cloud Functions的完整出站网络访问权限、Cloud Storage的文件下载功能、更高的Firestore速率限制(每秒写入不再被限制在固定值)、BigQuery集成以及Firebase Extensions的完整支持。对于需要和第三方服务集成的应用,出站网络权限几乎是必选项。
计费方式上,Blaze采用阶梯定价。以Firestore为例,超过免费额度后的读取价格约为每10万次0.06美元,写入约为每10万次0.18美元。Hosting超出免费额度后按GB计费。具体费率建议直接查看官方定价页面,因为价格会不定期调整。下面的代码展示了一个典型的Blaze项目预算配置示例:
# 使用Firebase CLI查看当前项目关联的计划 firebase projects:list # 设置预算告警(需要在Google Cloud控制台操作) # 1. 进入Billing -> Budgets & alerts # 2. 设置月度预算上限,例如10美元 # 3. 配置告警阈值:50%、90%、100%时发送邮件通知
如何判断该不该升级
判断标准其实很简单,从三个维度看。第一是功能维度:如果你的Cloud Functions需要访问外部API、需要下载Storage文件、或者需要用BigQuery做数据分析,那就必须升级,没有变通办法。第二是流量维度:日活超过几百人、Firestore读取每天逼近5万次,就该考虑升级了,因为Spark超限后服务会直接失败,用户体验会很糟糕。第三是可靠性维度:付费计划享有更高优先级的技术支持和服务等级协议。
有一个常见的误解是认为升级Blaze后就会产生费用。实际上大量中小型项目升级后每月账单仍然是零或者几美元以内,因为免费额度已经覆盖了大部分用量。真正花钱的往往是突发的流量高峰或者失控的循环写入,所以升级后第一件事应该是设置预算告警,并且给Cloud Functions加上并发和超时限制。
还有一点值得注意:从Blaze降回Spark在部分情况下是不可逆的。官方文档明确说明,一旦项目使用了Blaze特有的功能,降级可能导致服务中断。因此建议的做法是,先用Spark把项目开发完,等到确实需要外部网络或更高配额时再升级,而不是一开始就盲目升级到Blaze。
升级前的几个避坑建议
第一,务必在Google Cloud控制台设置预算告警。Blaze没有硬性消费上限,一次代码里的无限循环写入可能一夜之间产生几十美元的账单。预算告警虽然不能自动停机,但至少能让你及时发现异常。第二,给Firestore的查询加上limit约束,避免一次查询拖回整个集合。第三,定期查看Usage标签页,观察各产品的用量趋势,很多费用异常都能在账单出来之前被发现。
第二,注意Firebase和Google Cloud的账单是打通的。升级Blaze需要绑定一个Cloud Billing账号,如果你在同一个账号下还跑着GCE虚拟机之类的资源,所有费用会合并出账,做成本核算时要把这部分考虑进去。第三,团队协作项目建议由组织管理员统一管理Billing账号,避免个人信用卡绑定后离职交接的麻烦。
总结一下:纯原型和学习项目用Spark完全够用;只要涉及外部网络请求、文件下载或者流量增长,就升级Blaze并配好预算告警。升级的边际成本很低,真正需要防的是失控的用量,而不是计划本身的价格。
Firebase Spark计划Blaze计划Firebase收费修改时间:2026-09-07 20:54:54