Amazon SESのトラッキングにカスタムドメインが利用できます

ウィスキー、シガー、パイプをこよなく愛する大栗です。

先月Amazon SESで開封やクリックのトラッキングが可能になりましたが、トラッキング用のURLにカスタムドメインを利用できるようになりました。

トラッキングにカスタムドメインを利用

先月Amazon SESではメールの送信状況だけでなくURLのクリック状況やメールの開封をトラッキングできるようになりました。

Amazon SESで開封やクリックのトラッキングが可能になりました。

しかし、URLのクリック状況やメールの開封で使用されるドメインは以下の通りになっています。

リージョン トラッキングドメイン
米国西部 (オレゴン) r.us-west-2.awstrack.me
米国東部 (バージニア北部) r.us-east-1.awstrack.me
EU (アイルランド) r.eu-west-1.awstrack.me

現在はメールの半数以上がSPAMメール(シマンテックの月間脅威レポートによると2017年8月に55.3%のメールがSPAMとなっています)であるため、メールに記載されているドメインが送信者と関係がない物は不審と判断されかねません。

その問題を解消するためトラッキングで使用するドメインを自分で管理しているものが使用できます。

試してみる

設定を行う

基本的に前回の記事と同様の流れで設定していきます。

事前準備として、まずメール送信環境を構築します。前回エントリーを御覧ください。ここで注意ですが、送信元の確認はドメインで行ってください。確認したドメインを使ってトラッキングドメインを使用できるようになります。今回はoguri.example.comドメインを使用します。

次にドメインの設定を行います。以下はRoute 53でドメインを管理している場合の設定です。 トラッキング用ドメインはサブドメインのcustom.oguri.example.comを使用します。

custom.oguri.example.comのCNAMEとして、以下のFQDNを設定します。

リージョン トラッキングドメイン
米国西部 (オレゴン) r.us-west-2.awstrack.me
米国東部 (バージニア北部) r.us-east-1.awstrack.me
EU (アイルランド) r.eu-west-1.awstrack.me

Route_53_Management_Console

次にトラッキング設定を行います。

SESのConfiguration SetsからCreate Configuration Setをクリックします。

SES_Management_Console

Configuration Setの名前を決めます。ここではconfig-custom-domainとします。

SES_Management_Console

作成したConfiguration Setを選択して編集画面へ遷移します。ここで開封やクリックのイベントの出力先を選択します。今回はCloudWatchを選択して設定します。

Event typesClickOpenを選択します(他のものはメール受信者にドメインが見えないため今回は設定しません)。するとDomainの項目が現れてきます。Use your own subdomainを選択して、送信アック人をしたoguri.example.comを選びサブドメインでcustomを入力してcustom.oguri.example.comとします。Value Source、Dimension Name、Default Valueは前回と同様にします。

SES_Management_Console

これで設定は完了です。

メール送信して確かめる

Management Consoleからメールを送信します。Email Addressesを開き、送信元メールアドレスを選択して、Send a Test Emailをクリックします。

SES_Management_Console

Email FormatをRawにして以下の内容を送信します。ただしX-SES-CONFIGURATION-SETで今回設定したConfigration Setのconfig-custom-domainを設定することを忘れないでください。

X-SES-MESSAGE-TAGS: Dim=Mail001
X-SES-CONFIGURATION-SET: config-custom-domain
Subject: Tracking Test 001
From: test-to@example.com
Content-Type: multipart/alternative;
	boundary="----=_boundary"

------=_boundary
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 7bit

This is a test. 
<a href="https://dev.classmethod.jp/author/oguri-hajime/">Click The Link !</a>
------=_boundary--

SES_Management_Console2

すると、以下のようにメールが届きます。

Tracking_Test_001_-_oguri_hajime_classmethod_jp_-_Classmethod_jp_メール

メールソースを確認すると以下のようになっています。23行目のリンクと画像のURLのドメインがcustom.oguri.example.comになっています。

Delivered-To: oguri@example.com
Received: by 10.25.158.4 with SMTP id h4csp1234567lfe;
        Mon, 18 Sep 2017 22:16:49 -0700 (PDT)
   ・
   ・
 中略
   ・
   ・
Subject: Tracking Test 001
From: oguri.hajime@example.com
Content-Type: multipart/alternative; boundary="----=_boundary"
MIME-Version: 1.0
Message-ID: <0101015e98913c44-7c074363-c991-4cb0-879d-607aac573f1f-000000@us-west-2.amazonses.com>
Date: Tue, 19 Sep 2017 05:16:48 +0000
X-SES-Outgoing: 2017.09.19-203.0.113.24
Feedback-ID: 1.us-west-2.ACmPL/Uy2r12345678Fh2pzm81xWJABCDEFGHoCoM3g=:AmazonSES

------=_boundary
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 7bit

This is a test. 
<a href="http://custom.oguri.example.com/CL0/http:%2F%2Fdev.classmethod.jp%2Fauthor%2Foguri-hajime%2F/1/1234565e12345c12-7c123456-c123-1cb2-123d-123aac123f1f-000000/AbCdEfGh3QuI1semN7eGeAqIFkZUPXcGZiZAbCdEfGh=2">Click The Link !</a><img src="https://custom.oguri.example.com/CI0/1234567898913c44-7c074363-c991-4cb0-879d-607aac573f1f-000000/AbCdEfGhVhEouaQlo2hww0zx8WLxHOFubmCAbCdEfGh=2" style="display: none; width: 1px; height: 1px;">

------=_boundary--

さいごに

リテラシーがあるユーザへのメール送信では利用しているサービスと判断できないリンクなどは踏まれない可能性があります。自前のドメインのリンクにすることでクリック率の向上などにも繋がるのではないでしょうか。