Przeprowadź test A/B

Użyj workletu współdzielonej pamięci masowej, aby przeprowadzać testy A/B.

Interfejs Shared Storage API to propozycja Piaskownicy prywatności do ogólnego użytku, przechowywania danych w różnych witrynach, która obsługuje wiele możliwych zastosowań. Jednym z nich są testy A/B, które można testować w przeglądarce Chrome 104.0.5086.0 i nowszych.

Możesz przypisać użytkownika do grupy eksperymentalnej, a następnie zapisać tę grupę w pamięci współdzielonej, aby mieć do niej dostęp w środowisku wielu witryn.

Wypróbuj testy A/B

Aby eksperymentować z testami A/B z użyciem pamięci współdzielonej, potwierdź, że używasz Chrome w wersji 104.0.5086.0 lub nowszej. Następnie włącz flagę eksperyment z interfejsami API reklam w Piaskownicy prywatności na stronie chrome://flags/#privacy-sandbox-ads-apis.

Aby używać tych interfejsów API, ustaw eksperyment z interfejsami API reklam w Piaskownicy prywatności

Możesz też włączyć pamięć współdzieloną, używając flagi --enable-features=PrivacySandboxAdsAPIsOverride,OverridePrivacySandboxSettingsLocalTesting,SharedStorageAPI,FencedFrames w wierszu poleceń.

Eksperymentuj z przykładami kodu

Aby sprawdzić, czy eksperyment przyniesie oczekiwane skutki, możesz przeprowadzić testy A/B w wielu witrynach. Jako reklamodawca lub producent treści możesz wyświetlać różne treści lub reklamy w zależności od grupy, do której został przypisany użytkownik. Przypisanie grupy jest zapisane w pamięci współdzielonej, ale nie można go wydobyć.

W tym przykładzie:

  • Element ab-testing.js należy umieścić w ramce, która odpowiada zawartości kontrolnej i 2 treści eksperymentu. Skrypt wywołuje worklet pamięci współdzielonej na potrzeby eksperymentu.
  • ab-testing-worklet.js to worklet pamięci współdzielonej, który wskazuje, do której grupy jest przypisany użytkownik, określając, która reklama zostanie wyświetlona.

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);

Przypadki użycia

To tylko niektóre z możliwych zastosowań pamięci współdzielonej. W miarę otrzymywania opinii i odkrywania nowych przypadków użycia będziemy dodawać kolejne przykłady.

Wybór treści

Wybieraj i wyświetlaj różne treści na różnych stronach w ogrodzonych ramkach na podstawie informacji zebranych w pamięci współdzielonej. Bramką wyjściową dla tych przypadków użycia jest wybór adresu URL.

  • Rotacja kreacji: przechowuj dane, np. identyfikator kreacji, liczbę wyświetleń i interakcje użytkowników, aby określać, które kreacje widzą użytkownicy w różnych witrynach.
  • Testy A/B: możesz przypisać użytkownika do grupy eksperymentalnej, a potem zapisać tę grupę w pamięci współdzielonej, aby mieć do niej dostęp w różnych witrynach.
  • Niestandardowe wrażenia użytkowników: udostępniaj niestandardowe treści i wezwania do działania wybrane na podstawie stanu rejestracji użytkownika lub innych stanów użytkownika.

Generowanie raportów podsumowujących

Gromadzenie informacji w pamięci współdzielonej i generowanie szczegółowego raportu podsumowującego. Bramką wyjściową dla tych przypadków użycia jest Private Aggregation API.

  • Pomiar zasięgu wśród unikalnych użytkowników: wielu producentów treści i reklamodawców chce wiedzieć, ilu unikalnych użytkowników zobaczyło ich treści. Korzystaj z pamięci współdzielonej, by rejestrować, kiedy użytkownik po raz pierwszy zobaczył Twoją reklamę, umieszczony film lub publikację, i zapobiec zduplikowaniu tego samego użytkownika w różnych witrynach. Następnie możesz użyć interfejsu Private Aggregation API, aby wygenerować raport podsumowujący dla Twojego zasięgu.
  • Pomiar danych demograficznych: twórcy treści często chcą poznać dane demograficzne swoich odbiorców. Możesz wykorzystać pamięć współdzieloną, aby rejestrować dane demograficzne użytkowników w kontekście, w jakim są dostępne (np. w Twojej własnej witrynie), a potem generować raporty na ich temat obejmujące wiele innych witryn, na przykład treści umieszczone na innej stronie.
  • Pomiar częstotliwości K+: czasami określany jako „efektywna częstotliwość” występuje często minimalna liczba wyświetleń, zanim użytkownik rozpozna lub zapamięta określone treści (często w kontekście wyświetleń reklamy). Możesz wykorzystać pamięć współdzieloną, aby tworzyć raporty o unikalnych użytkownikach, którzy widzieli treść co najmniej tyle razy.

Angażuj i dziel się opiniami

Oferta pamięci współdzielonej jest obecnie przedmiotem dyskusji i w przyszłości może ulec zmianie. Jeśli wypróbowujesz ten interfejs API i chcesz podzielić się opinią, chętnie poznamy Twoją opinię.