ピラーガイド · 読了時間 24 分 · 更新日 May 2026

2026 年のメール到達率 — 標準仕様、ウォームアップ、フィードバックループ。

到達率とは、受信トレイに届くキャンペーンと迷惑メールフォルダに振り分けられる同じキャンペーンを分ける要因です。3 つの認証標準(SPF、DKIM、DMARC)、1 つのレピュテーションスコア(IP + From ドメイン)、そして 2 つの運用規律(リストクリーニング、バウンス処理)の組み合わせで決まります。本ガイドはその 6 要素すべてを、具体的な構文、RFC 番号、AcelleMail のツール、そして runbook にそのまま貼り付けられる日次ウォームアップスケジュール付きで解説します。

本ガイドの内容

  1. 到達率とは何か
  2. SPF — Sender Policy Framework
  3. DKIM — 暗号署名
  4. DMARC — アライメントとレポーティング
  5. BIMI — ブランドロゴのボーナス
  6. レピュテーション — IP とドメインのスコアリング
  7. IP ウォームアップ — 6 週間スケジュール
  8. バウンス、苦情、フィードバックループ
  9. リストクリーニング — 抑制リストとオプトイン
  10. AcelleMail の到達率ツール
  11. よくある問題と対処法
  12. FAQ

§1 · 定義

メール到達率とは何か。

到達率とは、送信したメッセージが受信者のメインの受信箱に届く比率のことであり、配信(受信側メールサーバーが受け入れた)や送信(送信パイプラインに渡した)とは区別されます。メッセージが正常に送信され、受信側メールサーバーに配信されたうえで迷惑メールフォルダに入った場合、配信は成功でも到達は失敗です。重要視される指標 — 開封率、クリック率、コンバージョン — は配信ではなく到達率に依存します。

メールボックスプロバイダー — Gmail、Outlook、Yahoo、Apple iCloud Mail、Proton、主要な地域プロバイダー — はいずれも、受信するすべてのメッセージに対して多段階のスコアリングパイプラインを実行します。各段階はプロバイダー間でほぼ共通しており、重み付けが異なるだけです。

  1. 接続時チェック。逆引き DNS、HELO/EHLO の整合性、TLS サポート、RBL(Spamhaus、SpamCop など)への IP 掲載状況。
  2. 認証チェック。SPF の合否(RFC 7208)、DKIM 署名の検証(RFC 6376)、DMARC アライメント(RFC 7489)。最も寛容な下流スコアリングを得るには 3 つすべてがクリーンに合格する必要があります。
  3. コンテンツスコアリング。スパムキーワードの密度、リンクのレピュテーション、画像とテキストの比率、From 名と From アドレスの一致性。
  4. レピュテーション参照。プロバイダーが内部で保持する送信 IP および From ドメインの履歴 — 過去のバウンス率、苦情率、過去配信時のエンゲージメント。
  5. エンゲージメントシグナル。受信者本人(または同コホート内の受信者)が過去に類似メッセージを開封・クリックしたか。直近のエンゲージメントは単一指標として最も強力なポジティブシグナルです。
  6. 最終振り分け。受信トレイ、プロモーションタブ(Gmail)、迷惑メールフォルダ、または拒否。この結果がレピュテーションに再びフィードバックされます。

以下の 5 セクションは、ステージ 2(認証)とステージ 4(レピュテーション)を扱います。ステージ 1 は主に送信リレー側の責務であり、ステージ 3 と 5 はコンテンツおよびオーディエンスに関する判断で、到達率ガイドの範囲外です。ステージ 6 は出力に当たります。一般的な商用送信者の場合、ステージ 2 と 4 を正しく設定するだけで受信トレイ到達率は 60〜80% から 95% 以上へと改善します。

本ガイドは、各種パラメーターを自らチューニングする立場にあるセルフホスト運用者を対象に書かれています。SaaS ではプラットフォームがこれらの大部分を抽象化しますが、セルフホストでは SPF レコード、DKIM 鍵ペア、DMARC ポリシー、IP ウォームアップスケジュールのすべてを自分で管理します。良いニュースは、標準仕様は公開済みかつ安定していることです。悪いニュースは、近道は存在しないことです。

§2 · SPF

SPF — Sender Policy Framework。

SPF(RFC 7208)は、自社ドメインを名乗ってメールを送信する権限を持つ IP アドレスの公開リストです。送信ドメインの単一の TXT レコードとして公開します。メールボックスプロバイダーは @yourcompany.com を名乗るメッセージを受信すると、yourcompany.com の SPF レコードを参照し「このメッセージはリストされた IP のいずれかから来たか?」と確認します。Yes なら SPF 合格、No なら不合格です。

構文

v=spf1 include:amazonses.com ~all

読み方は「SPF バージョン 1、Amazon SES が認可するものをすべて認可、それ以外はソフトフェイル」です。末尾の ~all は catch-all 句です。~all = ソフトフェイル(疑わしいとマークするが受け入れ)、-all = ハードフェイル(拒否)、?all = 中立(判断なし)。DMARC が健全になるまでは ~all を使用し、その後 -all へ引き締めます。

複数の送信元(例:アウトバウンド用の Google Workspace + マーケティング用の SES + トランザクション用の Mailgun)を使用する場合は、複数の include: メカニズムで連結します。

v=spf1 include:_spf.google.com include:amazonses.com include:mailgun.org ~all

DNS ルックアップ 10 回制限。RFC 7208 §4.6.4 では SPF 解決に必要な DNS ルックアップは合計 10 回までと定められています。各 include: は 1 回としてカウントされます。よくある失敗:5 ベンダー以上を連結して制限を超え、SPF が permerror に解決されて不合格扱いになるケース。制限に近づいている場合は dig TXT yourcompany.com と SPF フラットナーで監査してください。

AcelleMail における SPF

AcelleMail の SendingDomain モデルは app/Model/SendingDomain.php:154getSpf() を公開しており、グローバル設定の spf_record を読み込んで TXT レコード値を描画します。363 行目の verifySpf(string $ipOrHostname) メソッドは Mika56\SPFCheck ライブラリのラッパーで、実行時に DNS をライブで照会し RESULT_PASS を検証します。管理 UI の検証画面では、レコードが存在し送信 IP を認可していれば緑、それ以外は赤で表示されます。

実務的なヒント:SPF はエンベロープ送信者(SMTP レベルの MAIL FROM)のみを認証し、表示される From ヘッダーは認証しません。この差を埋めるのが DMARC のアライメントです — §4 を参照。

§3 · DKIM

DKIM — DomainKeys Identified Mail。

DKIM(RFC 6376)は送信する全メッセージに暗号署名を付与します。受信サーバーは DNS の TXT レコードから公開鍵を取得し、特定のメッセージヘッダーと本文に対して署名を検証し、計算が正しければ認証済みとして受け入れます。SPF は「この IP は当社の代理として送信を許可されている」と主張するのに対し、DKIM は「このメッセージの本文と From ヘッダーは署名後に改ざんされていない」と主張します。

仕組み

  1. RSA 鍵ペアを生成します(最小 1024 ビット、新規セットアップでは 2048 ビット推奨)。
  2. 公開鍵を {selector}._domainkey.{yourdomain} の TXT レコードとして DNS に公開します。セレクタは任意の文字列(例:k1mail20251208)で、配信中のメッセージを壊さずに鍵をローテーションするために自由に選べます。
  3. 秘密鍵は送信サーバー側に保持します。MTA(または送信リレー)は送信する各メッセージを秘密鍵で署名し、DKIM-Signature ヘッダーを付加します。
  4. 受信側メールサーバーは署名ヘッダーから d=(ドメイン)と s=(セレクタ)の値を読み取り、{s}._domainkey.{d} を照会して公開鍵を取得し、検証します。

AcelleMail における DKIM

app/Model/SendingDomain.php:221SendingDomain::generateDkimKeys() は PHP の OpenSSL バインディングを介して 1024 ビット RSA 鍵ペアを生成し、秘密鍵を dkim_private に、公開鍵を dkim_public に保存します。セレクタはモデルの dkim_selector から読み込まれ、未設定の場合はグローバル設定の dkim_selector にフォールバックします。DNS レコード値は $this->getDomain()->getDkimDnsRecord()(270 行目)で描画され、「公開する値」の横にコピーボタン付きで運用者に表示されます。

鍵生成のパターン(generateDkimKeys() より):

$config = [
    'digest_alg' => 'sha256',
    'private_key_bits' => 1024,
    'private_key_type' => OPENSSL_KEYTYPE_RSA,
];
$res = openssl_pkey_new($config);
openssl_pkey_export($res, $privKey);
$pubKey = openssl_pkey_get_details($res)['key'];

検証:$this->getDomain()->verifyDkim(){selector}._domainkey.{domain} に対して DNS を照会し、公開された公開鍵をローカルに保存されている値と比較します。モデル上の完全な verify() メソッドは、identity + DKIM + SPF + DMARC のチェックを 1 回の呼び出しで連携実行します(300 行目)。

ベンダー側で管理する DKIM

Amazon SES、SendGrid、Mailgun、その他ベンダー側で署名するサービスを使用する場合は、自前で生成する代わりにベンダーのセレクタと公開鍵を公開します。AcelleMail のドライバレベルの SignsDkimOnServer ケーパビリティ(app/SendingServers/Capabilities/SignsDkimOnServer.php を参照)は DKIM をリモートで処理するドライバを示すフラグで、UI はローカルで鍵ペアを生成する代わりにベンダーの CNAME レコードを表示します。SES は _domainkeyamazonses.com に委譲する 3 つの CNAME を使用 — 一度設定すれば、SES が背後の鍵を自動でローテーションしてくれます。

§4 · DMARC

DMARC — アライメント、ポリシー、レポーティング。

DMARC(RFC 7489)は SPF と DKIM の上に位置します。SPF や DKIM が単独では実現できない 3 つのことを行います。

  1. アライメント。SPF で検証されたエンベロープドメインまたは DKIM 署名ドメインのいずれかが、表示される From ヘッダーのドメインと一致することを要求します。アライメントがないと、SPF と DKIM は受信者から見えるドメインとは異なるドメインに対して合格でき、フィッシングが悪用するのはこの隙間です。
  2. ポリシー。アライメントが失敗したときに受信サーバーが取るべき動作を指示します:none(何もしない、レポートのみ)、quarantine(迷惑メールに振り分け)、reject(SMTP 段階でメッセージを拒否)。
  3. レポーティング。集計レポート(RUA — 自ドメインからのすべての送信に関する日次 XML レポート)と詳細レポート(RUF — 失敗ごとの個別レポート)を指定した宛先に送信します。レポートによって、自社を名乗って送信している主体を可視化できます。

構文

_dmarc.yourcompany.com.    TXT    "v=DMARC1; p=quarantine; rua=mailto:dmarc@yourcompany.com; pct=100; aspf=s; adkim=s"

読み方は「DMARC バージョン 1、アライメントに失敗したメッセージは quarantine、集計レポートを dmarc@yourcompany.com に送信、失敗メッセージの 100% にポリシーを適用、SPF と DKIM の両方で strict アライメントを要求」となります。

標準的なロールアウト

  1. 0 日目:監視中のメールボックスを指す rua= を付けて p=none を公開。7〜14 日間レポートを受信します。これは観測のみのフェーズで、メッセージは拒否されません。
  2. 14 日目:レポートをレビュー。正規の送信元(自社の SES、CRM の送信 IP、トランザクション系プロバイダー)を特定し、すべて SPF + DKIM アライメントに揃えます。
  3. 30 日目:p=quarantine; pct=10 へ引き締め。アライメント未達のメールは受信者の 10% について迷惑メール送りになります。2 週間レポートを観察します。
  4. 45 日目:pct=50、続いて pct=100 へ 2〜4 週間かけて段階的に引き上げます。
  5. 60〜90 日目:p=reject へ引き締め。アライメント未達のメールは SMTP 段階でバウンス — 自社ドメインを使用するフィッシャーはハード拒否に直面します。

ロールアウトを飛ばさないでください。DMARC 未設定から一気に p=reject へ移行することは、自滅的な到達率事故の最も多い原因です — 忘れていたトランザクション送信者(CRM、サポートツール、請求システム)が p=reject 伝播の瞬間からハードバウンスを起こし始めます。

メールボックスプロバイダーの義務化

2024 年 2 月以降、Gmail と Yahoo は、自社ドメイン宛に 1 日 5,000 通超を送信するすべての送信者に対し DMARC を必須化し、加えてアライメント済みの SPF または DKIM、ワンクリック List-Unsubscribe(RFC 8058)も求めています。Microsoft 365 も執筆時点で同じ標準に揃えています。「商用送信」のハードルは恒久的に上がりました — DMARC は約 1,000 件超のリストにとって、もはや任意ではありません。リストが小さい段階でも早めに設定してください。

§5 · BIMI

BIMI — ブランドロゴのボーナス。

BIMI(Brand Indicators for Message Identification)は、受信者の受信トレイ内でメッセージ横にブランドロゴを表示します。2025 年時点で Gmail、Yahoo、Apple Mail、Fastmail がサポートしています。認証そのものではなく到達率に隣接する機能ですが、前提条件として DMARC が p=quarantine または p=reject である必要があるため、本ガイドに含めています。

セットアップ手順(DMARC が quarantine 以上に達した後):

  1. BIMI SVG Tiny PS 仕様に従ってロゴの SVG 版を作成 — 正方形、マーク外にテキストなし、シンプルなパス。
  2. 公開アクセス可能な HTTPS URL で SVG をホストします。
  3. オプションで CA から Verified Mark Certificate(VMC)を取得 — Gmail で青いチェックマーク付きでバッジを表示するために必須、年額約 $1,500。未登録ブランド向けには Common Mark Certificate(CMC)という安価な代替もあります。
  4. BIMI レコードを公開:default._bimi.yourcompany.com TXT "v=BIMI1; l=https://yourcdn/logo.svg; a=https://yourcdn/vmc.pem"

BIMI による到達率への影響は間接的ですが測定可能です:受信トレイ内のブランドロゴは、公開されたケーススタディ(Yahoo Mail のパイロットデータ、Mailchimp の BIMI レポート)で開封率を 5〜20% 押し上げます。また強力な推進力にもなります — DMARC を強化しなければ BIMI を有効化できないため、認証クリーンアップのインセンティブとして活用するチームも多いです。

§6 · レピュテーション

レピュテーション — メールボックスプロバイダーが実際に評価する指標。

認証はバイナリです — レコードが解決してアライメントが揃うか、揃わないかのいずれかです。レピュテーションは連続値で、0 から 100 のスコアを各メールボックスプロバイダーが、送信 IP と From ドメインそれぞれに対して独立に維持しています。2 つのスコアが組み合わさってルーティング判定(受信トレイ/プロモーション/迷惑メール/拒否)が決まります。

シグナル

最強のポジティブ

エンゲージメント

受信者がメッセージを開封、クリック、返信、迷惑メールから移動するなど。近年(2020 年以降)のプロバイダースコアリングにおいて、最大の単一ポジティブシグナルです。

送信量シグナル

送信の一貫性

安定した週次送信(毎週火曜に 10K 通)は正規の運用を示します。履歴のない 50K 通のスパイクは送信量異常検知をトリガーします。

最強のネガティブ

苦情率

受信者が「スパムを報告」を押した割合。目標は < 0.1%(1,000 通に 1 通)。0.3% を超えると 48 時間以内に全プロバイダー横断でルーティングが崩壊します。

ネガティブ

バウンス率

ハードバウンス(5xx — 存在しないアドレス)はリストクリーニングの不備を示します。目標は < 2%。5% 超が継続するとほとんどのプロバイダーが積極的にスロットルをかけます。

致命的

スパムトラップ命中

プロバイダーがリスト購入元に種まきしたアドレスや、放棄されたメールボックスを再活性化させたアドレスへの送信。pristine トラップへの 1 通の命中で、ほとんどの主要プロバイダーで即座にブロックリスト入りします。

中立だが監視対象

配信停止率

健全なリストでは送信ごとに 0.1〜0.5%。配信停止は苦情よりもマシです — 「これは関係ない」と丁寧に伝える方法だからです。配信停止のハードルを下げてください。

レピュテーションスコアを確認できる場所

  • Google Postmaster Toolspostmaster.google.com)— Gmail から見た IP およびドメインレピュテーション、認証コンプライアンス、暗号化率、スパム率。無料。
  • Microsoft SNDSpostmaster.live.com/snds/)— Outlook.com の IP レベルデータ、送信元レピュテーション分類。無料、登録が必要。
  • Yahoo Sender Hub — 新しめ、Yahoo Postmaster ページから登録。ドメイン別の集計統計。
  • プロバイダーダッシュボード — Amazon SES の Reputation Dashboard はバウンス率と苦情率をしきい値付きで表示。SparkPost、Mailgun、SendGrid も同様の機能を提供。

最低でも週 1 回はどこかをチェックしてください。先行指標(スパム率の傾向、IP レピュテーションの低下)は下流効果(開封率の低下)の数日前に現れます — キャンペーンの低調に気づく頃には、レピュテーションの問題はすでに 2 週間前から始まっています。

§7 · IP ウォームアップ

IP ウォームアップ — 6 週間スケジュール。

新規送信 IP はゼロレピュテーションから始まります。メールボックスプロバイダーは設計上、新規 IP からの大量送信をスロットルします — スノーシュー型スパマーがクラウドインスタンスを立ち上げて一斉送信するのを防ぐ主要な防衛策だからです。ウォームアップとは、日次・時間次のスロットル上限の範囲内で 4〜6 週間かけて段階的に送信量を増やし、レピュテーションを有機的に構築する運用です。

これは IP ごとに 1 回だけ実施します。Amazon SES、SendGrid、Mailgun の共有 IP はウォームアップ済みで提供されるため、多くのチームはウォームアップを行う必要がありません。ウォームアップが重要になるケース:SES の専用 IP(通常は月 100 万通超で正当化)、新規クラウドインスタンス上のセルフホスト Postal MTA、ドメイン変更を伴う ESP 間移行など。

スケジュール

日次送信量 オーディエンスコホート 監視指標
150最上位エンゲージメント 5%開封率 > 30%
2100最上位エンゲージメント 5%バウンス < 2%
3〜4200〜500エンゲージメント上位 10%受信トレイ配置(プロバイダーツール)
5〜71K〜2K上位 25%苦情 < 0.1%
8〜145K → 20K上位 50%SES Reputation Dashboard が緑
15〜2125K → 100K上位 75%Postmaster Tools のスパム < 0.1%
22〜42通常の日次送信量リスト全体(6 か月以上の非アクティブを除く)開封率が安定、バウンスが低水準

SparkPost / Postmark / SES が公開しているウォームアップ推奨を 1 つの週次テーブルにまとめたスケジュールです。苦情率が上昇傾向にあれば、これより遅いペースで増やしてください。各ステップでプロバイダーから明確に「レピュテーション良好」のサインが得られた場合に限り、これより速く増やせます。

AcelleMail のウォームアップトラッキング

AcelleMail の SendingServer モデルはウォームアップ状態をファーストクラスで保持します。warmup_enabledwarmup_strategy_idwarmup_started_atsending_servers テーブルに存在し、app/Model/SendingServer.php:333isWarmupEnabled() が送信時の判定をゲートします。連携する SendingServerWarmupLog テーブルは、ウォームアップ期間中のすべての送信を日付・ステータス・シリアライズされたメタペイロードとともに記録します — app/Model/SendingServerWarmupLog.php を参照。

パターン:WarmupStrategy(日次送信量カーブを定義する行)を送信サーバーに割り当て、warmup_enabled = true に切り替え、warmup_started_at = now() を設定します。送信パイプラインの SendingServerWarmupUsage がその日のカウントを追跡し、戦略の日次上限を超えるディスパッチを拒否します。戦略の N 日目の上限が通常の日次送信量を超えた時点で、サーバーは卒業し、ウォームアップモードは自動的に解除されます。

DynamicRateTracker および InMemoryRateTracker クラス(app/Library/)は SMTP 層での分次・時次のレート制限を処理します — ウォームアップ外でも AcelleMail はリレーが公開しているレート上限を強制し、キューのサージがプロバイダー側のスロットリングを引き起こさないようにします。

§8 · バウンスと苦情

バウンス、苦情、フィードバックループ。

ハードバウンスとソフトバウンス

ハードバウンスは恒久的な失敗です — 典型的には 5xx の SMTP コード:アドレスが存在しない、ドメインが解決しない、受信者のメールボックスが恒久的に無効化された、など。AcelleMail の BounceLog モデルは app/Model/BounceLog.php:33 で定数 HARDSOFT を定義し、ハードバウンスは即座にアドレスを抑制リストに入れます。ソフトバウンスは一時的なもの — 4xx コード:メールボックス満杯、サーバー一時利用不可、メッセージが大きすぎる、など。ソフトバウンスはバックオフスケジュールでリトライされ、複数回の送信を跨いで繰り返しソフトバウンスするアドレスは最終的にハードへ降格されます。

AWS SES バウンス通知の分類マップ(AcelleMail の BounceLog.php:32 のドキュメントが参照しているソース):バウンス種別は Permanent(ハード)にサブタイプ General / NoEmail / Suppressed / OnAccountSuppressionListTransient(ソフト)にサブタイプ General / MailboxFull / MessageTooLarge / ContentRejected / AttachmentRejected;加えて Undetermined(ソフトとして扱いリトライ)。

苦情

苦情とは、受信者がメールクライアントで「スパムとして報告」を押すことです。苦情はフィードバックループ(FBL)経由で届きます — ISP が虐待として報告されたメッセージを送信者に転送するプロバイダー別の通知チャネルです。AcelleMail の app/Model/FeedbackLoopHandler.php にある FeedbackLoopHandler は IMAP/POP 経由で受信した FBL メッセージを処理し、Abuse Reporting Format(ARF、RFC 5965)ヘッダーを解析して元のメッセージ ID とフィードバック種別を抽出します。

AcelleMail が処理する ARF フィードバック種別(35 行目の FeedbackLoopHandler::FEEDBACK_TYPES による):

  • abuse — 受信者が明示的にスパムとしてマーク。即座に抑制。
  • fraud — 受信者がフィッシングとしてマーク。抑制 + セキュリティレビューにログ。
  • virus — 受信者のウイルス対策ソフトがペイロードを検知。抑制 + コンテンツ監査。
  • other — 一般的な苦情。抑制。
  • not-spam — 「これはスパムではない」という明示的な報告(まれ)。抑制対象外 — EXCLUDED_FEEDBACK_TYPES を参照。

FBL に参加している主要メールボックスプロバイダー:AOL、Yahoo、Microsoft(JMRP 経由)、Comcast、BlueTie。Gmail は公開 FBL を運用していません — 「スパムとしてマーク」のフィードバックは Postmaster Tools ダッシュボードと集計 DMARC レポートを通じて配信されます。

抑制ルール

  1. ハードバウンス → 恒久的に抑制。再試行は不要、アドレスは死んでいます。
  2. 苦情 → 恒久的に抑制。受信者が能動的に停止を求めています。再送はほとんどの法域で違法であり、レピュテーションを焼き払います。
  3. 30 日以内に 3 回のソフトバウンス → ハードへ降格し抑制。持続的なソフトバウンスはメールボックス満杯か恒常的な接続障害 — 死んだアドレスとして扱います。
  4. 配信停止 → マーケティングは抑制、トランザクションは継続。注文受領やパスワードリセットは継続、キャンペーンは停止します。
  5. スパムトラップ命中 → 調査にエスカレーション。その購読者の取得元全体を引き上げます。リストが購入またはスクレイピングされたアドレスで汚染されていた可能性が高いです。

§9 · リストクリーニング

リストクリーニング — レピュテーションを高く保つ運用規律。

認証はワンタイムのセットアップ、レピュテーションは継続的な運用規律です。指標を動かす 7 つの習慣:

  1. マーケティング登録はすべてダブルオプトイン。登録アドレスがアクティブリストに加わる前に確認クリックを求めます。タイプミス、役職アドレス(info@sales@)、収集アドレスを排除します。登録フローに 10〜20% の摩擦を加える代わりに、バウンス/苦情リスクの 50〜80% を削減できます。
  2. ワンクリック配信停止(RFC 8058)。ワンクリック URL を指す List-Unsubscribe ヘッダー。2024 年 2 月以降、自社ドメイン宛 1 日 5K 通超の送信者には Gmail と Yahoo が必須化しています。配信停止を苦情よりも簡単にしてください — 「スパム」を押そうとした受信者が代わりに「配信停止」を押すようになります。
  3. 抑制前の再エンゲージメント。90 日間開封していない購読者に「引き続き有益でありたい」キャンペーンを送ります。開封 → 維持。未開封 → サンセットキューへ移動。180 日後も未開封 → 抑制。
  4. バウンスの自動抑制。バウンス webhook を数分以内に処理し、次回キャンペーンの前にアクティブ送信リストから除外します。AcelleMail の BounceLog::record()vbrandsync 系のバウンス webhook ハンドラがこれを自動で行います。
  5. 購入リストは絶対にインポートしない。購入リストにはスパムトラップが種まきされています。トラップに 1 回命中するだけでドメインが 30 日以上 Spamhaus に掲載されます。計算は決して合いません — 購入リストはレピュテーションの恒久的な吸い込み穴です。
  6. エンゲージメントでセグメント。エンゲージメント上位 50% へは 2 倍頻度で、コールド 50% へは半分の頻度で送ります。全体の開封率は上昇し、苦情率は低下し、メールボックスプロバイダーに「この送信者は関連性が高い」という強いシグナルを送れます。
  7. オートメーション頻度に上限を設ける。ウェルカムシリーズ + 買い物かご放棄 + 購入後 + バースデー + 再エンゲージメントを組み合わせると、1 週間に 8 通になることもあります。受信者あたり 48 時間に 1 通までを総オートメーション上限とし、トランザクション(領収書、パスワードリセット)のみ厳格な例外として扱います。

§10 · AcelleMail のツール

AcelleMail の到達率ツール — ソースが同梱するもの。

app/Model/app/Library/ 配下のソースツリーから直接抜粋しています。各項目は実在するモデル、ケーパビリティインターフェース、ライブラリクラスであり、マーケティング上の表現ではありません。

app/Model/SendingDomain.php

DKIM / SPF / DMARC の検証

221 行目の generateDkimKeys()(OpenSSL 経由の 1024 ビット RSA)。363 行目の verifySpf()Mika56\SPFCheck をラップ。300 行目の verify() は identity + DKIM + SPF + DMARC を 1 回の呼び出しで統合実行。

app/Model/BounceLog.php

バウンス分類

HARD / SOFT / UNKNOWN の定数。BounceHandler がインバウンドのバウンスメールを処理し、SES の webhook ペイロードは AWS のバウンス種別タクソノミーへ直接デコードされます。

app/Model/FeedbackLoopHandler.php

FBL 処理(ARF / RFC 5965)

AOL、Yahoo、Microsoft JMRP のフィードバックループを IMAP 経由で処理。ARF ヘッダーを解析して元のメッセージ ID とフィードバック種別を復元。abuse / fraud / virus / other で自動抑制。

app/Model/SendingServerWarmupLog.php

ウォームアップ状態のトラッキング

WarmupStrategy に対する日次送信ログ。SendingServerWarmupUsage と連携して日次上限を強制。SendingServer 上の isWarmupEnabled() がディスパッチパスをゲート。

app/Library/DynamicRateTracker.php

分次/時次のレート制限

各送信サーバーに quota_value / quota_base / quota_unit。デフォルト上限は 100/分、1K/時、10K/日 — SES のサンドボックスモード上限と一致。リレーが上限を引き上げたらサーバー単位で調整。

app/Library/IdentityStore.php

検証済み送信者レジストリ

SupportsRemoteDomainVerify を公開するドライバ間で、ドメイン別・メール別の検証状態をキャッシュ。検証済みドメインを送信ごとに再確認することを避け、TTL でリフレッシュ。

app/SendingServers/Capabilities/

ドライバケーパビリティフラグ

SignsDkimOnServerSupportsRemoteDomainVerifyReceivesWebhooksSendsCustomVerificationEmailSupportsCustomReturnPathAllowsCrossSendingDomain。UI は各ドライバが実際に必要とするステップのみを表示します。

app/Model/TrackingDomain.php

カスタムクリックトラッキングドメイン

クリックリダイレクトをリレーのデフォルトトラッキングドメインではなく links.yourcompany.com から配信できるようにします。受信トレイ内でのブランド一貫性を改善し、リンクレピュテーションを汎用 ESP インフラから分離します。

§11 · トラブルシューティング

よくある到達率の問題と対処法。

「開封率が一晩で 30% 下がった」

最初にチェック:Apple Mail Privacy Protection(MPP)。Apple はプロキシサーバー上でメールを開くため、開封率が 20〜40% 上振れしているのがベースラインです。iOS のアップデートがプロキシをリセットすると、本当に下がったように見えることがあります。

次にチェック:Postmaster Tools のスパム率スパイク。0.1% を超えていれば Gmail で迷惑メールフォルダ送り領域です。

対処:MPP が原因なら問題なし — エンゲージメントシグナルとしてクリック率に切り替えます。レピュテーションが原因なら、コールドコホートを一時停止し、エンゲージメント済みのみへの 2 週間のケイデンスでエンゲージメントを再構築します。

「Gmail が受信トレイではなくプロモーションに振り分けている」

実情:2013 年以降、Gmail の商用送信者にとってプロモーションは受信トレイそのものです。プロモーションタブのメールを開いた受信者はポジティブエンゲージメントとしてカウントされます。プライマリタブを追いかけてレピュテーションを浪費せず、プロモーションタブ内でのエンゲージメントを最適化してください。

「DMARC レポートに自社を名乗る第三者が表示される」

ほぼ確実に:自社所有ドメインを使う忘れていたトランザクション送信者(Salesforce、Zendesk、Stripe の領収書など)が原因です。対処:それぞれを特定し、include: を SPF に、CNAME を DKIM に追加して再テスト。アライメントが整ったら DMARC を p=reject へ引き締めます。

「Spamhaus のブロックリストに載っている」

直ちに送信を停止。spamhaus.org/lookup で掲載クラス(ZEN、SBL、XBL、PBL)を特定します。PBL はポリシーベースで簡単に解消、SBL はレピュテーション、XBL はマルウェア関連です。

対処:Spamhaus の削除フォームで削除を申請し、是正措置(積極的な抑制、取得元の監査、24 時間の送信停止)を記録します。迅速に行動し記録を残せば、ほとんどの掲載は 24〜72 時間でクリアされます。再掲載のクリアは遅くなります。

「バウンス率が 1% から 8% に跳ね上がった」

リストインポートでアクティブセットが汚染されたか、長期休眠コホートに送って一気に死んだアドレスを刈り取ったかのいずれかです。対処:送信を停止、バウンスしたアドレスを遡及的に抑制、直近の取得元を監査、次の 2 週間はエンゲージメント 90 日コホートのみに送りながらバウンス率の回復を待ちます。

「Outlook.com で Junk 行き、Gmail では問題なし」

レピュテーションはプロバイダーごとに異なります。Outlook は新規ドメインに対して厳格な傾向があり、Gmail はエンゲージメントをより重視します。対処:Microsoft SNDS に登録し、IP の掲載分類を特定、エンゲージメント済みの Outlook 受信者のみに低速ランプキャンペーンを送って、SNDS が 2〜4 週間で緑になる様子を観察します。

§12 · FAQ

メール到達率の FAQ。

SPF と DKIM と DMARC のすべてが必要ですか、1 つで十分ですか?

3 つすべて必要です。SPF は送信 IP を認証、DKIM はメッセージ本文とヘッダーを認証、DMARC は From ヘッダーをそのどちらか一方に紐付けてアライメント失敗時の動作を受信者に指示します。3 つすべてを公開しない現代の商用送信者はいずれも、Gmail、Yahoo、Outlook から疑わしい送信者として扱われます。2024 年 2 月の Gmail / Yahoo の大量送信者要件により、これは推奨ではなくハードな最低ラインになりました。

SES や SendGrid の共有 IP を使う場合、ウォームアップは省略できますか?

はい — それが共有 IP の価値です。SES の本番 IP は成熟したレピュテーションでウォームアップ済みであり、それを継承します。ウォームアップが必要なのは専用 IP に移行する場合(通常は月 100 万通超で正当化)か、新規クラウドインスタンス上にセルフホスト Postal MTA を立ち上げる場合に限られます。

良い苦情率はどれくらいですか?

0.1%(1,000 通に 1 通)未満が健全です。0.05% 未満なら優秀。0.3% 超が継続するとプロバイダー横断で 48 時間以内にルーティングが劣化します。Amazon SES はハードな 0.1% 苦情率上限を強制しており、超過するとアカウントがレビューのため一時停止されます。

キャンペーン送信前に到達率をテストする方法はありますか?

実用的なツールは 2 つあります:シードリスト(Gmail、Outlook、Yahoo、Apple、Proton に自前アカウントを保持し、キャンペーンをまずシードリストへ送って受信トレイか迷惑メールかを確認)。そしてサードパーティのシードサービス(GlockApps、Mailtrap、Litmus)— 30 以上のプロバイダーに対する配置レポートを 1 送信あたり $50〜$100 で提供します。シードリストは無料だが手動、サードパーティは有料だが包括的です。

到達率の問題が解消するまでにどれくらい時間がかかりますか?

認証の設定ミスは 1〜4 時間 + DNS 伝播時間です。レピュテーションの回復は 2〜6 週間の規律ある送信が必要 — エンゲージメント済みコホートのみ、低ケイデンス、メトリクスが再構築される様子を観察します。Spamhaus 掲載は迅速に行動すれば 24〜72 時間でクリア。最も長く尾を引くのは苦情率スパイクからの再構築 — スパイクは一瞬、回復は長期戦です。

マーケティングメールにはサブドメインを使うべきですか?

はい。マーケティングは marketing.yourcompany.com または news.yourcompany.com から、トランザクションは notify.yourcompany.com から、社内メールはエイペックスドメインから送信します。レピュテーションはドメインごと — マーケティングを分離することで、キャンペーンの苦情率スパイクがパスワードリセットの到達率に影響することを防げます。主要 SaaS 送信者すべての標準的な慣行です。

BIMI とは何ですか、コストに見合いますか?

BIMI は対応クライアント(Gmail、Yahoo、Apple、Fastmail)でメッセージの横にブランドロゴを表示します。セットアップ費は SVG ホスティングに $0、Gmail の青チェックを得るための Verified Mark Certificate(VMC)に年額 $1,500。公開ケーススタディでは開封率が 5〜20% 上昇しています。購読者 10 万超の B2C 送信者には価値ありますが、それ以下では限定的です。

Apple Mail Privacy Protection(MPP)は開封トラッキングを壊しますか?

MPP は開封ピクセルを Apple のプロキシ経由でルーティングするため、Apple Mail で受信したすべてのメッセージは配信された瞬間に「開封済み」に見えます。Apple の読み手に対しては開封率がエンゲージメント指標ではなく配信指標になります。エンゲージメントシグナルとしてはクリック率、返信率、コンバージョンに切り替え、全体の開封率はベースラインがシフトした先行指標としてのみ扱ってください。消費者向けメールの開封の約 30〜40% が MPP 経由と推定されます。

ワンクリック配信停止は本当に必須ですか?

Gmail または Yahoo 宛に 1 日 5,000 通超を送信する送信者:はい、2024 年 2 月以降は必須です。技術要件はワンクリック POST URL を指す List-Unsubscribe ヘッダー(RFC 8058)。ボタンはログインや確認ページを求めずに配信停止を処理する必要があります。これを満たさないことは迷惑メール送りの根拠になります。

送信 IP を変更すれば到達率は改善しますか?

ほとんどの場合、正しい判断ではありません。IP の切り替えには新たなウォームアップ(4〜6 週間の送信量低下)が必要で、根本のレピュテーション問題は通常 IP ではなく From ドメインかリスト品質に由来します。例外:解消されない IP の RBL 掲載が確認されている場合、または新しい ESP が独自 IP を要求する ESP 移行。まずリスト品質と認証を解決してください。

認証済みドメイン。追跡されたバウンス。受信トレイ品質のレピュテーション。

AcelleMail は SPF/DKIM/DMARC 検証、ARF フィードバックループ処理、IP ウォームアップステートマシン、サーバー別レート制限を標準で同梱します。本ガイドのすべての主張は、ソースツリーの AcelleMail の app/Model/ または app/Library/ 内のクラスに対応しています。

AcelleMail を購入 — $80 ライブデモを試す