SendGrid コンソール画面上の表示数と実際の値の乖離について
SendGrid と 計測
データを活用して何か施策を…と考えたとき、まず最初に思いつくのは メール配信系の施策 ではないでしょうか。
一度にたくさんのメールを配信するにあたっては、配信用のサービスが必要になってくるわけですが、その中でも SendGrid は特にメジャーなサービスと言えるでしょう。
というわけで、我々も SendGrid を使っておりまして、配信するだけでなく可視化にも取り組んでいるのですが、
先日、実際の施策業務に当たっているチームから、 SendGrid の WEB 画面上で確認出来る「UNIQUE OPENS」の値と、こちらの可視化基盤で見られる値が乖離しているという指摘を受けました。
実際に確認してみると、確かに数%ズレていることがわかったので、その際に行った検証と、実際なぜ「ズレる」のかについてまとめていきます。(2025年2月時点での検証結果となります)
SendGrid のデータ計測方法
SendGrid での配信データの可視化を行うためには、2つの方法があります。
WEB 画面での確認
一つは SendGrid 自体の画面での確認です。
一番手っ取り早いですし、おそらく多くの方がこの方法で確認していると思います。
「Stats > Overview」などで確認出来ます(UIのバージョンにより表示には違いがあります)
Webhook によりデータを連携しての確認
上記 Stats では集計されたデータを主に確認出来ますが、自分たちのデータとメールアドレスをベースに紐付けての分析などを行いたいケースもあります。
そういったときには、 「Settings > Mail Settings > Event Webhooks」より、イベントが起きるたびに特定のエンドポイントに対してデータを送信することが出来るので、こちらを活用します。
簡易的には、 Cloud Functions…もとい、Cloud Run 関数などで受けのエンドポイントを用意して、そこから BigQuery に 流し込むなどが考えられるのではないでしょうか。
open / click / delivered / processed / bounce / dropped / deferred / spamreport / unsubscribe / group_resubscribe / group_unsubscribe といった、主要なイベントは全てとれますし、どのキャンペーンで起きたイベントなのかというのもデータとしてとれますので、データを溜めていける環境がある場合は設定しておいたほうが良いものといえるでしょう。
UNIQUE OPENS の違い
ここからが本題です。
ある日、上記2通りの方法の間で「UNIQUE OPENS」の値がズレていることを指摘されました。
検証開始
たしかにデータにズレを確認したので、とりあえずテスト用のアカウントからテストのメールを発射し、2つの受信アドレスで開封し、OPEN イベントを起こしてみます。
1週間経って、SendGrid の画面から状況を確認します。
当たり前ですが、2つの受信アドレスで開封しているので、 UNIQUE OPENS は「2」 です。
いざ、1週間以上前に開封したメールアドレスで再度開封してみます。
Webhook で受けているデータを参照すると、確かに同じメールアドレスで open が起きていることがわかります。
(※メールアドレスはハッシュ化しています)
ということは、本来、 UNIQUE OPENS は 「2」のままのはずです。
が…確認してみると
UNIQUE OPENS が 3 にハネています!
このように、 「ユニークな開封数は時間経過後の開封によって再度カウントされてしまいうる」 ということになります。
なぜそうなるか
上記のように SendGrid の画面上ではユニークな開封数で重複したカウントがあることがわかりました。
原因について調べてみると、 SendGrid の Pricing ページ の中の「Actionable Analytics」の項目を確認するとわかるのですが、Searchable Email Activity については Free Trial / Essentials で 3 days included、Pro 以上のプランで 7 days of history となっています。
つまり、 配信状況の履歴の保存期間については3〜7日が基本となっている ようです。(アドオンで30日まで伸ばせるようです)
なので、 1週間以上経過してから再度開くと、ユニークかどうかを照らし合わせる対象のデータがなくなっているので、ユニークなものとして開封がカウントされる ものと思われます。
まとめ
今回は SendGrid の画面でみるユニークな開封数が多く出てしまう、という内容についての検証でした。
厳密な値を出したければ、Webhookでデータを受信しておくのが一番よさそうです。メールアドレスを紐付けての分析にも使える、ということもあります。
どちらかに絞って見ていくぶんには問題無いのですが、より簡単に閲覧出来る SendGrid の画面のほうが大きく(効果が良く)出てしまうのが少し厄介なところではあります…
マーケティング施策においてメール配信はまだまだ大きな役割を担っていると思いますので、こういった細かい点にも留意しながらデータを見て改善のサイクルを回していくことが大切ですね。