Menjalankan A/B Testing

Gunakan worklet Penyimpanan Bersama untuk menjalankan pengujian A/B.

Shared Storage API adalah informasi Proposal sandbox untuk tujuan umum, penyimpanan lintas situs, yang mendukung banyak yang mungkin terjadi. Salah satu contohnya adalah pengujian A/B, yang tersedia untuk diuji di Chrome 104.0.5086.0 dan yang lebih baru.

Anda dapat menetapkan pengguna ke sebuah grup eksperimen, lalu menyimpan grup tersebut di Penyimpanan yang akan diakses di lingkungan lintas lokasi.

Coba A/B testing

Untuk bereksperimen dengan pengujian A/B dengan Penyimpanan Bersama, pastikan Anda menggunakan Chrome 104.0.5086.0 atau yang lebih baru. Aktifkan semua API privasi iklan di chrome://settings/adPrivacy.

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

Bereksperimen dengan contoh kode

Untuk melihat apakah eksperimen memiliki pengaruh yang diinginkan, Anda dapat menjalankan pengujian A/B di beberapa situs. Sebagai pengiklan atau produser konten, Anda dapat memilih untuk merender konten atau iklan yang berbeda berdasarkan grup yang ditetapkan pengguna. Penetapan grup disimpan di penyimpanan bersama, tetapi tidak dapat dipindahkan.

Dalam contoh ini:

  • ab-testing.js harus disematkan dalam bingkai, yang memetakan satu kontrol dan dua konten eksperimen. Skrip ini memanggil worklet penyimpanan bersama untuk eksperimen.
  • ab-testing-worklet.js adalah worklet penyimpanan bersama yang menampilkan grup yang ditetapkan kepada pengguna, yang menentukan iklan yang akan ditampilkan.

ab-testing.js

// Randomly assigns a user to a group 0 or 1
function getExperimentGroup() {
  return Math.round(Math.random());
}

async function injectContent() {
  // Register the Shared Storage worklet
  await window.sharedStorage.worklet.addModule('ab-testing-worklet.js');

  // Assign user to a random group (0 or 1) and store it in Shared Storage
  window.sharedStorage.set('ab-testing-group', getExperimentGroup(), {
    ignoreIfPresent: true,
  });

  // Run the URL selection operation
  const fencedFrameConfig = await window.sharedStorage.selectURL(
    'ab-testing',
    [
      { url: `https://your-server.example/content/default-content.html` },
      { url: `https://your-server.example/content/experiment-content-a.html` }
    ],
    {
      resolveToConfig: true
    }
  );

  // Render the chosen URL into a fenced frame
  document.getElementById('content-slot').config = fencedFrameConfig;
}

injectContent();

ab-testing-worklet.js

class SelectURLOperation {
  async run(urls, data) {
    // Read the user's experiment group from Shared Storage
    const experimentGroup = await sharedStorage.get('ab-testing-group');

    // Return the corresponding URL (first or second item in the array)
    return urls.indexOf(experimentGroup);
  }
}

register('ab-testing', SelectURLOperation);

Kasus penggunaan

Ini hanyalah beberapa kemungkinan kasus penggunaan Penyimpanan Bersama. Kita akan terus menambahkan contoh saat kita menerima masukan dan menemukan kasus penggunaan baru.

Pemilihan konten

Pilih dan tampilkan konten yang berbeda pada situs web yang berbeda di frame dengan fence berdasarkan informasi yang dikumpulkan di Penyimpanan Bersama. Gateway output untuk kasus penggunaan ini adalah pemilihan URL.

  • Rotasi materi iklan: Menyimpan data, seperti ID materi iklan, jumlah penayangan, dan interaksi pengguna, untuk menentukan pengguna materi iklan lihat di berbagai situs.
  • Pengujian A/B: Anda dapat menetapkan pengguna ke sebuah grup eksperimen, lalu menyimpan grup tersebut di Shared Storage untuk diakses lintas situs.
  • Pengalaman pengguna kustom: Bagikan konten kustom dan pesan ajakan (CTA) berdasarkan status pendaftaran pengguna atau status pengguna lain

Membuat laporan ringkasan

Mengumpulkan informasi dengan Penyimpanan Bersama dan membuat laporan ringkasan gabungan yang berisik. Gerbang output untuk kasus penggunaan ini adalah Private Aggregation API.

  • Pengukuran jangkauan unik: Banyak produser dan pengiklan konten ingin mengetahui berapa banyak orang melihat konten mereka. Menggunakan Penyimpanan Bersama untuk merekam saat pertama kali pengguna melihat iklan, video yang disematkan, atau publikasi, dan mencegah duplikat menghitung pengguna yang sama di situs yang berbeda. Kemudian, Anda dapat menggunakan Private Aggregation API guna menghasilkan laporan ringkasan untuk jangkauan Anda.
  • Pengukuran demografi: Produser konten sering kali ingin memahami demografi audiens Anda. Anda dapat menggunakan Penyimpanan Bersama untuk merekam data demografis pengguna di konteks di mana Anda memilikinya, seperti situs pihak pertama, dan menggunakan data pelaporan untuk melaporkannya di banyak situs lain, seperti konten yang disematkan.
  • Pengukuran frekuensi K+: Terkadang digambarkan sebagai "frekuensi efektif," sering kali ada jumlah minimum penayangan sebelum pengguna mengenali atau mengingat konten tertentu (sering kali dalam konteks tampilan iklan). Anda dapat menggunakan Penyimpanan Bersama untuk membuat laporan pengguna unik yang telah melihat suatu konten setidaknya K kali.

Berinteraksi dan memberikan masukan

Proposal Penyimpanan Bersama sedang dalam diskusi aktif dan dapat berubah sewaktu-waktu di masa mendatang. Jika Anda mencoba API ini dan memiliki masukan, kami ingin sekali mendengarnya.