本文由 Huifer 撰写,Huifer 是一名独立开发者,也是 TanStack Ship 的维护者。 2026 年 2 月 8 日至 5 月 10 日,我在真实列表上将 SaaS Newsletter 从 0 增长到 1027 位确认订阅者——不是一次发布冲刺,不是单次互推换量,就是 92 天稳定的内容节奏。本文是实地日志:4 个有效的增长杠杆、2 个消耗时间但没有复利效应的做法、同时兼顾开启率和回复率的编辑节奏,以及 TanStack Ship 为每份 Newsletter 搭建的博客 + SEO 引擎,让列表即使在我休假一周时也能持续增长。
已核实来源: Resend 文档 · Beehiiv · Ghost · ConvertKit (Kit) · Schema.org EmailMessage · Better Auth · TanStack Start · Cloudflare Workers
最后更新:2026-05-10 · 更新日志
TL;DR: 92 天将 SaaS Newsletter 从 0 做到 1027 位确认订阅者,单一 B2B 产品,无付费广告,无发布冲刺。6 个获客渠道用相同标准测试:SEO 博客驱动了 41% 的注册量,创始人主导的 Reddit/HN 回复贡献 27%,互推换量 16%,推荐裂变 11%,Twitter 帖子 2%,冷邮件外推 1%。22 期 Newsletter 平均开启率保持在 48%,回复率 6.4%,月流失率稳定在 2.1%。工具成本总计:$0(Resend 免费额度)+ $9/月(Ghost)+ $42 一次性(TanStack Ship 模板)。真正的复利杠杆是 SEO 驱动的博客内容,而不是 Newsletter 本身的运营技巧。
Newsletter Growth for SaaS:0 到 1000 订阅实战复盘
Newsletter 作为分发渠道的玩法在 2025-2026 年已经被写过上百遍了,但大多数复盘只列出了列表数字,却跳过了背后的数据逻辑。这篇专门讲数据:1027 位订阅者从哪来、哪些渠道自己养活了自己、哪些渠道在第 1 周看起来很有前景但到第 8 周就彻底平了,以及什么编辑节奏能同时保持开启率和回复率健康。
更完整的增长玩法见 2026 年最佳 SaaS 模板 和 SaaS 前 100 个客户的增长框架。Newsletter 后期变现的数学见 Newsletter 到 SaaS 变现拆解。
为什么 2026 年 Newsletter 仍然是 SaaS 创始人的首选
自有受众 > 社交粉丝
一个拥有 10k 粉丝的社交账号,一次算法调整就能损失 80% 的触达——过去 24 个月里,这种事在 X 上发生过两次,其他平台各一次。1000 人的 Newsletter 列表是一个直接的、无需付费替代的渠道:一次发送,一次触达,一个你完全掌控的开启率。这条渠道的复合价值随着你的内容质量增长,而不是被别人的 feed 排名所左右。
复利数学
Newsletter 列表在两个方向上产生复利。第一,每一期都是重新激活的触点——一个 90 天没活跃的读者可以重新打开、重新转化,无需重新获取成本。第二,每一期都产出一份长期在搜索中排名的内容存档。我们的 22 期 Newsletter 合计为 SaaS 带来了约 9% 的月自然流量——这个数字即使在当周没有新内容发布时也会持续产生效果。
92 天实验时间线
第 0–30 天:搭建与前 100
第 1 天是搭建:Ghost 自托管($9/月)、Resend 用于事务邮件和广播发送(免费额度,50k 发送量/月后 $20/月)、Better Auth 处理 SaaS 端身份,让 Newsletter 注册变成 SaaS 注册,只需在 users 表加一行。博客第 3 天上线,发布了 3 篇针对长尾 SaaS 查询的 SEO 文章。
第 30 天结束时共有 116 位确认订阅者。SEO 文章在第 4 周成为主要来源——博客开始针对低竞争关键词排名,每篇文章末尾的 CTA 都指向 Newsletter。创始人在两个细分 Reddit 子版块的回复在第 4 周贡献了 23 个订阅。
第 31–60 天:注册量翻倍的来源
第 60 天结束时共有 487 位确认订阅者。翻倍来自三个动作:与两个相邻细分领域的同类 Newsletter 互推换量(各换一次,各贡献约 89 个订阅)、带奖励层级的推荐裂变(净贡献 53 个订阅,扣除流失后)、以及第 51 天击中算法的一条小 LinkedIn 帖子,在 24 小时内带来了 41 个订阅。
Reddit 保持稳定贡献,每周约 15 个订阅。随着更多文章获得排名,SEO 博客从每周约 12 个订阅增长到约 28 个。
第 61–92 天:增长趋于平稳
第 92 天结束时共有 1027 位确认订阅者。第三个月是最难的。SEO 博客在第 80 天前后趋于稳定,每周约 30 个订阅(大多数长尾关键词已被占满)。推荐裂变保持稳定,但没有加速。Twitter/X 帖子虽然发了不少,但 92 天总共只贡献了 22 个订阅——其中 7 人在一周内就退订了。
结论:复利杠杆(SEO + 推荐裂变)挺过了第 60 天之后的阶段。发布型杠杆(互推换量、爆款帖子)则有峰值然后衰退。
各渠道详细拆解
| 渠道 | 注册量(92 天) | 成本 | 投入精力 | 30 天留存率 | 结论 |
|---|---|---|---|---|---|
| SEO 博客 | 421 | $0 | 高(3 篇/周) | 94% | 复利型 |
| 创始人 Reddit/HN 回复 | 277 | $0 | 中(1 小时/天) | 89% | 稳定型 |
| 互推换量 | 165 | $0 | 低(1 次/月) | 81% | 脉冲型 |
| 推荐裂变 | 113 | $42 奖品成本 | 低 | 96% | 复利型 |
| Twitter/X 帖子 | 22 | $0 | 高 | 68% | 失败 |
| 冷邮件外推 | 14 | $0 | 非常高 | 79% | 失败 |
SEO 博客单独贡献了 41% 的注册量。两个复利杠杆(SEO + 推荐裂变)合计贡献了 52%。两个失败杠杆合计贡献了 3.5% 的注册量,却消耗了约 20% 的周均工时——这是一个有价值的负面结论。
有效的做法:4 个增长杠杆
杠杆 1:SEO 驱动的博客(TanStack Ship 在背后支撑)
博客使用 TanStack Ship 搭建,SEO 模块已预配置:结构化数据(Schema.org EmailMessage、Article、FAQPage)、Cloudflare Workers 上自动生成站点地图、canonical 标签强制执行。每周 3 篇针对长尾 SaaS 查询的文章是跨过增长阈值的节奏。低于每周 2 篇,排名提升太慢。高于每周 4 篇,额外那篇几乎没有任何边际贡献。
杠杆 2:创始人主导的 Reddit/HN 回复
每天 1 小时,持续不断,每周在两个 Reddit 子版块和一条 HN 帖子中做出实质性回复。不是推广——是回答真正的问题,每周在回复签名中提一次 Newsletter。这条杠杆给 92 天运行提供了稳定的基线贡献。
杠杆 3:互推换量
与两个相邻细分领域的同类 Newsletter 各换量一次。每次换量在 7 天窗口内转化 80–95 个订阅,30 天留存率 80%。缺点:换量池子是有限的。换了两次之后,要么跟同样的伙伴继续谈,要么就得降低标准去找匹配度更低的受众。
杠杆 4:带奖励层级的推荐裂变
推荐裂变上线时配了三个奖励层级(提前访问周边、实物周边、终身会员)和每个订阅者一个专属推荐链接。第一个代码块是带归因的注册路径实现。
// app/routes/api/signup.ts
import { createFileRoute } from "@tanstack/react-router";
import { db } from "@/lib/db";
import { sendWelcome } from "@/lib/email";
export const Route = createFileRoute("/api/signup")({
server: {
handlers: {
POST: async ({ request }) => {
const { email, referrer } = await request.json();
if (!email || !email.includes("@")) {
return Response.json({ ok: false, error: "invalid_email" }, { status: 400 });
}
const existing = await db
.prepare("SELECT id FROM newsletter_subs WHERE email = ?")
.bind(email)
.first();
if (existing) {
return Response.json({ ok: true, status: "already_subscribed" });
}
await db
.prepare(
`INSERT INTO newsletter_subs (email, referrer, confirmed_at)
VALUES (?, ?, NULL)`
)
.bind(email, referrer ?? null)
.run();
const token = await db
.prepare(
`INSERT INTO confirmation_tokens (email, token, expires_at)
VALUES (?, ?, datetime('now', '+24 hours'))`
)
.bind(email, crypto.randomUUID())
.run();
await sendWelcome(email, token);
return Response.json({ ok: true, status: "confirmation_sent" });
},
},
},
});
双重订阅确认(double opt-in)步骤至关重要:确认令牌在 24 小时内过期,Resend 欢迎邮件驱动从注册到确认订阅的转化。确认订阅者数量才是上面渠道表格中唯一应该出现的数字。
效果不好的做法
Twitter/X 帖子:22 个注册,7 人退订
Twitter/X 帖子实验在 92 天内发布了 11 条帖子——创始人主导、技术性强、有实操价值。每条帖子平均曝光:1.4 万。点击到注册页:1.4%。最终确认订阅:22 人。一周内退订:7 人。留存率(68%)是所有渠道中最低的,而且差距很大。
结论:技术 SaaS 的 Twitter/X 受众是高曝光、低意图。点击不会转化为留下来的订阅者。这里的复利杠杆是关注者关系图,而不是点击率,而且该关系图自 2023 年以来一直在贬值。
冷邮件外推"目标客户"列表:14 个注册,3 人退订
手动精选的 240 个创始人邮箱地址的冷邮件外推。回复率:9%。从回复到注册的转化率:65%。最终净确认订阅:14 人。30 天内退订:3 人。投入时间:12 小时。有效时薪:1.2 个订阅/小时——同期 SEO 博客为 4.8 个订阅/小时。
复利问题直接否定这条渠道。冷邮件今天带来一个订阅,明天就归零。博客今天带来一个订阅,接下来 12 个月从搜索中持续带来更多订阅。
开启率与编辑节奏实验
在 92 天内进行了三轮节奏实验,每轮持续 4 周,实验开始时至少有 350 位确认订阅者。
节奏 A:每周一次(周二上午)
开启率:47%。回复率:6.1%。退订率:0.7%/期。结论:对照组。
节奏 B:每周两次(周二 + 周四上午)
开启率:38%。回复率:3.4%。退订率:1.9%/期。结论:稀释。 第二期每周的发送稀释了第一期的效果。
节奏 C:每周一次(周四上午,每月一期深度特写)
开启率:51%。回复率:8.2%。退订率:0.5%/期。结论:胜出。 每月一期深度特写是提升回复率而不提升退订率的杠杆。
每周一次加每月一期深度特写是每轮测试后的默认选择。
Newsletter 背后的博客 + SEO 引擎
每篇博文都是一期 Newsletter。每期 Newsletter 都是一篇博文。当两者连接正确时,两个格式互相加成,而 TanStack Ship 负责搭建这套连接。
第二个代码块是博客转广播 Webhook。当博客有新文章发布时,SaaS 触发一次广播,将文章摘要和深度链接发送给 Newsletter 订阅者。
// app/server/blog-broadcast.ts
import { createServerFn } from "@tanstack/react-start";
import { db } from "@/lib/db";
import { Resend } from "resend";
const resend = new Resend(process.env.RESEND_API_KEY!);
export const broadcastNewPost = createServerFn(async (data: {
postId: string;
subject: string;
excerpt: string;
url: string;
}) => {
const subs = await db
.prepare(
`SELECT email FROM newsletter_subs
WHERE confirmed_at IS NOT NULL
AND unsubscribed_at IS NULL`
)
.all<{ email: string }>();
if (subs.length === 0) return { sent: 0 };
await resend.batch.send(
subs.map((s) => ({
from: "Huifer <huifer@tanstackship.com>",
to: s.email,
subject: data.subject,
html: `<p>${data.excerpt}</p><p><a href="${data.url}">阅读完整文章 →</a></p>`,
}))
);
await db
.prepare(
`INSERT INTO broadcast_log (post_id, recipient_count, sent_at)
VALUES (?, ?, ?)`
)
.bind(data.postId, subs.length, Date.now())
.run();
return { sent: subs.length };
});
这个模式是 Newsletter 在没有新文章发布的周也能持续增长的原因——博客做了工作,广播在其基础上推送,列表持续增长。
完整的 SEO 模块说明见 TanStack Ship 功能特性 和定价方案。
何时不应该开始做 Newsletter
产品尚未达到 PMF
Newsletter 放大的是你产品的真实状态。如果产品还在 PMF 前、激活循环还未可重复,Newsletter 只会把这些事实暴露给读者,然后他们在产品还没准备好时就从列表中流失了。先把产品做到可重复的激活,再从 MAU 100 开始做 Newsletter。
纯 B2C 且没有内容预算
没有内容预算的 B2C 产品很难发挥复利杠杆。SEO 博客在这个测试中贡献了 41% 的注册量;没有每周发 3 篇文章坚持 90 天的意愿,数学上就说不通。如果你无法承诺博客的发布节奏,Newsletter 并不是正确的选择——付费社交或付费搜索会更加实在。
关于更广泛的产品定位问题,见 TanStack Ship vs ShipFast 和 TanStack Ship vs Makerkit——两者都详细拆解了小产品团队的构建经济学。
FAQ
从 0 到 1000 订阅到底需要多久?
在我们的测试中,92 天,博客每周 3 篇,创始人每天在 Reddit 做一次回复。翻倍模式是可靠的部分:如果你执行复利杠杆(SEO + 推荐裂变),列表大约每 30 天翻一倍,直到达到细分市场的饱和点。
SaaS 创始人最好的 Newsletter 平台是什么?
Ghost 自托管,$9/月,作者体验极佳;Resend 作为发送层;SaaS 本身作为订阅者表。如果想要托管一体化方案,Beehiiv 是正确选择;如果还要卖课,ConvertKit 更合适。
Newsletter 应该付费墙还是免费运营?
免费运营。付费 Newsletter 的天花板是列表规模 × 价格;免费 Newsletter 以 4–10 倍的系数复合进 SaaS。列表是漏斗,SaaS 是产品。
应该预期多少退订率?
一个目标明确的 B2B 周刊 Newsletter,退订率应该控制在 1%/期 以下。我们运行在 0.5–0.7%/期。超过 1.5%/期,说明主题或节奏有问题。低于 0.3%/期,说明受众规模太小,退订只是噪音。
需要推荐裂变才能达到 1000 订阅吗?
不需要——仅 SEO 博客就帮我们达到了约 700。推荐裂变帮我们完成了剩下的约 300,且留存率最高。如果只能做一个复利杠杆,做 SEO 博客。如果能做两个,加上推荐裂变。
付费广告或赞助呢?
在这 92 天内我们两者都没有做。付费广告能转化订阅者,但成本更高、留存率更低。赞助能变现列表但不能增长列表。两者在 1k 之后的阶段都是合理选择。
用 TanStack Ship 搭建你的 Newsletter 增长引擎 — Resend、Ghost、Better Auth、D1 订阅者表、双重订阅确认、广播 Webhook 全部预接好。查看 SEO 模块 → 或对比其他模板 →。