Pengukuran jangkauan unik

Banyak produser dan pengiklan konten ingin mengetahui jumlah pengguna unik yang melihat konten mereka. Gunakan Penyimpanan Bersama untuk mencatat saat pertama kali pengguna melihat iklan, video tersemat, atau publikasi Anda, dan mencegah penghitungan duplikat pengguna yang sama di situs berbeda. Anda kemudian dapat menggunakan Private Aggregation API untuk menghasilkan laporan ringkasan untuk jangkauan Anda.

Shared Storage API adalah proposal Privacy Sandbox untuk penyimpanan lintas situs tujuan umum, yang mendukung banyak kemungkinan kasus penggunaan. Private Aggregation API adalah output yang tersedia di Shared Storage yang memungkinkan Anda menggabungkan data lintas situs.

Coba pengukuran jangkauan unik

Untuk bereksperimen dengan pengukuran jangkauan unik dengan Penyimpanan Bersama dan Agregasi Pribadi, pastikan Anda menggunakan Chrome M107 atau yang lebih baru. Kemudian, aktifkan tanda Eksperimen Privacy Sandbox Ads API di chrome://flags/#privacy-sandbox-ads-apis.

Setel eksperimen Privacy Sandbox Ads API ke aktif untuk menggunakan API ini

Anda juga dapat mengaktifkan Penyimpanan Bersama dengan tanda --enable-features=PrivacySandboxAdsAPIsOverride,OverridePrivacySandboxSettingsLocalTesting,SharedStorageAPI,FencedFrames di command line.

Bereksperimen dengan contoh kode

Sebaiknya Anda memantau jumlah pengguna unik yang telah melihat konten Anda di berbagai situs. Dalam contoh ini, dimensi ID konten dienkode ke kunci agregasi (bucket), dan jumlah digunakan sebagai nilai gabungan. Laporan ringkasan akan berisi informasi seperti "Sekitar 391 pengguna telah melihat ID konten 123".

Dalam contoh ini: * unique-reach-measurement.js dimuat melalui frame, dan bertanggung jawab untuk memuat worklet penyimpanan bersama. * unique-reach-measurement-worklet.js adalah worklet penyimpanan bersama yang memeriksa flag di penyimpanan bersama dan mengirim laporan melalui Private Aggregation API.

reach-measurement.js

async function measureUniqueReach() {
  // Load the Shared Storage worklet
  await window.sharedStorage.worklet.addModule('reach-measurement-worklet.js');

  // Run the reach measurement operation
  await window.sharedStorage.run('reach-measurement', { data: { contentId: '1234' } });
}

measureUniqueReach();

reach-measurement-worklet.js

// Learn more about noise and scaling from the Private Aggregation fundamentals
// documentation on Chrome blog
const SCALE_FACTOR = 65536;

function convertContentIdToBucket(contentId) {
  return BigInt(contentId);
}

class ReachMeasurementOperation {
  async run(data) {
    const { contentId } = data;

    // Read from Shared Storage
    const key = 'has-reported-content';
    const hasReportedContent = (await this.sharedStorage.get(key)) === 'true';

    // Do not report if a report has been sent already
    if (hasReportedContent) {
      return;
    }

    // Generate the aggregation key and the aggregatable value
    const bucket = convertContentIdToBucket(contentId);
    const value = 1 * SCALE_FACTOR;

    // Send an aggregatable report via the Private Aggregation API
    privateAggregation.sendHistogramReport({ bucket, value });

    // Set the report submission status flag
    await this.sharedStorage.set(key, true);
  }
}

// Register the operation
register('reach-measurement', ReachMeasurementOperation);

Berinteraksi dan berbagi masukan

Proposal Penyimpanan Bersama sedang dalam diskusi aktif dan dapat berubah pada masa mendatang. Jika Anda mencoba API ini dan memiliki masukan, sampaikanlah kepada kami.