既知の顧客向けにユーザー エクスペリエンスをカスタマイズする

共有ストレージ ワークレットを使用して既知のお客様を特定します。

Shared Storage API はプライバシー さまざまな用途をサポートする汎用のクロスサイト ストレージ向けのサンドボックス案 見ていきましょう。一例として、既知の顧客の特定があります。 Chrome 104.0.5086.0 以降でテストできます。

ユーザーがサイトに登録されたかどうかを共有ストレージに保存できます。 ユーザーが保存したステータス( 「既知」のできます。

既知の顧客を設定する

共有ストレージ内の既知の顧客の識別を試すには、Chrome 104.0.5086.0 以降を使用していることを確認してください。chrome://settings/adPrivacy で、すべての広告プライバシー API を有効にします。

コマンドラインで --enable-features=PrivacySandboxAdsAPIsOverride,OverridePrivacySandboxSettingsLocalTesting,SharedStorageAPI,FencedFrames フラグを使用して共有ストレージを有効にすることもできます。

コードサンプルでテストする

ユーザーが別のサイトで確認されたかどうかに基づいて、異なる要素をレンダリングできます。たとえば、決済機関が「Register」の情報をまたは「今すぐ購入」ユーザーが決済機関のサイトで登録しているかどうかによって、このボタンが表示されます。共有ストレージを使用すると、ユーザーのステータスを設定し、そのステータスに基づいてユーザー エクスペリエンスをカスタマイズできます。

この例では、次のようになります。

  • known-customer.js はフレームに埋め込まれています。このスクリプトは、サイトの「登録」ボタンを表示するオプションを設定します。(「今すぐ購入」など)。
  • known-customer-worklet.js は、ユーザーが認識されているかどうかを決定する共有ストレージ ワークレットです。ユーザーがわかっている場合は、情報が返されます。ユーザーが不明の場合は、その情報が返され、「Register」の画面が表示されます。ボタンをクリックすると、ユーザーは「既知」としてマークされます。

known-customer.js

// The first URL for the "register" button is rendered for unknown users.
const BUTTON_URLS = [
  { url: `https://${advertiserUrl}/ads/register-button.html` },
  { url: `https://${advertiserUrl}/ads/buy-now-button.html` },
];

async function injectButton() {
  // Load the worklet module
  await window.sharedStorage.worklet.addModule('known-customer-worklet.js');

  // Set the initial status to unknown ('0' is unknown and '1' is known)
  window.sharedStorage.set('known-customer', 0, {
    ignoreIfPresent: true,
  });

  // Run the URL selection operation to choose the button based on the user status
  const fencedFrameConfig = await window.sharedStorage.selectURL('known-customer', BUTTON_URLS, {
    resolveToConfig: true
  });

  // Render the opaque URL into a fenced frame
  document.getElementById('button-slot').src = fencedFrameConfig;
}

injectButton();

known-customer-worklet.js

class SelectURLOperation {
  async run(urls) {
    const knownCustomer = await sharedStorage.get('known-customer');

    // '0' is unknown and '1' is known
    return parseInt(knownCustomer);
  }
}

register('known-customer', SelectURLOperation);

ユースケース

これらは、共有ストレージのユースケースのほんの一部です。フィードバックを受け取ったり、新しいユースケースを発見したりするにつれて、例は引き続き追加されます。

コンテンツの選択

共有ストレージで収集された情報に基づいて、さまざまなウェブサイトのさまざまなコンテンツをフェンスド フレームで選択して表示します。これらのユースケースの出力ゲートウェイは URL 選択です。

  • クリエイティブのローテーション: クリエイティブ ID、視聴回数、ユーザー インタラクションなどのデータを保存して、ユーザーに表示するクリエイティブをさまざまなサイト間で決定します。
  • A/B テスト: ユーザーをテストグループに割り当て、そのグループを Shared Storage に保存して、クロスサイトからアクセスできるようにします。
  • カスタム ユーザー エクスペリエンス: ユーザーの登録ステータスやその他のユーザー状態に基づいて、カスタム コンテンツと行動を促すフレーズを共有する

概要レポートを生成する

共有ストレージを使用して情報を収集し、ノイズが追加された集計概要レポートを生成します。これらのユースケースの出力ゲートウェイは Private Aggregation API です。

  • ユニークリーチの測定: 多くのコンテンツ制作者と広告主は、コンテンツを視聴したユニーク ユーザー数を知りたいと考えています。共有ストレージを使用すると、ユーザーが広告、埋め込み動画、またはパブリケーションを初めて見た日時を記録し、同じユーザーが異なるサイトで重複してカウントされるのを防ぐことができます。その後、Private Aggregation API を使用して、リーチの概要レポートを出力できます。
  • ユーザー属性の測定: コンテンツ制作者は、視聴者の属性を把握したいと考えることが多いでしょう。共有ストレージを使用すると、ファーストパーティ サイトなど、ユーザーの属性データが存在するコンテキストでユーザーの属性データを記録し、集計レポートを使用して、埋め込みコンテンツなど、他の多くのサイトにわたってレポートを作成できます。
  • K 回以上のフリークエンシー測定: 「有効フリークエンシー」とも呼ばれ、ユーザーが特定のコンテンツを認識または思い出すまでに必要な表示回数の最小数(多くの場合、広告の表示回数のコンテキストで)が存在します。共有ストレージを使用すると、コンテンツを K 回以上見たユニーク ユーザーのレポートを作成できます。

意見交換とフィードバックの提供

Shared Storage API の提案は現在議論と開発が進められているため、変更される可能性があります。

Shared Storage API について、ぜひご意見をお聞かせください。

最新情報を入手する

  • メーリング リスト: メーリング リストに登録すると、Shared Storage API に関する最新情報やお知らせを受け取ることができます。

ご不明な点がある場合