案例研究 · 10 分钟阅读

我如何在 3 天内把 5 万订阅者从 Mailchimp 迁出

作者 AcelleMail Team May 22, 2026 10 分钟阅读
comparison tutorial

一段真实记录:把一份 5 万订阅者的 B2B 周报从 Mailchimp Standard 迁到 AcelleMail + Amazon SES。时间花在哪、哪里翻了车、新账单长什么样。

§1

背景——我们为什么要搬

我们的周报订阅者刚好停在 49,847 人,这时 Mailchimp 下个月的发票来了:Standard 档每月 $259,一旦跨过 5 万就会跳到 $310。换算下来,每年 $3,108-$3,720 的经常性开销,而这项服务对我们来说唯一不可替代的能力,就是"每周二把周报发到这份名单上"。

这份名单在 Mailchimp 上已经待了 4 年。打开率 38%,点击率 4.2%,投诉率可以忽略。我们要搬不是因为 Mailchimp 坏了——是因为价格与我们实际用到的功能不成比例。

候选替代方案:自托管 AcelleMail,通过 Amazon SES Frankfurt 发送(订阅者名单需要欧盟数据驻留)。一次性 $80 授权,综合每月约 $15。授权回本时间:第 1 个月。

§2

第 1 天——安装 + DNS + SES 配置

技术工作大约花了 3 小时。逐小时:

  • 第 1 小时。开一台 Hetzner CX22(€4.51/月,eu-central-1 Falkenstein)。Ubuntu 24.04 LTS。安装 nginx + PHP 8.3 + MySQL 8 + composer。从 CodeCanyon 上传 AcelleMail 包,跑 web 安装器。授权校验通过,管理员账号创建完毕。
  • 第 2 小时。Amazon SES → "Verified identities" → 添加发件域。启用 Easy-DKIM(3 条 CNAME)。发布 SPF + DMARC 记录。等 SES 验证大约 10 分钟。提交生产访问申请(表单填了 4 分钟,第二天上午批准)。
  • 第 3 小时。AcelleMail 后台 → Sending servers → 通过 SMTP 添加 SES。粘贴凭据。用内建测试邮件发到自己的邮箱。收件箱送达,DKIM 通过,SPF 通过。✅

迁移的第一课:技术配置是最容易的部分。之后 2 天完全花在数据迁移 + 自动化重建上。

§3

第 2 天——导出、转换、导入

Mailchimp 导出:Audience → All contacts → Export。下载是一个 ZIP,里面 4 份 CSV:已订阅会员、已退订会员、被清理的(退信)会员、未订阅(待处理)。规模:49,847 + 8,124 + 612 + 21。

我们写了个小 Python 脚本,把 4 份 CSV 合并成一个主文件,加两列新字段:status(subscribed / unsubscribed / bounced)和 consent_source_mailchimp(保留了 Mailchimp 跟踪的来源 URL)。30 分钟。

AcelleMail 导入:Lists → Create List → 设置合并字段(我们用了 6 个:email、first_name、last_name、segment、signup_source、consent_date)。然后 Import → Upload CSV → 映射列。导入分批跑;5.8 万行总共大约 25 分钟。Tag 作为自定义字段过来了;导入后我们把它们转成了 segment。

第二课:Mailchimp 的 segment 无法干净地导出。CSV 只告诉您某联系人挂了哪些 tag,不告诉您 segment 的规则。我们有 11 个 segment;在 AcelleMail segment 构建器里重建又花了 90 分钟,因为操作符语义略有不同(Mailchimp 的"is or is not" vs AcelleMail 的"equals / does not equal")。在动迁移之前先把您的 segment 文档化。

§4

第 3 天——自动化、模板、冒烟测试

这是最长的一天。我们在 Mailchimp 上跑着 4 套自动化:欢迎序列(5 封)、90 天再激活、内容下载跟进(3 封)、季度赢回。合计 13 封要从零重建。

AcelleMail 的自动化构建器用的原语跟 Mailchimp 一致——trigger / wait / condition / send / tag-update——概念映射是 1:1 的。瓶颈是重建邮件 HTML。我们有一个自己的 Mailchimp 定制模板作为基础;AcelleMail 接受原始 HTML,所以我们直接粘源码,用搜索替换把 Mailchimp 的合并标签(*|FNAME|*)换成 AcelleMail 的({{FNAME}})。

大约 4 小时之后,4 套自动化全部重建完成 + 测试发到我们自己邮箱。然后跑冒烟测试:让 AcelleMail 把下一封排程中的周报与"本应由 Mailchimp 发送的那封"并行发出。两边都在周二早上 9 点发。中午:

  • Mailchimp 发送:38.1% 打开率(我们 4 周基线)。
  • AcelleMail 发送:37.4% 打开率。在噪声范围内。

送达率持平确认。第 3 天结束时,我们把网站注册表单指向了 AcelleMail 的 API,并把 Mailchimp Standard 订阅按计费周期末关停。

§5

哪里翻了车(以及怎么修)

  1. 3 个订阅者的 first_name 里有 emoji。Mailchimp 导出的 CSV 把它们编码成 ? 占位符。我们直到一封欢迎邮件发给第 4 天注册的用户、显示成 ? 而不是名字时才发现。修复:导入后扫一遍 + 注册表单加 sanitiser。
  2. 一套自动化继续触发。导出之前我们忘了在 Mailchimp 那边停掉一套赢回流程。三个流失订阅者在同一小时里同时收到了 Mailchimp 和 AcelleMail 的赢回邮件。尴尬。事后发了一封致歉。
  3. 头 48 小时打开率"看起来不对"。AcelleMail 用开信追踪像素计算打开;Mailchimp 用他们自己的追踪器。指标定义是对得上的,但头 48 小时 AcelleMail 显示 12% 打开,而 Mailchimp 历史上是 38%。追溯下来是开信追踪像素在订阅者邮件客户端里还没"预热"(客户端会缓存图片加载决定)。48 小时后数字收敛。

§6

6 个月之后的数据

迁移后 6 个月复盘:

指标MailchimpAcelleMail + SES
每月费用$259-$310$15-$22
授权(5 年摊销)$1.33/月
打开率(6 个月均值)38.1%37.8%
投诉率0.03%0.02%
每月工程时间约 30 分钟约 90 分钟

工程时间的差是真实且持续的:我们每月多花大约 1 小时在 SES 退信审阅、系统补丁和偶尔的 MySQL 调优上。按我们的小时费率折算大约 $50/月软成本——但相对于 Mailchimp Standard,净节省仍是 4-5 倍。

会再做一次吗?会。值不值得为了一年省 $3K-$3.5K 而花 3 天?值。我们会推荐每个团队都这么做吗?不会——如果您没有运维带宽,Mailchimp 的便利税或许就是该交的税。

在您自己的基础设施上运行。

AcelleMail 是一次性授权的自托管邮件平台。完整源代码,不按订阅者计费。

试用在线演示