バウンスとブロックが発生する7つの原因
この記事は Introducing: Bounce and Block Classifications の抄訳です。
送信したメールが届かない理由には様々なものがあります。例えば、受信トレイの容量がオーバーしているなどの単純な理由もあれば、送信者のレピュテーションに問題があるといった複雑な理由もあります。いずれにせよ、メールが届かないと、Webサイトへのアクセスが減少したり、サイト訪問者の購入機会を逃してしまったりすることになるでしょう。そのため、メールがバウンスまたはブロックした理由を把握することは非常に重要です。
バウンスとブロックの原因を突き止めるためには?
何らかの問題により宛先にメールが届かなかった場合、メールボックスプロバイダは、差出人にそのことを通知します。この通知には、RFCに則ったステータスコードと、バウンスまたはブロックの理由が記載されており、通常、ステータスコードが5XXはハードバウンス(恒久的な送信エラー)を、4XXはブロックを意味します。
しかし、すべてのメールボックスプロバイダがこのルールに準拠しているわけではないことに注意が必要です。しかもメッセージの内容も様々で、発生した事象とその原因を突き止めるのは暗号を解読するような苦労が必要になります。本記事ではその苦労を少しでも楽にするため、バウンスやブロックが発生する原因を7つに分類してご紹介します。
バウンスとブロックが発生する7つの原因
分類した7つの原因について、以下に示します。調査や対応の際の参考にしてみてください。
Invalid address(宛先メールアドレスが無効)
宛先に指定したメールアドレスが無効であるケースです。過去に送信できていたメールアドレスであっても、ある日突然無効になる可能性があるため、注意が必要です。(長期間使用されていないメールボックスを定期的に削除するプロバイダも存在します。)一般的な原因は以下のとおりです。
- 宛先メールアドレスが構文的に正しくない
- 受信者のメールボックスが存在しない
Technical failure(技術的要因によるエラー)
技術的な要因でメールの受信が拒否されるケースです。しかし、どこに問題があるのか特定することが非常に難しく、また、送信側/受信側のいずれも原因となり得るため、詳しい調査が必要です。一般的な原因は以下のとおりです。
- 送信者のドメイン認証に必要なDNSレコードを設定していない、もしくは設定に誤りがある
- 送信ドメイン認証に失敗している
Content(コンテンツ)
メールのコンテンツにスパムや悪意のある要素が含まれている、または、その他の信頼できない要素があると判断され、受信が拒否されるケースです。メールボックスプロバイダは、不適切なコンテンツであることを理由にメールの受信を拒否することがあります。一般的な原因は以下のとおりです。
- コンテンツ内に不審なリンクやURLが記載されている
- 本文が長すぎる
- 添付ファイルのサイズが大きすぎる、または添付が許可されていない
- テキストと画像の比率が適切でない
- スパムや悪意のあるコンテンツを含む
Reputation(レピュテーション)
送信元ドメインまたは送信元IPアドレスのレピュテーションに問題があると判断され、受信が拒否されるケースです。メールボックスプロバイダは、複雑なアルゴリズムを使用して送信者のレピュテーションを確立し、受信可否の判断に利用しています。
Frequency or volume too high(大量/高頻度のメール送信)
メールの送信数が多すぎる、送信間隔が短すぎて処理が追いつかない、または処理すべきでないと判断され、受信が拒否されるケースです。
Mailbox unavailable(メールボックスが利用不可)
受信者のメールボックスに何らかの問題があり、宛先のメールサーバがメールを受信トレイに届けることができないケースです。Invalid address(宛先メールアドレスが無効)とは異なり、単にそのメールアドレスが一時的に利用できない状態です。
その他
上記6つ以外にも、拒否された理由がエラーメッセージから読み取れないケースもあります。多くのメールボックスプロバイダは何が問題なのか推測可能なメッセージを返しますが、一部のプロバイダは「550 there was a problem」のような、詳細が読み取れないメッセージを返すことがあります。
Twilio SendGridでバウンスとブロックの原因を確認する方法
SendGridを使ってバウンスやブロックの原因を調べるには、次の2つの方法があります。
- Activity機能
メールボックスプロバイダから返されたバウンスやブロックの理由は、ActivityのEvent Historyで確認できます。上記の分類を参考に原因を調査しましょう。 - Event Webhook機能
Event Webhookを使うと、バウンスやブロックの理由を含むイベントデータを任意のURLにPOSTできます。
さらにこの機能では、不達の原因を上記の7つに分類した情報も取得できます(POSTされるデータのbounce_classificationパラメータをご覧ください)。難解なメッセージをゼロから読み解かなくても大まかな原因を捉えることができるので、詳しい調査の入口や傾向の分析に活用できます。
適切に対応すれば、メールは受信トレイに届くようになるはずです。自身で解決できない問題がある場合は、ぜひサポートまでお問い合わせください。