MoeMail
メールテストに戻る

MailSlurp の代替:受信トレイ課金が割に合わなくなるとき(2026)

「MailSlurp 代替」で検索する人の多くは、機能に不満があるわけではありません。MailSlurp は難しい部分を正しく作っています。本物の受信トレイ、API ファーストの設計、幅広い SDK、受信トレイ単位の分離。うまく動かないから離れるのではありません。

離れる理由は、計算が合わなくなることです。

利益相反の開示:MoeMail は当社のサービスです。本記事では MailSlurp を選んだ方が妥当なケースもはっきり書きます。以下の MailSlurp のプラン情報は 2026 年 8 月 30 日に mailslurp.com/pricing で確認したものです。価格は変わるので、判断する前にご自身で確認してください。

構造的な問題:正しいやり方が、そのまま課金軸になっている

メールテストのどのガイドも——本サイトを含めて——同じことを言います。**スイートで共用せず、テストごとに新しい受信トレイを払い出すこと。**共用こそがメールテストを不安定にする原因です。二つのテストが並行実行された瞬間、片方がもう片方のメールを読み、並行時にしか再現しない失敗が生まれます。

そして MailSlurp が計量するのは、受信トレイの作成数です。つまり正しいやり方がそのまま課金軸に重なっており、コストは最も増やしたいもの——テスト数 × CI の実行頻度——に比例して増えていきます。

実際の数字を入れてみます。メールが絡むテストが 40 本あるスイートを、プッシュのたびに実行し、さらに毎晩 1 回——1 日 3 回として:

受信トレイ 40 × 実行 3 回 × 30 日 = 月あたり 3,600 回の受信トレイ作成

MailSlurp の公開プランと突き合わせます。

プラン月間の受信トレイ作成数価格
Free100$0
Pro1,000、超過分は $3.00 / 1,000$49.99/月
Team5,000、超過分は従量課金$129.99/月

この 40 本のスイートは、無料枠の月間上限を初日で使い切ります。Pro の枠に対しても 3.6 倍なので、Pro+超過料金か、Team ということになります。そして請求額を押し上げるものに注目してください。データ量でもシート数でもなく、「テストを増やす」ことと「CI をより頻繁に回す」ことです。どちらも、本来やるべきことです。

無料枠はさらに受信を月 500 通、同時保持を最大 50 受信トレイに制限しています。評価用としては十分に使えますが、CI 用の枠ではありません。

MailSlurp を使い続けるべき場合

本記事は MailSlurp が悪いという主張ではありません。次に当てはまるなら、そのまま使ってください。

  • **周辺のプロダクト機能が必要な場合。**レンダリングプレビュー、プレースメントテスト、添付処理、メール検証、AI 機能は Pro 以上です。チームがこれらを使っているなら、無料の受信トレイ API が置き換えるのは表の一列だけで、製品全体ではありません。
  • **SMS や電話 OTP が必要な場合。**無料の代替でこれを満たすものは見つかっていません。
  • **SOC 2、SAML/OIDC、RBAC、リージョン指定ホスティングが必要な場合。**Enterprise の領域で、署名済み MSA にオープンソースの代替はありません。
  • **本当に量が少ない場合。**月 100 回未満の作成なら無料枠は無料であり、乗り換えても節約はゼロで、エンジニアの時間だけが減ります。

節約のための移行が見合うのは、その金額が実在するときだけです。週 2 回しか回さないスイートでは実在しません。

代替は実際のところ何があるか

この分野の分かれ方は Mailosaur の記事と同じで、詳細はそちらにあります。ここでは短く。これだけで「MailSlurp 代替」記事の項目の大半はふるい落とせます。

本物の受信用トレイは、インターネット上のどこからでもメールを受け取ります。MailSlurp を置き換えられるのはこれだけです。MoeMail、Mailinator、Mailosaur がここに入ります。

SMTP キャッチャー——Mailpit、MailHog、MailCatcher、MailDev、Mailtrap の Email Testing サンドボックス——が捕まえるのは自分のアプリが送信したメールです。サードパーティからの認証メールは受け取れません。インターネット側から到達する経路がないからです。それでも代替リストには必ず並びます。

MailSlurp の使用量の半分が自社の送信テンプレートの検証なら、その半分を Mailpit に移してください。CI のサービスコンテナとして動き、認証情報もネットワークアクセスも不要で、計量対象の枠を一切消費しなくなります。これだけでスイートが無料枠に収まり直すことも珍しくありません。

本物の受信CI 規模で使える無料枠自己ホストWebhook
MoeMailありあり、計量なしあり
MailSlurpあり月 100 受信トレイ不可あり
Mailosaurありトライアルのみ不可あり
Mailinatorあり公開受信トレイのみ不可有料プラン
Mailpitなし——ローカル SMTP該当なし(自前で実行)なし

Mailinator の無料受信トレイは誰でも読めます。使い捨ての登録には問題ありませんが、機微な内容には使えません。

MailSlurp からの移行

テストの形は変わりません。MailSlurp のフローは「受信トレイ作成 → フロー実行 → メール待機 → 抽出」で、これはどのサービスでも同じです。変わるのはトランスポートだけです。

const API = 'https://moemail.app/api'
const H = { 'X-API-Key': process.env.MAIL_KEY, 'Content-Type': 'application/json' }

// 以前: const inbox = await mailslurp.createInbox()
export async function createInbox() {
  const res = await fetch(`${API}/emails/generate`, {
    method: 'POST',
    headers: H,
    body: JSON.stringify({ expiryTime: 3_600_000, domain: 'moemail.app' }),
  })
  if (!res.ok) throw new Error(`create inbox failed: ${res.status}`)
  return res.json() // { id, email }
}

// 以前: await mailslurp.waitForLatestEmail(inbox.id, 30000)
export async function waitForMessage(inboxId, timeoutMs = 30_000) {
  const deadline = Date.now() + timeoutMs
  while (Date.now() < deadline) {
    const res = await fetch(`${API}/emails/${inboxId}`, { headers: H })
    const { messages } = await res.json()
    if (messages?.length) return messages[0]
    await new Promise(r => setTimeout(r, 1500))
  }
  throw new Error(`no email arrived within ${timeoutMs}ms`)
}

アサーションを移植するときに注意するフィールド名が三つあります。

  • MailSlurp の inbox.emailAddress は、ここでは inbox.email
  • MailSlurp の email.body は、msg.content(プレーンテキスト)または msg.html
  • タイムスタンプは received_at。REST のリストが返す snake_case です。

抽出用の正規表現はトランスポートに依存しないので、そのまま使えます。

ポーリングより低いレイテンシが欲しければ、受信 webhook を登録して配信時点で待機を解決してください。フレームワーク別の書き方:PlaywrightCypressSeleniumNodePythonGitHub Actions

よくある質問

**無料で本物の API を持つ MailSlurp の代替はありますか。**あります。MoeMail は無料・オープンソース・自己ホスト可能で、OpenAPI と webhook を備えています。Mailinator の無料枠も本物の受信ですが、内容は誰でも読めます。

**MailSlurp のようなものを自分でホストできますか。**MailSlurp 自体はホスティング提供のみです。MoeMail は Cloudflare 上に自己ホストでき、クォータの問題が消え、独自ドメインも使えます。

**MailSlurp にあって MoeMail にないものは。**SMS・電話 OTP、レンダリングプレビューとプレースメントテスト、添付処理やメール検証系の機能、そして即使える SDK の数。HTTP 呼び出しは自分で書くことになり、それが上の二十行です。これらが必要なら MailSlurp は価格に見合います。

**Mailpit で代用できますか。**自分のアプリが送るメールに対してだけです。外部からの受信はできません。ただし送信側の検証を Mailpit に、受信側だけをホスト API に振り分けるのは、たいてい最も安上がりな単一の変更です。

**MailSlurp と Mailosaur、残すならどちらか。**強みが違います。MailSlurp は大量利用時の API の扱いやすさ、Mailosaur は成熟度と SMS。価格が不満なら、どちらも解決しません。その比較は Mailosaur の記事にあります。

結論

MailSlurp は良い製品ですが、その課金モデルは自社ドキュメントが推奨するテスト作法そのものにペナルティを課しています。量が少ないなら無料枠に留まってください。レンダリングや SMS、コンプライアンスが必要ならお金を払ってください。欠けた機能を回避するための再設計は、ライセンス料より高くつきます。

欲しいものが「CI の頻度で、テストごとに受信トレイをひとつ、カウンターを気にせずに」であるなら、それが無料で自己ホスト可能な本物の受信 API を選ぶ理由です。

メールボックスを作成するか、OpenAPI ドキュメントをご覧ください。このパターンが初めてなら、まずメールテストガイドから。

出典:mailslurp.com/pricing(2026 年 8 月 30 日閲覧)、その他は各社の価格・ドキュメントページ。