Mesure de la couverture unique

De nombreux producteurs de contenu et annonceurs souhaitent connaître le nombre de personnes uniques qui ont vu leur contenu. Utilisez Shared Storage pour enregistrer la première fois qu'un utilisateur a vu votre annonce, votre vidéo intégrée ou votre publication, et pour éviter de comptabiliser deux fois cet utilisateur sur différents sites. Vous pouvez ensuite utiliser l'API Private Aggregation pour générer un rapport récapitulatif sur votre couverture.

L'API Shared Storage est une proposition de la Privacy Sandbox pour le stockage multisites à usage général, qui prend en charge de nombreux cas d'utilisation possibles. L'API Private Aggregation est une sortie disponible dans Shared Storage qui vous permet d'agréger des données intersites. Pour en savoir plus sur les méthodes d'implémentation de ces mesures, consultez notre livre blanc sur la couverture.

Essayer la mesure de la couverture unique

Pour tester la mesure de la couverture unique avec l'espace de stockage partagé et l'agrégation privée, vérifiez que vous utilisez Chrome M107 ou une version ultérieure. Activez toutes les API de confidentialité des annonces sous chrome://settings/adPrivacy.

Vous pouvez également activer Shared Storage avec l'indicateur --enable-features=PrivacySandboxAdsAPIsOverride,OverridePrivacySandboxSettingsLocalTesting,SharedStorageAPI,FencedFrames dans la ligne de commande.

Tester des exemples de code

Vous pouvez suivre le nombre d'utilisateurs uniques qui ont vu votre contenu sur différents sites. Dans cet exemple, la dimension ID de contenu est encodée dans la clé d'agrégation (bucket), et le nombre est utilisé comme valeur agrégable. Le rapport récapitulatif contient des informations telles que "Environ 391 utilisateurs ont vu le contenu avec l'ID 123."

Dans cet exemple :

  • unique-reach-measurement.js est chargé à l'aide d'un frame et est chargé de charger le worklet de stockage partagé.
  • unique-reach-measurement-worklet.js est le worklet de stockage partagé qui vérifie l'indicateur dans le stockage partagé et envoie un rapport à l'aide de l'API Private Aggregation.

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 sharedStorage.get(key)) === 'true';

    // Don't 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 using the Private Aggregation API
    privateAggregation.contributeToHistogram({ bucket, value });

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

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

Interagir et envoyer des commentaires

Notez que la proposition d'API Shared Storage est en cours de discussion et de développement, et est donc susceptible d'être modifiée.

Nous sommes impatients de connaître votre avis sur l'API Shared Storage.

Se tenir informé

  • Liste de diffusion: abonnez-vous à notre liste de diffusion pour recevoir les dernières informations et annonces concernant l'API Shared Storage.

Besoin d'aide ?