Esegui test A/B

Utilizza un worklet dello spazio di archiviazione condiviso per eseguire i test A/B.

L'API Shared Storage è una proposta Privacy Sandbox per l'archiviazione tra siti per uso generico, che supporta molti casi d'uso possibili. Uno di questi esempi è il test A/B, disponibile per i test in Chrome 104.0.5086.0 e versioni successive.

Puoi assegnare un utente a un gruppo sperimentale e poi archiviarlo nello spazio di archiviazione condiviso per accedervi in un ambiente intersito.

Prova il test A/B

Per sperimentare i test A/B con lo spazio di archiviazione condiviso, verifica di utilizzare Chrome 104.0.5086.0 o versioni successive. Attiva poi il flag Esperimento API annunci Privacy Sandbox all'indirizzo chrome://flags/#privacy-sandbox-ads-apis.

Attiva l'esperimento sulle API degli annunci di Privacy Sandbox per utilizzare queste API

Puoi anche attivare l'archiviazione condivisa con il flag --enable-features=PrivacySandboxAdsAPIsOverride,OverridePrivacySandboxSettingsLocalTesting,SharedStorageAPI,FencedFrames nella riga di comando.

Sperimenta con gli esempi di codice

Per verificare se un esperimento produce l'effetto desiderato, puoi eseguire test A/B su più siti. In qualità di inserzionista o produttore di contenuti, puoi scegliere di eseguire il rendering di contenuti o annunci diversi in base al gruppo a cui è assegnato l'utente. L'assegnazione al gruppo viene salvata nello spazio di archiviazione condiviso, ma non può essere esfiltrata.

In questo esempio:

  • ab-testing.js deve essere incorporato in un frame che mappa un controllo e due contenuti dell'esperimento. Lo script chiama il worklet dello spazio di archiviazione condiviso per l'esperimento.
  • ab-testing-worklet.js è il worklet dello spazio di archiviazione condiviso che restituisce il gruppo a cui è assegnato l'utente e determina quale annuncio viene mostrato.

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 this.sharedStorage.get('ab-testing-group');

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

register('ab-testing', SelectURLOperation);

Casi d'uso

Questi sono solo alcuni dei possibili casi d'uso dell'archiviazione condivisa. Continueremo ad aggiungere esempi man mano che riceveremo feedback e scopriremo nuovi casi d'uso.

Selezione contenuti

Selezionare e visualizzare contenuti diversi su siti web diversi all'interno di frame recintati in base alle informazioni raccolte nello spazio di archiviazione condiviso. La porta di output per questi casi d'uso è la selezione dell'URL.

  • Rotazione creatività: memorizza dati quali ID creatività, numero di visualizzazioni e interazione dell'utente per determinare quali creatività verranno visualizzate dagli utenti sui diversi siti.
  • Test A/B: puoi assegnare un utente a un gruppo di esperimenti e poi archiviare il gruppo nello spazio di archiviazione condiviso per accedervi tra siti.
  • Esperienze utente personalizzate: condividi contenuti e inviti all'azione personalizzati in base allo stato di registrazione di un utente o ad altri stati dell'utente.

Generare report di riepilogo

Raccogli informazioni con lo spazio di archiviazione condiviso e genera un report di riepilogo aggregato e fittizio. La porta di output per questi casi d'uso è l'API Private Aggregation.

  • Misurazione della copertura unica: molti produttori di contenuti e inserzionisti vogliono sapere quante persone uniche hanno visto i loro contenuti. Utilizza lo spazio di archiviazione condiviso per registrare la prima volta che un utente ha visualizzato l'annuncio, il video incorporato o la pubblicazione ed evitare un conteggio duplicato dello stesso utente su siti diversi. Puoi quindi utilizzare l'API Private Aggregation per generare un report di riepilogo per la tua copertura.
  • Misurazione dei dati demografici: i produttori di contenuti spesso vogliono conoscere i dati demografici del loro pubblico. Puoi utilizzare lo spazio di archiviazione condiviso per registrare i dati demografici degli utenti in un contesto in cui sono disponibili, ad esempio il tuo sito proprietario, e utilizzare i report aggregati per generare report in merito su molti altri siti, ad esempio i contenuti incorporati.
  • Misurazione della frequenza K+: a volte, come si parla di "frequenza effettiva", è spesso previsto un numero minimo di visualizzazioni prima che un utente riconosca o richiami determinati contenuti (spesso nel contesto delle visualizzazioni pubblicitarie). Puoi usare lo spazio di archiviazione condiviso per creare report relativi a utenti unici che hanno visto un contenuto almeno K volte.

Interagisci e condividi il tuo feedback

La proposta di spazio di archiviazione condiviso è in fase di discussione attiva e soggetta a modifiche in futuro. Se provi questa API e hai un feedback, ci farebbe piacere conoscere la tua opinione.