Integrated research / CRM · Newsletters · Managed email delivery

不自架 SMTP 的
Agent CRM × 電子報完整方案

保留開源 CRM 與 Agent 開發能力,把實際投遞交給第三方。比較 Amazon SES、Cloudflare、Plunk Hosted、Resend 與主要替代方案的真實適用範圍與成本。

2026-09-28 · Asia/Taipei第三方寄送整合版USD 公開價格快照未寄信實測

01 / 結論:寄送層優先選 Amazon SES

成本 + 輕量優先

trycompai/crm
+ listmonk + Amazon SES

保留 CRM 與電子報管理應用,實際寄信交給 AWS。listmonk 用 SES 的 SMTP endpoint;你不用架 SMTP server。

TypeScript + 現成 MCP 優先

trycompai/crm
+ Plunk 自架應用 + Amazon SES

官方 MCP 與 TS 程式碼方便 Agent 延伸;Plunk 直接用 SES API 寄信。郵件基礎設施由 AWS 維運,但 Plunk worker 等仍需自己管理。

連電子報應用也不想維運

trycompai/crm
+ Plunk Hosted 或 Resend

少了電子報應用的自架工作。Plunk 按使用量;Resend Marketing 按聯絡人,且有官方遠端 MCP。單位寄送成本與平台功能需一起評估。

在本次查核的主要候選中,SES 是低單位寄送成本的首選。它有成熟 API/SMTP、退信/客訴通知與公開服務承諾;但不能據此保證你的信一定進收件匣。Cloudflare 目前不列入電子報候選,原因是官方用途限制,而不是沒有寄信 API。[1][2][6]

假設用途為已同意訂閱的電子報,單一團隊/品牌;月寄量尚未提供,因此下方用多種量級比較。這是選型建議,不是供應商到達率實測,也不宣稱某一家在所有用量、免費額度或客製報價下都最便宜。

02 / 不自架 SMTP,仍可以自架開源電子報應用

層次誰負責你需要維護什麼
CRM/會員資料trycompai/crm聯絡人、公司、標籤與業務資料。另補訂閱同意紀錄;CRM contact 存在不代表允許寄電子報。
電子報管理listmonk 或 Plunk名單、內容、排程、取消訂閱與寄送任務。可以不使用 UI,由 Agent 經 API/MCP 管理。
實際郵件投遞Amazon SES 等第三方服務供應商處理 SMTP 投遞、寄件 IP 及郵件伺服器。你管理帳號、DNS 驗證、用量與名單信譽。
Agent 控制層自己的 TypeScript adapter/既有 Agent runtime受眾篩選、寄送上限、去重、工作紀錄與同步。不必對每封信都呼叫模型。

連到 email-smtp.<region>.amazonaws.com 是使用 AWS 託管的 SMTP 服務,不是自架 SMTP。若你連 SMTP 協定都不想碰,Plunk 的 SES API 路徑更直接;listmonk 預設的 SMTP 路徑則更容易換成其他供應商。[4][14]

前一份報告的「自架 listmonk/Plunk」是指管理應用,不代表要維運 Postfix、寄件 IP 或 mail server。本次已把這兩種成本分開。

03 / 第三方寄信服務比較

服務電子報適用性價格與計費重點(USD)Agent/整合能力依你的需求評估
Amazon SES適用;需帳戶通過 production access。à la carte:$0.10/1,000;Essentials:$0.16/1,000(本報告量級)。另有資料與選配費。[1]API/AWS SDK/CLI/SMTP;自包受限 MCP。Plunk 原生 SES backend,listmonk 可直接連 SMTP。成本首選。帳戶審核、DNS、事件處理需設好;不是開帳號後立即無限制群發。
Plunk Hosted適用;有 campaigns、contacts、segments。$0.001/封,付費按使用量;帶附件按雙倍 credits,另計 inbound。[11]官方 MCP;可直接管電子報。[12]省維運的首選之一。不要再把自己的 SES 費用加進 Hosted 帳單估算。
Resend適用;以 Marketing / Broadcasts 評估。Marketing:5K contacts $40、10K $80、50K $250/月;不按寄出封數限制。交易型價格另算。[21]官方 TS SDK、遠端 MCP/OAuth,涵蓋 broadcasts、contacts、webhooks。[23]非常符合 Agent 操作偏好。可能直接取代電子報平台;不是 SES 單純 relay 的同級比較。
SMTP2GO適用於有 permission 的名單。[25]100K 封/月:$75。入門價官方頁主文與 metadata 不一致($10 / $15),下單前核對,本文不以其作低量精確排名。[24]SMTP / API;listmonk 送信可接,退信/客訴回寫需另外整合。想避免 AWS 設定時的 relay 候選。支援服務較直觀,但單價較 SES 高。
Elastic Email可評估 API / SMTP 與行銷用途;依所選產品與帳戶審核。50K 封/月:Starter $19、Pro $49;價格頁將 webhooks 列於 Pro。[28]API / SMTP;Agent 需 adapter。不要只挑低價方案卻忽略事件回寫。低價備選。正式選型先確認所需 webhook/suppression 權限包含在方案。
Postmark使用 Broadcast Message Stream,與交易型信分開。[26]官方資料列 $15/月起;高量價格依目前方案/volume selector 核對,不沿用舊比較表。[27]API / broadcast SMTP;有 unsubscribe 同步機制。重視支援、message stream 分離時可評估;不是最低寄送成本首選。
Mailgun可評估許可式行銷寄送;需處理退訂與供應商政策。分方案與發送量;本次未完整核實動態價格,不用二手數字補齊。[29]SMTP / HTTP API;需自己整合到 CRM 與 campaign 管理。成熟候選,但目前沒有證據顯示比 SES 更符合你的成本目標。
Cloudflare Email Service本次排除電子報用途。Workers Paid 才可一般對外寄送:每月 3K 含額度,超額 $0.35/1K;Workers 最低 $5/月。[7][8]已具 API、Workers 與 SMTP;用途仍限 transactional,Sending 為 Beta。[9][10]可做 OTP、通知等另一條路;不因便宜就用來送 marketing newsletter。[6]
Zoho ZeptoMail排除電子報用途。即使交易型郵件價格有吸引力,也不能用不同用途的低價方案比較電子報。API / SMTP 偏 transactional。官方明列 bulk、newsletter 等不支援。[30]

同一份表包含「原始投遞服務」與「含聯絡人/campaign 的託管平台」,用途欄與計費欄已分開。SaaS 服務本身不保證開源;開源範圍仍以 CRM、listmonk、Plunk repo 為主。

04 / 真正的月費:按封數與按聯絡人分開算

查核日:2026-09-28(Asia/Taipei)。以下為公開 USD 標價的基礎費推算,排除稅、匯差、信用卡費、免費/新戶抵用金、附件/資料量、模型用量、應用主機與監控。封數是收件者投遞次數:10,000 人寄 4 期就是 40,000 封。

寄送服務/方案每月 10K 封50K 封100K 封1M 封適用範圍
Amazon SES à la carte$1.00$5.00$10.00$100.00僅基礎寄送;不含 VDM 等選配。
Amazon SES Essentials$1.60$8.00$16.00$160.00基礎寄送與方案內功能;仍有其他可能費項。
Plunk Hosted(無附件)$10.00$50.00$100.00$1,000.00付費單價 × 封數,不減免費 tier 額度。
SMTP2GO入門價格有差異依 selector 核對$75.00依 selector 核對不插值推估未查證方案。
Elastic Email依方案最低費Starter $19 / Pro $49依 selector 核對依 selector 核對Starter / Pro 功能不同;非相同能力最低價。

價格來源:[1][11][24][28]。金額依各自列出的單價計算,不代表最終帳單或到達收件匣的成本。

相同電子報情境Amazon SES à la carteAmazon SES EssentialsPlunk HostedResend Marketing
5K 位聯絡人 × 每月 4 期 = 20K 封$2.00$3.20$20.00$40/月
10K 位聯絡人 × 每月 4 期 = 40K 封$4.00$6.40$40.00$80/月
50K 位聯絡人 × 每月 4 期 = 200K 封$20.00$32.00$200.00$250/月
50K 位聯絡人 × 每月 20 期 = 1M 封$100.00$160.00$1,000.00$250/月

Resend Marketing 按帳戶計費聯絡人數選級距,而非只按本次受眾人數;上表假設帳戶僅有這些計費聯絡人。其官方價格表說 marketing 不按封數設限,但仍受帳戶、速率與使用政策約束。此列不把免費方案及其他用量算入。[21]

SES 新帳戶的價格變動:2026-07-21 起,新的 SES 帳戶/符合條件的新 account-region 預設 Essentials;可切回 à la carte。便宜路線需確認實際 plan,不能假設新帳戶一律每千封 $0.10。[1]

我的選擇:只要基礎投遞、已在自己的程式做監控,先評估 à la carte;想要方案內的 SES deliverability 工具,可評估 Essentials。以 100K 封為例差 $6/月,應依可用功能選,不必為微小寄送價差增加維護工作。

05 / 最便宜的寄送 API,不一定是最便宜的完整系統

你的總成本應計為:第三方寄送費 + 電子報應用/DB/queue + CRM/Agent runtime + 備份監控 + 維護時間。SES 不需要 EC2 才能使用;程式可以在 Vercel 或其他平台呼叫它。若自架郵件管理應用,主機費是應用的成本。

完整方案新增需維運的部分成本結構建議
trycompai/crm + listmonk + Amazon SESlistmonk 服務、PostgreSQL、TS adapter/sync job。共通 CRM 成本 + listmonk infra + SES。成本與服務數平衡首選;不必修改 Go 核心。
trycompai/crm + Plunk 自架 + Amazon SESPlunk API、worker、Redis、Postgres、儲存與相關設定。共通 CRM 成本 + Plunk infra + SES。更適合想由 Agent 深度改 TS 郵件產品的人。[13]
trycompai/crm + Plunk HostedCRM adapter、同意帳本、同步。共通 CRM 成本 + Hosted 付費用量。低寄量時通常值得比較,避免為省數美元多養一套服務。
trycompai/crm + Resend MarketingCRM adapter、同意同步與供應商整合。共通 CRM 成本 + contact 級距與選配。原生遠端 MCP 減少接線;可取代 Plunk/listmonk,未必需要全部疊加。
trycompai/crm + 自製 TS campaign engine + Amazon SES自己做排程、模板、退訂、速率、retry、回寫、報表。較少外部應用,但自有程式與測試負擔最大。長期客製路線;不作 MVP 預設,Agent 寫得快不代表營運邏輯免費。

示例:若自架電子報應用每月額外成本為 H 美元(自行假設,非報價),相較 Plunk Hosted,忽略資料費時 SES à la carte 的寄送價差約 $0.0009/封。單看帳面,損益平衡約 H ÷ 0.0009 封;H=$30 時約 33,334 封。這還沒算維護時間,也未比較服務功能差異。

06 / 「穩定」與「到達率」要分三件事看

指標真正代表什麼如何評估
API/服務可用性你能不能將任務交給供應商。SES 公開 SLA 包含每區域月可用性至少 99.9% 的服務承諾,適用排除條件與 credits 規則;不等於實測 uptime。[2]
投遞成功率對方 mail server 接受了郵件。delivery event 不是收件匣證明。追蹤 hard bounce、soft bounce、deferred、complaint 及延遲。
Inbox placement信落在收件匣、分類頁籤或垃圾信。沒有可通用於你這份名單的可靠單一排名。應對 Gmail、Outlook、Yahoo 與你的企業客戶信箱分開試寄。

本報告沒有把廠商宣稱的 99% delivery 當成 99% 進收件匣。也沒有根據單次第三方排行榜聲稱某供應商到達率最高。SES 是成本與能力上的推薦;真正結果仍由寄件網域信譽、內容、名單品質、寄量變化與對方收信規則共同決定。

你要落實的項目對這套架構的做法
SPF / DKIM / DMARC驗證寄件網域與 From alignment;按供應商要求設定 custom MAIL FROM。寄送子網域與日常員工信箱分開;保留原收件 MX,不因要寄信而重設整個公司的收信服務。
行銷與交易型分流使用如 news.example.com / notify.example.com,不混用電子報與密碼重設的名單、queue 或頻率。子網域有助管理,但不保證聲譽完全隔離。
可用的退訂信內清楚退訂連結 + one-click headers;Agent 或系統不能再把退訂者同步成 subscribed。驗證實際送出的 MIME,不只看模板。
名單與 ramp-up先寄近期主動互動且已 opt-in 的小批名單,按結果逐步增加;不要匯入未知同意狀態的 CRM 聯絡人。
監控與停寄追蹤每個 mailbox provider 的結果。自行設定例如 hard bounce >2% 觸發檢查、complaint ≥0.1% 暫停擴量;小樣本也要看件數,這是建議內控,不是所有供應商統一規則。
IP 選擇先評估共享 IP;零星電子報不因加購 dedicated IP 就自動提升到達率。專用 IP 的量、持續性與暖機需另評估。
省錢與低噪音報表圖片用 HTTPS 外部資源、附件改下載連結;開信像素可能被代理/預載影響,用點擊、退訂、客訴與實際回應一起判讀。

Google 對大量寄件者有 authentication 與行銷 one-click unsubscribe 要求,官方建議 spam rate 保持低於 0.1%,避免達到 0.3%。這不是所有供應商的硬門檻,但適合設成早期監控依據。[31][32]

listmonk 與 Plunk 的原始碼都有 one-click header 邏輯;仍要測試實際設定、內容類型與經供應商處理後的成品。[18][33]

07 / 建議落地架構:Agent 管理,SES 投遞

整合路徑已確認能力仍要補的工作
trycompai/crm → TS tools已有 /rest、OpenAPI、API key security scheme。[19]薄型 MCP、行銷同意帳本、contactId / email 版本映射。不要以 UI 操作當主要介面。
TS tools → listmonk有 REST API;可以把 campaign 管理與 send 權限分開。[17][34]自己封裝明確業務 tools,限制任意 SQL/廣泛 API 能力;退訂同步與狀態對帳。
listmonk → Amazon SES接 SES SMTP;官方有 SES SNS bounce webhook 設定。[16]設定 bounce/complaint 通知、TLS、quota / rate limit,測試兩種事件均正確封鎖。不同 SES notification 格式須依官方設定配對。
TS tools → Plunk官方 MCP 支援 contacts、segments、campaigns;目前為 stdio 路徑。[12]跨系統規則仍放自己的 service;外部 HTTP MCP 如有需要另接,不預設已有。
Plunk → Amazon SES原始碼使用 AWS SES client。[14]正確配置 AWS region、IAM、configuration sets 與事件;不能假設換任意 SMTP host 就能改掉 Plunk backend。
Plunk Hosted / Resend由平台管理投遞服務;可用其 campaign / broadcast API。通常不再另外接自己的 SES 帳戶付費。需要 BYO SES 時必須看供應商是否明確支援,不能想當然。

部署:Vercel 適合既有 CRM app/API 的部署路徑,以及短請求 MCP/Webhook endpoint。listmonk 常駐服務、Plunk worker 的原生部署模型仍放適當容器/VM;第三方寄信不會讓它們自動變成 serverless。[20][13]

將收件狀態事件持久化再回 2xx,背景處理並定期 API 對帳;Plunk workflow webhook 本身沒有自動重試,因此漏失補救尤其重要。SES SNS 接收端要按規格驗證來源/簽章、去重,避免外部假事件改寫訂閱。[15][5]

08 / Agent-only 的工作方式與最小資料模型

保留「模型做判斷,程式做保證」的分工。Agent 可以寫內容、選合適名單與設定排程;發送額度、同意檢查、供應商速率、重試與去重由程式強制。不用讓每封電子報都經過 LLM 或 MCP 一次。

建議工具(待實作)可做什麼程式必須保證
preview_audience輸入受限篩選條件,回傳人數與名單版本。只含可寄訂閱者;隱藏不必要個資;禁止隨意執行 SQL。
create_campaign_draft產生草稿與 HTML/純文字內容。固定 content hash、audience version 與 sender;電子報包含可用退訂。
schedule_campaign在已授權範圍排程。recipient cap、每日上限、成本預估、寄件網域與 operation ID;狀態不明不盲目重寄。
get_campaign_health彙總 sent / delivered / bounce / complaint/遲延。區分供應商接受、投遞成功與 inbox placement;不編造到達率。
unsubscribe_contact確切 ID/email 退訂。立即影響下次實際寄送;CRM 舊同步不得覆蓋。
pause_campaign停止還沒提交的任務。已寄出的郵件不能收回;明確回傳已寄與待寄數量。
資料最小責任
ContactMappingCRM id ↔ provider id;email 版本、封存與更換地址。
ConsentEvent / Subscription保存同意來源、topic/list、時間與撤回;CRM 既有 Contact 不能替代。[35]
CampaignRun / DeliveryAttemptoperationId、provider messageId/campaignId、內容版本、attempt 與狀態。
Outbox / InboxEvent避免 DB 成功但 job 遺失;處理事件重複、亂序與重啟恢復。
Suppression / Audit退訂、hard bounce、complaint 的阻擋規則與每次操作身份。

Plunk 提供文件化 headless 寄送選項;只在預先授權、有限額的 runtime 中啟用。Resend 遠端 MCP 支援 OAuth,也有 headless API key 方式。金鑰留在受控服務,Agent 不需要拿 AWS 管理員權限;帳號開通、DNS 控制權與付費審核仍可能有一次性人工步驟。[12][23]

不要把「Agent 全自動」解讀成盲目寄送或自動繞過供應商停權。若因 bounce/complaint 暫停,先修正名單與原因,不自動切另一家繼續寄。網路 timeout 也不直接 fail over,避免同一收件人收到兩次。

09 / SES 上線清單:先通過這些,再擴量

階段具體工作通過條件
1 · 確認用途、區域、方案選支援需求的 SES region,確認 à la carte/Essentials,設定預算與告警。價格與區域已記錄;別因身在台灣就假設必須用特定區域,先看部署、支援與資料需求。
2 · 網域與 production access驗證 domain、DKIM、MAIL FROM / DMARC;申請 production access,清楚描述許可式電子報用途。Sandbox 預設僅驗證收件者、200 封/24 小時、1 封/秒;核准不保證無限速,需確認帳戶實際 quota。[3]
3 · 連線與權限listmonk 使用 SES SMTP region credentials;Plunk 使用受限 IAM SES API credentials。SMTP credentials 不等於一般 AWS access keys,且按 region 區分;TLS、寄件 identity 都成功。[4]
4 · 事件與退訂設定 SES bounce / complaint 通知,接回平台與 CRM;測 one-click unsubscribe。模擬退信、客訴、退訂都能阻擋後續行銷信;恢復重試不再次 opt-in。
5 · 小量驗收只對已授權的內部種子帳號寄測試,檢查 Gmail、Outlook、Yahoo 與企業信箱。From / DKIM / SPF / DMARC 對齊、連結正確;紀錄落點與延遲。此測試仍不保證整份名單表現。
6 · 逐步放量近期活躍訂閱者先行,依實際 quota 控制每秒寄量。事件回寫、重啟恢復、超額停止及混合失敗情境都通過;穩定後再提高每日受眾。

以 100K 封為例,若核准速率只有 10 封/秒,光提交就至少約 2.8 小時,還未算 retry 與對方收信延遲。因此「月量足夠」不代表可以在幾分鐘內完成整份電子報。這是算術示例,不是 SES 給你的實際限額。

10 / 最終選型與下一步

你的優先順序選擇理由
最低寄送成本 + 維運輕量trycompai/crm + listmonk + Amazon SES採 SES à la carte 或視需求用 Essentials;自包 TS MCP,保留成熟 campaign 功能。
TypeScript 改功能 + 官方 MCPtrycompai/crm + Plunk 自架應用 + Amazon SES符合語言偏好,不自架 SMTP;接受額外 worker/Redis 等服務。
最快開始 + 不維運電子報應用trycompai/crm + Plunk Hosted按封數計價、現成 MCP;低寄量時總成本可能更合理。
遠端 MCP / OAuth + 高寄信頻率trycompai/crm + Resend Marketing用聯絡人數 × 寄送頻率估算;可不再另外放一套 listmonk/Plunk。
想用 CloudflareCloudflare Email Service 僅列交易型候選電子報仍用 SES;DNS 可以繼續用 Cloudflare,不需把兩者綁成同一供應商。

我建議你的第一個 PoC:CRM + listmonk + SES,用一份小型已授權名單,跑通「Agent 建草稿 → 預覽受眾 → 排程 → 寄送 → 退訂/退信回寫」。如果實作中發現主要需求是改 TS 郵件平台內部,再換成 Plunk + SES;不要一開始同時正式營運兩套郵件平台。

若你更在意不用維護應用,把同一個 PoC 改接 Plunk Hosted 或 Resend Marketing,再比較每月實際用量與維護成本。沒有必要為了 MCP 再多部署一套你不需要的管理產品。

11 / 研究範圍與尚未驗證事項

12 / 官方來源與原始碼

  1. AWS SES 定價:Essentials 與 à la carte、資料及附加費
  2. AWS User Engagement SLA:Included Services 包含 SES
  3. SES production access 與 sandbox 限制
  4. SES SMTP credentials:區域與憑證區別
  5. SES:SNS bounce、complaint、delivery 通知
  6. Cloudflare FAQ:目前僅交易型郵件,marketing 尚未支援
  7. Cloudflare Email Service 定價
  8. Cloudflare Workers 定價:Paid 最低月費
  9. Cloudflare Email Service:Sending Beta 與 Routing
  10. Cloudflare:已提供 authenticated SMTP submission
  11. Plunk Hosted Billing:單價、附件與計費單位
  12. Plunk 官方 MCP:功能與 headless 選項
  13. Plunk Docker:API、worker 與相依服務
  14. Plunk SESService 原始碼:AWS SES backend
  15. Plunk webhook:透過 workflow,失敗不自動重試
  16. listmonk 官方 bounce 處理:Amazon SES SNS
  17. listmonk 官方 REST API
  18. listmonk 寄送管理:one-click unsubscribe headers
  19. CRM REST bridge 與 OpenAPI 原始碼
  20. CRM README:技術棧與部署
  21. Resend 官方 AI 可讀價格表:交易型按封、Marketing 按聯絡人(直接讀取)
  22. Resend 定價頁:transactional 與 marketing 計費分開
  23. Resend 官方遠端 MCP:OAuth、Bearer、broadcasts 等
  24. SMTP2GO 定價頁:入門價格文字有差異,100K 為 US$75
  25. SMTP2GO 新帳戶審核與 marketing permission
  26. Postmark Message Streams:broadcast 與 transactional 分開
  27. Postmark 官方比較頁的價格參考;購買仍核對 pricing selector
  28. Elastic Email API:Starter / Pro 定價與 webhook 差異
  29. Mailgun 官方定價與 SMTP / HTTP API
  30. Zoho ZeptoMail:不支援 bulk / newsletter
  31. Google Email sender guidelines:authentication、退訂與 spam rate
  32. Google sender FAQ:spam rate 建議低於 0.1%,避免達到 0.3%
  33. Plunk EmailHeaderService:行銷與交易郵件的退訂標頭
  34. listmonk 權限:campaigns:manage 與 campaigns:send
  35. CRM Contact schema:不是電子報同意帳本