KARTEでは、ユーザー属性情報の送信に個人情報(identify)イベントとattributeイベントを使い分けることを推奨しています。

個人情報(identify)イベント(※以下、identifyイベントと表記します)の「attributeイベントで送る」オプションを利用すると、ユーザータグからidentifyイベントを発生させるだけで、個人情報に該当しない属性情報を別途attributeイベントに分離して送信できます。

identifyイベントとattributeイベントの使い分け

identifyイベントとattributeイベントは、個人情報への該当有無に応じて使い分けます。
詳細は attributeイベントタグの設置 をご確認ください。

  • identify:ユーザーの個人情報に該当する情報

  • attribute:ユーザーの個人情報に該当しない属性情報

個人情報が含まれるイベントの取り扱いについて にも記載の通り、identifyイベントは個人情報管理の関係上KARTEでの活用に制約があるため、性別、会員ランク、ポイントといった個人情報に該当しない属性情報はattributeイベントで送信する方が便利です。

この使い分けを簡単にするのが、identifyイベントの「attributeイベントで送る」機能です。

「attributeイベントで送る」機能

identifyイベント設定画面の「attributeイベントで送る」機能では、identifyイベントで送信されるフィールドのうち、個人情報に該当しないフィールドを指定できます。これにより、ユーザータグの設置だけ(identifyイベントタグのみ)で、指定されたフィールドをattributeイベントとして送信できます。

「attributeイベントで送る」の設定方法

ご注意ください

attributeイベントとして送信するのは、個人情報に該当しない属性情報に限定してください。

  1. イベント画面から「ユーザー情報」イベントを選択し、identifyイベントの設定画面を開きます。
    identify_setting

  2. 右上の「編集」をクリックすると、以下のようにイベントの編集画面が表示されます。

    「attributeイベントで送る」列にセレクトボックスが表示されます。

  3. 「attributeイベントで送る」列で各フィールドについて(送らない / 送る / 送り、identifyにも残す)を選択し、イベント設定を保存します。

補足

「attributeイベントで送る」列は右端にあります。画面の幅によっては右へのスクロールが必要です。

保存した設定は、identifyイベント設定画面の「スキーマ」でも確認できます。

「送らない」以外に設定すると、ユーザータグからのidentifyイベント発生時にattributeイベントが自動で発生するようになります。

「attributeイベントで送る」の選択に応じて、フィールドの扱いが変わります。

  • 送らない(デフォルト):identifyイベントとして送信されます

  • 送る:identifyイベントからは除外され、attributeイベントとして送信されます

  • 送り、identifyにも残す:identifyイベント・attributeイベントの両方として送信されます

identify_and_attribute

補足

KARTEでは、ユーザーに紐づく情報を用途に応じてidentifyイベントとattributeイベントで使い分けることを推奨しています。

「attributeイベントで送る」を利用する場合は、identifyイベントとattributeイベントの役割を分けるため、原則として「送らない」を用いて該当フィールドをidentifyに残さないことを推奨します。

ただし、既存のセグメントやフィルターイベント、データハブなどでidentifyイベントのフィールドを利用している場合、identifyから削除するとそれらに最新の値が反映されなくなる可能性があります。

すぐにidentifyから削除することが難しい場合は、段階的に移行するための手段として「送り、identifyにも残す」を利用できます。新しく作成する施策ではattributeイベントの値を利用し、既存の施策も順次attributeイベントへ移行してください。

FAQ

これまでidentifyイベントで送信していたフィールドを「送る」に変更すると、過去のデータはどうなりますか?

「attributeイベントで送る」を有効にした後は、そのフィールドはattributeイベントで送信されるようになります。

過去にidentifyイベントとして記録されたデータと新しくattributeイベントで記録されるデータは別々に管理されます。データの統合や移行は行われません。

例えば、subscriptionというフィールドに後から「送る」に設定した場合、次のようになります。

  • 変更前:identifyイベントのユーザーデータとして記録される

  • 変更後(送る):attributeイベントのユーザーデータとして記録される

「送る」または「送り、identifyにも残す」に設定したフィールドが含まれていれば、attributeイベントは必ず発生しますか?

必ず発生するわけではありません。「送る」または「送り、identifyにも残す」に設定したフィールドがあっても、そのうち1つ以上のフィールドが実際にidentifyイベントに含まれない限り、attributeイベントは発生しません。

例えば、ageというフィールドに対して「送る」または「送り、identifyにも残す」に設定している場合、次のようにageを含まずにidentifyイベントを発生させると、attributeイベントは発生しません。identifyイベントのみ発生します。

krt("send", "identify", {
   user_id: "test",
   name: "test",
});