Documentation menu

インタラクションと分析

受信者が投票に参加したり、フォームを送信したり、評価をタップしたりすると、そのインタラクションはMailInAppのホスティングされたエンドポイントによってリアルタイムに記録され、あなたのプロジェクトに帰属します。

インタラクションが届く仕組み

インタラクティブブロックは、フォールバックの考え方に沿って、2つの方法で記録エンドポイントに到達します:

  • リンク(普遍的)。 投票や評価のすべての選択肢は単純なリンクです。タップすると、そのアクションを確認して記録する軽量なホスティングページが開きます。この経路は100%のメールクライアントで機能します。
  • メール内でのフォーム送信(拡張)。 それをサポートするクライアント(Gmailのウェブ版/Android、Yahoo)では、フォームや投票は標準的なHTMLフォームエンコーディングを使ってメールから直接送信できます — ページの遷移はありません。送信後、受信者は自分が設定したページへリダイレクトされます。

どちらの経路も同じデータを受け付けるため、受信者がどのクライアントを使ったかにかかわらず、結果は1か所に集約されます。

商品ブロックの今すぐ購入のクリックは唯一の例外です: 購入はStripe自身のホスティングされたチェックアウトページ上でしか完了できないため、このエンドポイントを通じては一切記録できません。それでも、金額、通貨、数量を伴うpurchaseイベントとしてここに記録されますが、それは購入者のクリックだけではなく、Stripeのwebhookが実際に決済の完了を確認した時点でのみです。

ボットやスキャナーからの保護

企業のセキュリティツールは、スキャンするすべてのメール内のすべてのリンクをプリフェッチします。単純なリンククリックだけで投票が記録されてしまうなら、投票結果はロボットで埋め尽くされてしまいます。MailInAppは、単純なGETに対しては何も記録しません: リンクを起点としたアクションには受信者による明示的な確認アクションが必要であり、ライブビューのインタラクションはフォーム送信を通じて記録されます。ライブビューのリンクを参照してください。

エンドポイントは必然的に公開されている(受信箱側で認証はできない)ため、すべてのペイロードはサーバー側で検証され、個人化された送信は、ライブビューのリンクを保護しているのと同じ署名付きトークンを通じて帰属付けられます — 偽造された、または不一致のトークンは拒否されます。

さらに2つの仕組みが結果の信頼性を保っています:

  • 受信者単位の重複排除。 1人の受信者自身の投票、評価、リビール、フォーム送信は1回だけカウントされます — 自分のリンクを再クリックしても(せっかちな二度タップ、再試行されたページ読み込み)何も起こらず、2件目として記録されることはありません。カルーセルのスライドを繰り返し閲覧することは意図的に重複排除の対象外です。ここでは繰り返しの閲覧は二重カウントではなく、意味のあるエンゲージメント信号だからです。
  • 匿名フラッド抑制。 キャンペーンのcampaignIdはメール自身のHTMLソースに丸見えの状態で存在するため、受信者トークンを一切持たないスクリプトが任意の投票を送信することを止めるものは何もありません。帰属先のない送信は、IPアドレスごと・キャンペーンごと・1分あたりで上限が設定されます。これはベストエフォートの網であり、精密な本人確認ではありません — 企業や無料メールの共有ネットワークでは、多くの本物の受信者が1つのIPの背後にいる場合があるため、正当な開封のバーストをブロックしないよう、上限は十分に緩やかに設定されています。

記録される内容

各インタラクションイベントは次の内容を記録します:

  • そのイベントが属するプロジェクト(キャンペーン)、
  • それを発生させたブロック(どの投票、どのフォームか)、
  • (選択されたオプション、送信されたフィールド、星の数)、
  • データソースでメールが個人化されていた場合の受信者の行 — 何人答えたかだけでなく、誰が答えたかがわかります、
  • タイムスタンプ。

アンケートのライフサイクル

プロジェクトには、締切日と/または回答数の上限を設定できます(送信設定と一緒に設定します)。いずれかに達すると、記録エンドポイントはそのプロジェクトの新しいイベントを受け付けなくなります — ライブビューはエラーを出す代わりにインタラクティブブロックを終了案内に切り替えます — 一方、締切前に収集済みのデータはすべてそのまま記録され続けます。回答とWebhookを参照してください。

クリックトラッキング

単純なリンク(ボタン、リンク付き画像、ソーシャルアイコン)は投票や評価ではありませんが、それでも知っておく価値があります。個人化された受信者リンク付きでメールが送信された場合、MailInAppはこれらの単純なクリックを、本来の遷移先に向かう途中でトラッキング付きのリダイレクトを経由させます。クリックが記録された後、受信者は追加のステップや遅延なく、設定したURLに到着します。受信者コンテキストのないメール(例:トランザクションAPI経由の自由形式の送信)は、代わりに遷移先へ直接リンクします。クリックを帰属付ける対象が何もないためです。

投票や評価と異なり、クリックは決して重複排除されません — 受信者が同じボタンを5回クリックすれば5クリックとして数えられます。ここでは繰り返しのクリックが二重カウントではなく意味のあるエンゲージメント信号だからです。結果はブロックごとのクリックヒートマップに集計されます — 回答とWebhookを参照してください。

スクロール深度

ホスティングされたライブビューページは、受信者が読み進めながらどこまでスクロールしたか(ページの25%、50%、75%、100%)も報告します。これはMailInApp内で唯一、小さなスクリプトが動作する場所です。送信されるメール自体は必ず100%スクリプトフリーのままですが、ライブビューはもともと通常のホスティングされたWebページなので、そこでのスクロールリスナーは何も損ないません。マイルストーンはスクロール深度ファネルに集計されます。回答とWebhookを参照してください。

開封トラッキング

ダッシュボードから送信されるすべてのメールには、小さな不可視の開封トラッキングピクセルも含まれています。これにより、明示的なインタラクションに加えて、「開封したがエンゲージしなかった」と「一度も開封されていない」を区別する信号が得られます。回答ビューでは、インタラクションの一覧に混ぜず、受信者ごとの独立した開封済みインジケーター(最初の開封時刻)として表示されます。

これはベストエフォートの最低限の測定であり、精密な計測ではありません: Apple Mail Privacy ProtectionとGmailの画像プロキシは、受信者が実際にメッセージを開封したかどうかにかかわらず画像をプリフェッチまたはキャッシュするため、開封数は過小にも過大(誤検知)にもなり得ます。方向性を示す信号として扱い、絶対的な事実の源としては扱わないでください。

結果はどこにあるか

インタラクションデータはプロジェクトごとに収集され、3つの方法であなたに返されます:

  • 受信者ごとの回答 — ダッシュボードの回答ビューは、すべてのインタラクションを受信者ごとにグループ化し、データソースと結合して、何人が答えたかだけでなく誰が答えたかを表示します。回答とWebhookを参照してください。
  • Webhook — 各インタラクションは、届いた瞬間に自分のエンドポイントへプッシュでき、MailInAppから送られたものであることを検証できるよう署名されています。これも回答とWebhookで説明しています。
  • 受信者向けのライブ結果 — 投票ブロックは、受信者のホスティングされた結果ページでライブの結果を表示できます。

プライバシーに関する注記: MailInAppは、受信者が意図的に行ったインタラクション — 投票、送信、評価 — に加えて、上記の開封トラッキングピクセルを記録します。エンドポイントは、単純なリンクの取得時にそれ以外の付随的なトラッキングを一切記録しないよう設計されています。