Sanity vs Payload CMS 定价 2026:真实规模成本
我在 Sanity 和 Payload CMS 之间迁移项目的次数已经多到我不想承认。每次,对话都以同样的方式开始:"哪个更便宜?"而每次,答案都是同样不令人满意的真相 — 这取决于你实际在构建什么、你的团队如何运作,以及你的文档最终存放在哪里。
这些平台的标价几乎告诉不了你什么。Sanity 的免费套餐看起来很慷慨,直到你在发布中途触及 API 调用限制。Payload 看起来永久免费,直到你意识到你需要托管、备份和懂得如何保持 Node.js 服务器健康的人。我见过团队因为只关注订阅成本而让估计的 CMS 预算超支 3-4 倍。
这篇文章是我在做出这些决定时希望存在的定价分析。我们涉及真实数字、真实场景和真实成本 — 基础设施、开发人员时间、API 超额费用、全部内容。
目录

快速平台概览
在我们深入讨论成本之前,让我们确保我们在比较相同的东西。
Sanity 是一个托管的、API 优先的 CMS。你的内容存放在 Sanity 的基础设施上。你在 JavaScript/TypeScript 中定义模式,Sanity 处理存储、CDN、编辑界面(Sanity Studio)和实时协作。你根据使用情况付费 — 文档、API 调用、数据集和用户。
Payload CMS 是一个自托管的、开源的 CMS,基于 Node.js 构建。从 Payload 3.0(自 2024 年末以来一直稳定)开始,它运行在 Next.js 上,并将数据存储在 MongoDB 或 PostgreSQL 中。你拥有基础设施。软件本身是免费的,但你负责托管、数据库、文件存储和保持一切运行。
它们都是 TypeScript 优先的,都非常适合 headless 设置,都与 Next.js 和 Astro 等框架完美配合。根本区别在于托管模型,这正是成本故事变得有趣的地方。
定价模型解释
Sanity 的定价(2026)
Sanity 在 2025 年末更新了他们的定价结构,2026 年的情况如下:
| 套餐 | 月成本 | 文档 | API 请求(CDN) | API 请求(API) | 数据集 | 用户 | 带宽 | |------|-------------|-----------|-------------------|-------------------|----------|-------|-----------|----------| | Free | $0 | 10,000 | 500K/月 | 100K/月 | 2 | 3 | 10GB | | Growth | $15/用户/月 | 100,000 | 2.5M/月 | 500K/月 | 4 | 无限 | 100GB | | Enterprise | 定制 | 无限 | 定制 | 定制 | 定制 | 无限 | 定制 |
Growth 计划的超额定价:
- 额外 API CDN 请求:$1 每 100K
- 额外 API 请求:$5 每 100K
- 额外文档:$3 每 10K
- 额外带宽:$1 每 GB
Payload CMS 定价(2026)
Payload 本身采用 MIT 许可证。免费。永久。但你需要在某个地方运行它。
Payload Cloud(他们的托管选项)在 2024 年推出,已经相当成熟:
| 套餐 | 月成本 | 存储 | 带宽 | S3 存储 | 团队成员 |
|---|---|---|---|---|---|
| Free | $0 | 512MB 数据库 | 2GB | 2GB | 1 |
| Pro | $49/月 | 5GB 数据库 | 50GB | 25GB | 5 |
| Enterprise | 定制 | 定制 | 定制 | 定制 | 无限 |
或者自托管。典型情况如下:
| 组件 | 预算选项 | 生产选项 |
|---|---|---|
| 应用服务器(Railway/Render) | $5-7/月 | $20-50/月 |
| 数据库(Supabase/Railway/Atlas) | $0-15/月 | $25-57/月 |
| 文件存储(S3/Cloudflare R2) | $1-3/月 | $5-20/月 |
| CDN(Cloudflare) | $0 | $0-20/月 |
| 备份 | $0-5/月 | $5-15/月 |
| 总计 | $6-30/月 | $55-162/月 |
500 个文档成本分析
这是你典型的小型企业网站、营销网站或博客。也许 50 个页面、200 篇博文、一些可重用的内容块和少量作者资料。
Sanity 在 500 个文档
免费套餐轻松处理这种情况。500 个文档远低于 10,000 的限制。真正的问题是 API 调用。
一个有 500 个文档且月浏览量约 10,000 的网站(使用 ISR 或 SSG with Next.js)将生成大约:
- 50K-150K CDN API 请求/月(取决于缓存策略)
- 5K-20K 常规 API 请求/月(Studio 使用、webhooks、预览)
这舒适地适合免费套餐。但这里有个陷阱 — 你只能有 3 个用户。如果你有 4 个以上的内容团队,你就在 Growth 上,最少 $15/用户/月。
500 个文档的现实年成本:
- 独立开发人员或小团队(≤3):$0/年
- 5 人团队:$900/年($15 × 5 × 12)
- 10 人团队:$1,800/年
Payload 在 500 个文档
500 个文档在任何数据库上都几乎不会显示 — 可能只有 50-200MB 的数据,取决于你的模式复杂性。
**Payload Cloud 免费版:**可行,但 512MB 数据库和 1 个团队成员很紧张。你可能会很快超出范围。
**自托管预算:**Railway 入门实例($5/月)+ 免费 MongoDB Atlas 层(512MB)+ Cloudflare R2 文件存储让你以约 $7/月运行。
Payload Cloud Pro:$49/月为你提供充足的空间,你不用担心运维。
500 个文档的现实年成本:
- 自托管预算:$84-180/年
- Payload Cloud Pro:$588/年
- 自托管生产:$660-960/年
500 个文档时的结论
如果你有 3 个或更少的编辑,Sanity 的免费套餐很难被击败 — 它字面上是 $0。一旦你的团队增长超过 3 人,预算中的 Payload 自托管成为更便宜的路径。交叉点出现在大约 4 个团队成员时。

3,000 个文档成本分析
现在我们在谈论中等规模的内容运营。想象一个有几百个产品的电子商务目录、多年档案的媒体网站或有大量文档的 SaaS 公司。
Sanity 在 3,000 个文档
仍然低于免费套餐的 10K 文档限制。现在问题牢固地围绕 API 请求和团队规模。
一个有 3,000 个文档且月浏览量 50K-100K 的网站将生成:
- 300K-800K CDN API 请求/月
- 30K-80K API 请求/月
有好的缓存策略(你绝对应该有一个 — ISR with Next.js 或 build-time fetching with Astro),你可以留在免费套餐限制内。但很紧。一篇病毒式博文就会让你进入超额地带。
现实场景:6 个编辑、Growth 计划、中等流量。
3,000 个文档的现实年成本:
- 免费套餐(≤3 用户,谨慎使用 API 调用):$0-120/年(偶尔超额)
- Growth 计划,6 个用户:$1,080/年 + 潜在超额费用
- Growth 计划,10 个用户:$1,800/年 + 潜在超额费用
- Growth 计划,6 个用户 + 持续超额:$1,440-2,160/年
Payload 在 3,000 个文档
PostgreSQL 或 MongoDB 中的 3,000 个文档是微不足道的。我们在讨论可能 50-200MB 的数据,取决于你的模式复杂性。数据库不会费力。
但在这个规模,你需要可靠的托管。停机意味着你的编辑无法工作,你的前端无法重建。
自托管生产设置:
- Railway 或 Render Pro:$20-25/月
- PostgreSQL(Railway 或 Supabase Pro):$25/月
- Cloudflare R2 + CDN:$3-5/月
- 自动备份:$5-10/月
- 总计:约 $53-65/月
**Payload Cloud Pro:**仍然是 $49/月。在这个文档计数,你在限制内。
3,000 个文档的现实年成本:
- Payload Cloud Pro:$588/年
- 自托管生产:$636-780/年
3,000 个文档时的结论
Payload 在这里对超过 3 人的团队明确开始赢。在 Sanity Growth 上 6 个用户,你至少支付 $1,080/年,而 Payload Cloud 运行 $588/年,与团队规模无关(最多 5 个用户;更大的团队可能需要 Pro+)。经济学在中等规模转向 Payload。
10,000 个文档成本分析
这是一个严肃的内容运营。大型电子商务目录、多语言站点、新闻出版商或企业知识库。在这个规模,事情变得真实。
Sanity 在 10,000 个文档
你就在免费套餐的限制。再多一个文档,你就需要 Growth。老实说 — 如果你有 10,000 个文档,你应该在 Growth 上。免费套餐 API 限制无法处理流量模式。
一个 10K 文档网站月浏览量 200K-500K:
- 1M-3M CDN API 请求/月
- 100K-300K API 请求/月
- 10-50GB 带宽/月
在 Growth 上有 10 个用户,你可能在 API 请求上触及超额。让我们计算:
基础:10 个用户 × $15/月 = $150/月
API CDN 超额:(2.5M - 2.5M 包含) = 如果不超过为 $0,
但现实的 3M/月 = 500K 超额 × $1/100K = $5/月
API 超额:(250K - 500K 包含) = 大多数月份可能为 $0,
但尖峰月份在 600K = 100K 超额 × $5/100K = $5/月
月均:$150 + $5 + $3 = 约 $158/月
但这很乐观。我见过项目因为配置不当的预览模式或一个重新获取所有内容的构建管道而快速消耗 API 调用。我们的一个客户在一个 4K 文档网站上触及 5M API 调用/月,因为他们的 Next.js 实现每次请求都在获取,而不是正确使用 ISR。
10,000 个文档的现实年成本:
- Growth,5 个用户,优化得很好:$1,200-1,500/年
- Growth,10 个用户,中等超额:$1,900-2,400/年
- Growth,15 个用户,常规超额:$3,000-4,200/年
Payload 在 10,000 个文档
PostgreSQL 中的 10K 文档仍然很小 — 可能 500MB-2GB 的数据,取决于内容丰富度。但在这个规模,你需要适当的基础设施。
自托管生产设置:
- 应用服务器(2 个实例用于冗余):$40-80/月
- PostgreSQL(托管,带副本):$50-100/月
- S3/R2 存储(有大量媒体):$10-30/月
- CDN:$0-20/月
- 监控(Datadog/Sentry):$0-30/月
- 备份 + 灾难恢复:$10-20/月
- 总计:约 $110-280/月
Payload Cloud Pro:$49/月仍然适用于数据库大小,但你可能在带宽限制时用力推动,有 10K 文档和繁重的编辑使用。现实地讲,你可能需要他们的 Enterprise 套餐或补充存储。
10,000 个文档的现实年成本:
- Payload Cloud Pro(如果在限制内):$588-$828/年
- 自托管生产:$1,320-3,360/年
- 自托管企业级:$2,400-5,000/年
10,000 个文档时的结论
这取决于你的运维能力。Payload Cloud Pro 比 Sanity Growth 在这个规模显著便宜 — 但如果你在自托管 Payload 并有适当的冗余和监控,成本会汇聚。对于 10+ 人的团队,Sanity 的每用户定价开始真正伤害。
没人提及的隐藏成本
Sanity 隐藏成本
**GROQ 查询复杂性。**Sanity 为 API 调用收费,不是查询复杂性。但一个返回 500 个文档而你只需要 10 个的非优化 GROQ 查询会浪费你的 CDN 配额。我调试过生产网站,其中一个页面进行了 12 个 GROQ 调用。合并你的查询。
**资产存储。**Sanity 托管你的图像和文件。免费套餐包括 500K 资产和 10GB。Growth 包括更多,但大型媒体库可以将你推入超额。一个摄影作品集网站在几周内就消耗了我的存储。
**Studio 定制时间。**Sanity Studio 令人难以置信地可定制,这很好,但也意味着你花时间构建自定义输入、预览窗格和工作流。预算 20-40 小时用于一个精心定制的 Studio 设置。
**供应商锁定迁移成本。**如果你曾离开 Sanity,你需要导出你的内容(他们通过导出 API 支持这一点,值得称赞)并转换它。预算 $2,000-5,000 用于离开 Sanity 的内容迁移,取决于复杂性。
Payload 隐藏成本
**DevOps 开销。**有人必须保持服务器运行。更新、安全补丁、当你升级 Payload 版本时的数据库迁移、SSL 证书和凌晨 2 点的警报当某个东西坏掉。如果你在没有 DevOps 经验的小团队中,这是真实的钱 — 要么时间,要么雇用。
# 这看起来很简单,但 Payload 主要版本升级
# 可能需要数据库迁移和测试
npm update @payloadcms/core
npx payload migrate
# 希望你的自定义 hooks 仍然有效...
**数据库调优。**在 10K+ 文档上有复杂关系,你需要适当的索引。PostgreSQL 不会为你的特定查询模式自动优化。我见过 Payload 管理面板运行缓慢,因为没有人在关系字段上添加索引。
-- 你需要手动添加的那种东西
CREATE INDEX idx_posts_category ON posts(category_id);
CREATE INDEX idx_posts_published ON posts(published_at) WHERE status = 'published';
**插件生态系统差距。**Payload 的插件生态系统增长很快,但仍然无法与 Sanity 的成熟度相匹配。你可能需要构建 Sanity 提供的自定义功能 — 诸如计划发布、高级本地化工作流或细粒度基于角色的访问之类的东西。
开发人员时间因素
这是吹走所有其他数字的成本。开发人员时间。
| 任务 | Sanity(小时) | Payload(小时) |
|---|---|---|
| 初始设置 + 模式 | 8-16 | 12-24 |
| Studio/管理定制 | 16-40 | 8-20 |
| 前端集成 | 16-32 | 16-32 |
| 托管 + DevOps 设置 | 0 | 8-24 |
| 认证 + 访问控制 | 4-8 | 8-16 |
| 媒体处理 | 2-4 | 4-12 |
| 持续维护(年度) | 8-16 | 24-60 |
| 第一年总计 | 54-116 小时 | 80-188 小时 |
在 $100-150/小时的开发人员费率下,这相当于:
- Sanity 第一年开发成本:$5,400-17,400
- Payload 第一年开发成本:$8,000-28,200
这些平台之间的订阅成本差异经常被开发人员时间差异淹没。这是为什么我们的 headless CMS 开发团队总是将实施时间纳入总成本分析。
各规模下谁赢了
这是总结表,年总成本(订阅/托管 + 维护的估计开发人员时间):
| 规模 | 团队规模 | Sanity 年总成本 | Payload 年总成本 | 赢家 |
|---|---|---|---|---|
| 500 个文档 | 1-3 | $0-800 | $84-588 + 运维时间 | Sanity |
| 500 个文档 | 5-10 | $900-1,800 | $84-588 | Payload |
| 3,000 个文档 | 3-5 | $0-1,080 | $588-780 | 取决于 |
| 3,000 个文档 | 6-15 | $1,080-2,700 | $588-780 | Payload |
| 10,000 个文档 | 5-10 | $1,200-2,400 | $588-3,360 | 取决于运维 |
| 10,000 个文档 | 10-20 | $1,900-4,200 | $588-3,360 | Payload(通常) |
模式很清楚:**Sanity 对小团队赢,Payload 随着团队增长赢。**每用户定价模型是 Sanity 在规模上的最大弱点。
但不要纯粹基于价格选择。如果你的团队没有 DevOps 经验,自托管 Payload 的运维开销可能会吃掉你的储蓄。反之亦然,如果你已经运行基础设施并有更大的内容团队,Sanity 的每用户模型在规模上变得昂贵。
想帮忙计算出哪个适合你的具体情况?我们定期为客户进行这种分析 — 与我们联系,我们会给你一个诚实的评估。
常见问题
Payload CMS 真的免费吗? 软件本身是 100% 免费且 MIT 许可的。你可以永久免费运行它,无需向 Payload 支付任何费用。但你需要在某个地方托管它,托管需要花钱。把它想象成 WordPress — 软件是免费的,但你仍然需要一个服务器。根据你的需求和规模预算 $7-280/月用于托管。
Sanity 的 API 调用限制在实践中如何运作? 每个对 Sanity API 的请求都计入你的配额。CDN 请求(缓存的、只读的)和 API 请求(非缓存的、写入、Studio 操作)分别追踪。你的前端上的单个页面加载可能根据你如何构造查询而触发 1-5 个 API 调用。最大的陷阱是预览模式和 Studio — 在 Sanity 中积极工作的编辑可以快速消耗 API 调用。使用 ISR 或 SSG 来最小化前端 API 使用。
Payload CMS 可以在没有性能问题的情况下处理 10,000+ 个文档吗? 绝对可以。PostgreSQL 和 MongoDB 毫不费力地处理数百万行。10,000 个文档对于数据库层是微不足道的。你可能在 Payload 管理 UI 中遇到的地方如果你有深层嵌套的关系或复杂的访问控制政策,需要按文档评估。适当的数据库索引可以解决大多数这些问题。
托管 Payload CMS 的最便宜方式是什么? 对于小项目,Railway 的 Starter 计划($5/月)加上免费 MongoDB Atlas 集群(512MB)让你以约 $5-7/月运行。Cloudflare R2 用于文件存储增加了便士。但这个设置不适合需要可靠性的生产网站。对于生产,预算至少 $50-80/月用于适当的托管,带有托管数据库和自动备份。
Sanity 按文档收费还是按 API 调用收费? 两者都有,但方式不同。文档计入你计划的存储限制(免费 10K,Growth 100K)。API 调用计入你的月请求配额。你在超过第一个维度时被计费。实际上,大多数小到中型网站在文档限制前触及 API 调用限制。
Sanity 定价对多语言网站如何比较?
Sanity 使用他们的 @sanity/document-internationalization 插件在字段级别处理本地化。每个文档的本地化版本计为...一个文档(如果使用字段级本地化)或多个文档(如果使用文档级本地化)。字段级更文档高效。一个 5 种语言的 1,000 页网站可以是 1,000 个文档或 5,000 个,取决于你的方法。这在规模上很重要。
我应该使用 Payload Cloud 还是自托管? 如果你是没有专门 DevOps 的小团队,Payload Cloud 是一个不需要动脑的选择,$49/月。自托管如果你需要特定的基础设施要求(合规性、数据驻留、自定义服务器配置)或如果你已经有 DevOps 专业知识并想在规模上优化成本。
Sanity 和 Payload 之间的真实切换成本是什么? 在任何两个 CMS 平台之间切换很痛苦。根据内容复杂性预算 40-120 小时的开发人员时间进行迁移。Sanity 的内容可以通过他们的 CLI 工具以 NDJSON 格式导出。Payload 使用标准数据库导出。真实成本不是移动数据 — 是重写前端集成层、重建自定义编辑工作流和重新培训你的内容团队。根据我们做过的经验 headless CMS 项目,迁移本身是简单的部分。它周围的一切才费时间。