Gmailのone-click unsubscribeの挙動
2023/12/24時点
なお、List-UnsubscribeヘッダやList-Unsubscribe-Postヘッダがちゃんとあっても、ボタンが表示されないケースがあることに注意(bulk senderかどうかを判断してる?)
ボタンの見え方
送信元メールアドレスの右横に「メーリングリストの登録解除」のボタンが表示される

ボタン押下後のモーダル
パターン1
今後
送信元Fromの表示名から同様のメールを受け取らないようにしますか?

ボタン押下後の挙動
List-Unsubscribeヘッダに指定しているURLにPOSTリクエストがとぶ。
該当するケース
- RFC 8058の規定通り、
List-Unsubscribeヘッダ(http(s)を指定)とList-Unsubscribe-Postヘッダがメールヘッダにある場合- そのうち、
List-Unsubscribeヘッダにmailtoも指定されていて、ヘッダ内の順番がhttp(s)の方が先の場合もこのパターン -
List-Unsubscribeヘッダにhttp(s)とmailtoが共に指定されていて、ヘッダ内の順番がmailtoの方が先の場合は、パターン2
- そのうち、
パターン2
今後
送信元Fromの表示名から同様のメールを受け取らないようにしますか?ご利用のメールアカウントからList-Unsubscribeヘッダのmailtoに指定されているメールアドレス宛てにメールを送信することで、Gmailがユーザーに代わって配信停止処理を行います。

ボタン押下後の挙動
List-Unsubscribeヘッダに指定しているメールアドレスにメールが送信される。送信トレイを見ると送信したメールが確認できる。
該当するケース
-
List-Unsubscribeヘッダにmailtoのみが指定されている場合 - RFC 8058の規定通り
List-UnsubscribeヘッダとList-Unsubscribe-Postヘッダがあるが、List-Unsubscribeヘッダにhttp(s)とmailtoが共に指定されていて、ヘッダ内の順番がmailtoの方が先の場合
パターン3
このようなメールを受け取らないようにするには、
送信元Fromの表示名のウェブサイトにアクセスして配信登録を解除してください。

ボタン押下後の挙動
クリックするとウェブサイトに移動する(GETリクエスト)
該当するケース
-
List-Unsubscribeヘッダにhttp(s)が指定されているが、List-Unsubscribe-Postヘッダがない場合 -
List-Unsubscribeヘッダがないが、本文内に配信停止ページへのリンクがある場合の一部- Gmail側が本文内に配信停止リンクがあることを判別できる場合のみだと思われる
パターン4
今後
List-IDヘッダの値から同様のメールを受け取らないようにしますか?

該当するケース
- RFC 8058に準拠しており、かつ
List-IDヘッダがある場合
List-Unsubscribeヘッダにmailtoのみが指定されていて、かつList-IDヘッダがある場合は違う表示かもしれない(未確認)
24/01/13追記
List-Unsubscribeヘッダにmailtoが指定されている、もしくはRFC 8058に準拠している(List-Unsubscribeヘッダにhttps+List-Unsubscribe-Postヘッダ)場合、受信トレイの一覧でそのメールをホバーすると右に「配信停止」のボタンが表示される。ボタン押下後のモーダルは上と同じ。

List-Unsubscribeヘッダがない、あるいはList-UnsubscribeヘッダにhttpsのみあるがList-Unsubscribe-Postヘッダがないケース(上のパターン3)では、これは表示されていない。
TL;DR
List-Unsubscribe等で配信停止の動線を用意している場合、「迷惑メールを報告」ボタンを押すと、迷惑メール報告するか配信停止するか選べる。
「迷惑メールを報告」のボタン押下の挙動
One-click Unsubscribeを実装している場合
※RFC 8058に準拠しているケース。一番上のコメントのパターン1。
メールを開いた画面上の「迷惑メールを報告」ボタンを押したとき

迷惑メールの報告または登録解除を行いますか?
Gmail は sender からの登録解除を行うことができます。
このメッセージの配信登録を行っていない場合は、迷惑メールとして報告してください。この報告は、すべての Gmail ユーザーを不要なメールから守るのに役立ちます。 詳細を表示
- 「迷惑メールを報告」のボタンを押すと、配信停止するボタンも表示される。しかもそっちがプライマリのボタン。
- 上の文言はどのメールも共通(「sender」固定)。
メール一覧画面上の「迷惑メールを報告」ボタンを押したとき

メールを複数選択して「迷惑メールを報告」できる。この場合も表示されるモーダルは一緒。
- RFC 8058に準拠しているメールを複数選択して「迷惑メールを報告」すると、「sender」が「senders」になる。
- List-Unsubscribeに対応していないメールも一緒に選択して「迷惑メールを報告」しても、同じモーダルが表示される(ボタン押下後どういう挙動になるかは不明)。
List-Unsubscribeヘッダでmailtoを指定している場合
※一番上のコメントのパターン2。
メールを開いた画面上の「迷惑メールを報告」ボタンを押したとき

迷惑メールの報告または登録解除を行いますか?
Gmail が
mailtoに指定したメールアドレスにメールを送信して登録解除を行うことができます。
このメッセージの配信登録を行っていない場合は、迷惑メールとして報告してください。この報告は、すべての Gmail ユーザーを不要なメールから守るのに役立ちます。
モーダルの文言が変わるができることは一緒。
メール一覧画面でメールを選択して「迷惑メールを報告」ボタンを押したとき
- 1通だけ選択した場合、メール開封時と同じモーダル。
- List-Unsubscribeに対応していないメールも一緒に選択した場合も、上と同じ。
- RFC 8058準拠のメールと一緒に選択した場合も、上と同じ(mailtoのメアド表示のみ)。
- mailto対応のメールを複数選択すると、複数分のmailtoが表示された。
One-click Unsubscribeを実装していない場合
一番上のコメントのパターン3の場合
「パターン3」とは、以下により、送信元メールアドレスの右横に「メーリングリストの登録解除」のボタンが表示されているケース。
- List-Unsubscribeヘッダにhttp(s)が指定されているが、List-Unsubscribe-Postヘッダがない場合
- List-Unsubscribeヘッダがないが、本文内に配信停止ページへのリンクがある場合の一部
- Gmail側が本文内に配信停止リンクがあることを判別できる場合のみだと思われる
このパターンでも、迷惑メール報告を回避する動線が表示される。

迷惑メールの報告または登録解除を行いますか?
送信者のウェブサイトにアクセスして配信登録を解除してください。
このメッセージの配信登録を行っていない場合は、迷惑メールとして報告してください。この報告は、すべての Gmail ユーザーを不要なメールから守るのに役立ちます。 詳細を表示
パターン3に当てはまらない場合
パターン3に当てはまらない場合とは…
- List-Unsubscribeヘッダも本文内の配信停止ページへのリンクもなく、送信元メールアドレスの右横に「メーリングリストの登録解除」のボタンが表示されていない
- 本文内に配信停止ページへのリンクがあるが、Gmailによってそれが認識されず、「メーリングリストの登録解除」のボタンが表示されていない
この場合、「迷惑メールを報告」ボタンを押すと選択の猶予なく報告される。