Creative nach Häufigkeit auswählen

Führen Sie ein Worklet für freigegebenen Speicher aus, um eine URL auszuwählen und in einem Fenced Frame zu rendern.

Die Shared Storage API ist eine Privacy Sandbox-Lösung für die allgemeine, websiteübergreifende Speicherung, die viele mögliche Anwendungsfälle unterstützt. Ein Beispiel ist die Häufigkeitssteuerung, die in Chrome Beta 104.0.5086.0 und höher getestet werden kann.

Führen Sie ein Worklet-Skript aus, um anhand der gespeicherten Daten eine URL aus einer bereitgestellten Liste auszuwählen, und rendern Sie diese URL dann in einem Fenced Frame. Damit können neue Anzeigen oder andere Inhalte ausgewählt werden, wenn das Frequency Capping erreicht ist.

Creative-Auswahl nach Häufigkeit testen

Wenn Sie die Creative-Auswahl nach Häufigkeit mit freigegebenem Speicher und Fenced Frames testen möchten, müssen Sie Chrome 104.0.5086.0 oder höher verwenden. Aktivieren Sie dann das Flag Privacy Sandbox Ads APIs-Test unter chrome://flags/#privacy-sandbox-ads-apis.

Privacy Sandbox Ads APIs-Test aktivieren, um diese APIs zu verwenden

Sie können den freigegebenen Speicher auch mit dem Flag --enable-features=PrivacySandboxAdsAPIsOverride,OverridePrivacySandboxSettingsLocalTesting,SharedStorageAPI,FencedFrames in der Befehlszeile aktivieren.

Mit Codebeispielen experimentieren

Registrieren Sie ein Worklet-Modul, um freigegebene Speicherdaten zu lesen, um eine intransparente URL auszuwählen und zu erstellen. Die Worklet-Klasse erhält eine Liste von bis zu acht URLs und gibt dann den Index der ausgewählten URL zurück.

Wenn der Client sharedStorage.selectURL() aufruft, führt das Worklet eine intransparente URL aus, die in einem Fenced Frame gerendert werden soll.

Angenommen, Sie möchten auf Grundlage der Häufigkeit, mit der ein Nutzer die Anzeige oder den Inhalt bereits gesehen hat, andere Anzeigen oder Inhalte zum Rendern auswählen. Sie können zählen, wie oft ein Nutzer einen Inhalt aufgerufen hat, und diesen Wert im freigegebenen Speicher speichern. Nach dem Speichern steht Ihnen der Wert im freigegebenen Speicher an verschiedenen Ursprüngen zur Verfügung.

Dann liest das Worklet des freigegebenen Speichers die Werte im freigegebenen Speicher und erhöht den Zähler mit jeder weiteren Ansicht. Wenn die Anzahl die vordefinierte Anzahl nicht erreicht hat, wird der Inhalt zurückgegeben, den Sie rendern möchten (Index 1). Andernfalls wird die Standard-URL zurückgegeben (Index 0).

In diesem Fall gilt Folgendes:

  • creative-selection-by-frequencyjs wird über den iFrame des Content-Erstellers oder Werbetreibenden geladen und ist für das Laden des gemeinsam genutzten Speicher-Worklets und das Rendern der zurückgegebenen intransparenten Quelle in einem Fenced Frame verantwortlich.
  • creative-selection-by-frequency-worklet.js ist das Worklet des freigegebenen Speichers, das die Häufigkeit ausliest, um zu bestimmen, welche URL für einen Inhalt oder ein Anzeigen-Creative zurückgegeben wird.

creative-selection-by-frequency.js

// The first URL is the default content or ad to be rendered when the frequency limits reached.
const CONTENT_URLS = [
  { url: `https://${contentProducerUrl}/default-content.html` },
  { url: `https://${contentProducerUrl}/example-content.html` },
];

async function injectAd() {
  // Load the worklet module.
  await window.sharedStorage.worklet.addModule('creative-selection-by-frequency-worklet.js');

  // Set the initial frequency count
  window.sharedStorage.set('frequency-count', 0, {
    ignoreIfPresent: true,
  });

  // Run the URL selection operation to choose an ad based on the frequency count in shared storage.
  const fencedFrameConfig = await window.sharedStorage.selectURL('creative-selection-by-frequency', CONTENT_URLS, {
    resolveToConfig: true
  });

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

injectAd();

creative-selection-by-frequency-worklet.js

const FREQUENCY_LIMIT = 5;

class CreativeSelectionByFrequencyOperation {
  async run(urls, data) {
    // Read the current frequency limit in shared storage
    const count = parseInt(await this.sharedStorage.get('frequency-count'));

    // Check if the frequency limit has been reached.
    if (count === FREQUENCY_LIMIT) {
      console.log('Frequency limit has been reached, and the default content will be rendered.');
      return 0;
    }

    // Set the new frequency count in shared storage
    await this.sharedStorage.set('frequency-count', count + 1);
    return 1;
  }
}

// Register the operation as 'creative-selection-by-frequency'.
register('creative-selection-by-frequency', CreativeSelectionByFrequencyOperation);

Anwendungsfälle

Dies sind nur einige der möglichen Anwendungsfälle für freigegebenen Speicher. Wir fügen weitere Beispiele hinzu, wenn wir Feedback erhalten und neue Anwendungsfälle entdecken.

Inhaltsauswahl

Wählen Sie anhand der im freigegebenen Speicher erfassten Informationen unterschiedliche Inhalte auf verschiedenen Websites in Fencing Frames aus. Das Ausgabegatter für diese Anwendungsfälle ist die URL-Auswahl.

  • Creative-Rotation: Daten wie die Creative-ID, die Anzahl der Aufrufe und die Nutzerinteraktion speichern, um zu bestimmen, welche Creative-Nutzer auf den verschiedenen Websites präsentiert werden.
  • A/B-Tests: Sie können einen Nutzer einer Testgruppe zuweisen und diese Gruppe dann im freigegebenen Speicher für den websiteübergreifenden Zugriff speichern.
  • Benutzerdefinierte Inhalte: Teilen Sie benutzerdefinierte Inhalte und Calls-to-Action basierend auf dem Registrierungsstatus eines Nutzers oder einem anderen Nutzerstatus.

Zusammenfassungsberichte erstellen

Sammeln Sie Informationen im freigegebenen Speicher und generieren Sie einen ungenauen, zusammenfassenden Bericht. Das Ausgabegatter für diese Anwendungsfälle ist die Private Aggregation API.

  • Unique Reach-Messung: Viele Ersteller und Werbetreibende von Content möchten wissen, wie viele einzelne Nutzer ihre Inhalte gesehen haben. Verwenden Sie den freigegebenen Speicher, um zu erfassen, wann ein Nutzer zum ersten Mal Ihre Anzeige, Ihr eingebettetes Video oder Ihre Publikation gesehen hat. So vermeiden Sie doppelte Zählungen desselben Nutzers auf verschiedenen Websites. Anschließend können Sie mit der Private Aggregation API einen zusammenfassenden Bericht für Ihre Reichweite ausgeben.
  • Messung demografischer Merkmale: Ersteller von Inhalten möchten oft die demografischen Merkmale ihrer Zuschauer ermitteln. Sie können den freigegebenen Speicher verwenden, um demografische Daten von Nutzern in einem Kontext zu erfassen, in dem sie verfügbar sind, z. B. auf Ihrer eigenen Website. Mithilfe von aggregierten Berichten können Sie über viele andere Websites Berichte dazu erstellen, beispielsweise für eingebettete Inhalte.
  • K+-Häufigkeitsmessung: Wird manchmal als „effektive Häufigkeit“ bezeichnet. Es gibt oft eine Mindestanzahl von Aufrufen, bevor ein Nutzer bestimmte Inhalte erkennt oder sich an diese erinnert (häufig im Kontext von Anzeigenaufrufen). Mit freigegebenem Speicher können Sie Berichte für einzelne Nutzer erstellen, die einen Inhalt mindestens K-mal angesehen haben.

Reagieren und Feedback geben

Das Angebot für den freigegebenen Speicher wird derzeit diskutiert und kann sich in Zukunft ändern. Wenn Sie diese API testen und Feedback haben, freuen wir uns darauf, von Ihnen zu hören.