Menu

BLOG ベアメールブログ

List-Unsubscribeとは? RFC8058の仕様に従って実装するポイント

Last Updated on 2024.08.5

2024年2月以降、Gmail宛にメールを送信する際のガイドラインが強化され、特に1日5000通以上Gmail宛に配信する送信者(=一括送信者)にはより厳しい送信者要件が課せられています。一括送信者向けの要件では、マーケティングメールの場合はメッセージにワンクリックの登録解除機能を搭載することが義務付けられています。そこで必要となるのがList-Unsubscribeというヘッダ情報です。 本記事ではList-Unsubscribeの仕組みや実装方法などについて詳しく解説します。

おすすめのお役立ち資料の紹介です。Googleの新送信者要件対応ガイドのダウンロードはこちらから。

List-Unsubscribeとは

List-Unsubscribeとは、電子メールのヘッダに使用されるフィールドの1つで、メール受信者がマーケティングメールやメールマガジンの購読を簡単に解除できるようにするためのものです。

List-Unsubscribeヘッダを使用すると、メールクライアント上で送信元メールアドレスの右横に「メーリングリストの登録解除」リンクが表示され、ワンクリックで購読を解除できるようになります。

Gmail上で表示されるワンクリック登録解除ボタンの例
Gmail上でワンクリック登録解除のボタンを押した際に表示されるダイアログ

オプトアウトの重要性

オプトアウトとは、メールの受け取りを受信者が拒否することです。受信者による受信拒否の意思表示や、そのための手段のこともまとめてオプトアウトと呼ばれることがあります。今回のメーリングリストの登録解除機能もオプトアウトの一手段ということになります。

そもそもメルマガなど多数のメールアドレスへ一斉配信する広告メールには、オプトアウトの方法や連絡先の表示が「特定電子メールの送信の適正化等に関する法律」および「特定商取引法」において義務付けられています。

一般的には、メールのフッタ部分に登録解除用のリンクを設置することが多いです。しかし受信者にとってオプトアウトのURLが見つけにくかったり、URLの遷移先でユーザ情報の入力を求めるなど登録解除までの操作が煩雑だったりする場合、オプトアウトの手続きの代わりに迷惑メールとして報告してしまう可能性が高まります。迷惑メールとして報告されてしまうと、送信者のレピュテーションに悪影響がある恐れもあります。

そのため、List-Unsubscribeヘッダを使用することは受信者にとって登録解除方法がわかりやすく、購読解除のプロセスを簡素化できるメリットがあります。送信者にとっても、配信リストの質やエンゲージメント率の向上、迷惑メール報告の減少といったメリットが期待できます。

Gmailの送信者ガイドラインの新要件

Googleは2024年2月以降、Gmail宛にメールを送信する際の要件を強化することを発表しました。特に1日5000通以上のメール送信者に対してはより厳しい要件が提示されています。

その送信者のガイドラインの中で、マーケティングメールの場合はメッセージにワンクリックでの登録解除機能を実装することが義務付けられています。以下がGoogleのガイドラインからの抜粋です。

マーケティング目的のメールと配信登録されたメールは、ワンクリックでの登録解除に対応し、メッセージ本文に登録解除のリンクをわかりやすく表示する必要があります。

ワンクリックでの登録解除を設定するには、送信メールに次の両方のヘッダーを含めます。
・List-Unsubscribe-Post: List-Unsubscribe=One-Click
・List-Unsubscribe: <https://solarmora.com/unsubscribe/example>

受信者がワンクリックで登録解除すると、次の POST リクエストが届きます。
“POST /unsubscribe/example HTTP/1.1
Host: solarmora.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 26
List-Unsubscribe=One-Click”

引用元:Google Workspace管理者ヘルプ「メール送信者のガイドライン」https://support.google.com/a/answer/81126?hl=ja (2024/2/14 確認)

Gmailの送信者ガイドラインのよくある疑問

Q. すべてのメールにワンクリック登録解除が必要? マーケティングメールとは?

A. ワンクリックでの登録解除が義務付けられるのはマーケティングやプロモーション関連のメールであり、ユーザの登録確認、パスワードの再設定、予約の通知といったトランザクションメールは対象外であると明言されています。

ただし、Google側がどのように「マーケティングメール」であるか判定するかは不明瞭なため、トランザクションメール以外の一斉配信するメールについてはワンクリックでの登録解除に対応しておいた方が安全でしょう。

Q. いつまでに対応する必要がある? 対応しなかった場合はどうなる?

A. 既に2024年2月よりガイドラインが段階的に適用され、要件を満たしていない送信者は一部で一時的なエラーが発生するようになっていますが、ワンクリックでの登録解除に関しては2024年6月1日までに実装すれば良いと猶予期間が設けられています。それ以降については、要件を満たせていない場合メールが拒否されたり、迷惑メールフォルダに配信されたりすることになります。

Q. 配信停止のURLリンクが本文中にあるのではダメ?

A. ワンクリックでの登録解除は、List Unsubscribeヘッダを追加して実装する必要があります。メール本文にリンクを記載しているだけではワンクリック登録解除の要件を満たしたことにはなりません。

参考:Google Workspace 管理者ヘルプ「メール送信者のガイドラインに関するよくある質問」https://support.google.com/a/answer/14229414 (2024/2/14 確認)

その他のGmailの送信者ガイドラインについて詳しくはこちらの記事でも解説しています。
2024年2月以降Gmailに送信するための新要件とは? 新しい送信者ガイドラインへの対応策 | ベアメールブログ

List-Unsubscribeの仕組み

List-Unsubscribeは次のような仕組みで機能します。

  1. List-Unsubscribeヘッダを追加したメールを送信します。
  2. 受信側のスパム判定をクリアして無事受信されると、受信者のメールクライアントがList-Unsubscribeヘッダを認識して、メールに購読解除ボタンを表示します。配信を停止したい受信者は購読解除ボタンをクリックします。
  3. 購読解除をクリックすると、メールクライアントが自動的に購読解除リクエストを送信し、送信者があらかじめ用意したサーバーでリクエストを受理します。
  4. リクエストを処理し、購読解除を希望した受信者を配信先リストから除外します。※配信先リストからの除外は48時間以内に行うことをGoogleは推奨
ワンクリック登録解除が機能する流れの図解

List-Unsubscribeの実装方法

ここでは具体的にList-Unsubscribeヘッダの追加方法について解説します。

RFC8058のList-Unsubscribeの仕様

GmailのガイドラインではList-UnsubscribeをRFC8058にしたがって実装するように指示されているため、RFC8058の内容から確認していきます。ここでは送信者が対応すべき内容の中心的な部分のみ引用し、ポイントをまとめます。

RFC8058:Signaling One-Click Functionality for List Email Headers
3.Implementation
3.1. Mail Senders
A mail sender that wishes to enable one-click unsubscriptions places one List-Unsubscribe header field and one List-Unsubscribe-Post header field in the message.
The List-Unsubscribe header field MUST contain one HTTPS URI.  It MAY contain other non-HTTP/S URIs such as MAILTO:.
The List-Unsubscribe-Post header MUST contain the single key/value pair “List-Unsubscribe=One-Click”.
As described below, the message MUST have a valid DomainKeys Identified Mail (DKIM) signature that covers at least the List-Unsubscribe and List-Unsubscribe-Post headers.

引用元:「RFC8058 Signaling One-Click Functionality for List Email Headers」https://datatracker.ietf.org/doc/html/rfc8058 (2024/2/14 確認)

翻訳:
RFC8058:リストメールヘッダのワンクリック通知機能
3.実装
3.1.
メール送信者ワンクリック・アンサブスクリプション(購読解除)を有効にしたいメール送信者は、メッセージ中に一つの List-Unsubscribe ヘッダフィールドと一つの List-Unsubscribe-Post ヘッダフィールドを置く。
List-Unsubscribe ヘッダは一つの HTTPS URI を含まなければならない[MUST]。
MAILTO:のような他の非HTTP/S URIを含んでもよい[MAY]。
List-Unsubscribe-Postヘッダは一つのkey/valueペア “List-Unsubscribe=One-Click” を含まなければならない[MUST]。
以下に述べるように、メッセージは少なくともList-Unsubscribeヘッダと List-Unsubscribe-Postヘッダをカバーする有効なDKIM(DomainKeys Identified Mail)署名を持たなければならない[MUST]。

RFC8058のポイント

引用していない部分含め、メール送信者がList-Unsubscribeを実装する際のポイントをまとめると以下となります。

  • 一つの List-Unsubscribe ヘッダフィールドと一つの List-Unsubscribe-Post ヘッダフィールドを置くこと。(MUST)
  • List-Unsubscribe ヘッダは一つの HTTPS URI を含むこと。(MUST)
  • List-Unsubscribe-Postヘッダは一つのkey/valueペア「List-Unsubscribe=One-Click」を含むこと。(MUST)
  • List-Unsubscribeヘッダと List-Unsubscribe-Postヘッダをカバーする有効なDKIM(DomainKeys Identified Mail)署名を行うこと。(MUST)
  • List-UnsubscribeとList-Unsubscribe-Postヘッダは、有効なDKIM-Signatureヘッダフィールドの「h=」タグに含むこと(MUST)
  • List-UnsubscribeヘッダのURIには、メール受信者とその受信者が削除されるリストを特定するために十分な情報を含ませること。(MUST)
  • List-UnsubscribeヘッダのURIは、購読者やリストの情報が外部から解読されないようにするべき。(SHOULD)
  • POSTリクエストにはcookie、HTTP認証、その他のコンテキスト情報は含ませない。(MUST NOT)
  • メール送信者はリクエストに対し、HTTPSリダイレクトを返してはならない(MUST NOT)
  • メール送信者は、List-Unsubscribe ヘッダで指定された URI への POST リクエストを受理し、配信停止リクエストを処理するためのサーバーを用意する必要がある。

RFC8058の内容を確認すると、List-Unsubscribeヘッダを追加するだけでなく、受信者を識別するためのURIや、DKIM署名、POST処理を行うサーバの用意などが必要であることがわかります。

List-Unsubscribeヘッダの例

①シンプルなパターン

List-Unsubscribe: <https://example.com/unsubscribe/opaquepart>
List-Unsubscribe-Post: List-Unsubscribe=One-Click

②複合パターン

List-Unsubscribe:
       <mailto:request@example.com?subject=unsubscribe>,
       <https://example.com/unsubscribe.html?opaque=123456789>
List-Unsubscribe-Post: List-Unsubscribe=One-Click

②のパターンのように、List-Unsubscribeヘッダで指定する値を併記することで両方を同時に使用することも可能です。

  • HTTPS:配信停止のリクエストを処理するためのURLを指定する
  • mailto:配信停止のリクエストをメールで送信するメールアドレスを指定する

ただし、RFC8058に従うのであればHTTPSは必ず指定する必要があります。

また実装のポイントにあったように、購読解除URLは受信者を特定するために対象サービスごと、宛先ごとにユニークなURLにする必要があります。そしてURLからは対象のメールアドレスやリストの情報が識別できないようにすることが望ましいです。実装後は登録解除機能が正しく動作するかテストを行いましょう。

まとめ

2024年2月以降Gmail宛にメールを送信する際の要件が強化され、マーケティングメールの場合はメッセージにワンクリックでの登録解除機能を搭載することが義務付けられました。これを実現するために必要なヘッダ情報がList-Unsubscribeです。確実なメール配信を行うために、List-Unsubscribeの実装方法について理解し適切な対応を行いましょう。ワンクリックでの登録解除機能の実装は2024年6月1日までに対応すれば良いとされていますが、リクエストを処理するための仕組みを整える必要があるため、なるべく早めに実施することをおすすめします。