Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

X-Pub measurement with delegation #38

Open
benjaminsavage opened this issue Oct 3, 2024 · 0 comments
Open

X-Pub measurement with delegation #38

benjaminsavage opened this issue Oct 3, 2024 · 0 comments

Comments

@benjaminsavage
Copy link
Contributor

This is an idea for one way that cross-publisher measurement could potentially be done.

We could consider the introduction of an additional API, measureConversionWithDelegation() which would accept all the same arguments as measureConversion() except for aggregator and histogramSize. This function would return an object that could be explicitly delegated to ad-tech scripts corresponding to all the channels where the advertiser purchased ads.

let delegation_object =  measureConversionWithDelegation(
  epsilon: 1,
  logic: "last-touch",
  value: 3,
  maxValue: 5,
  lookbackDays: 30,
  filterData: 2,
  intermediarySites: ["ad-tech-1.example", "ad-tech-2.example"],
);

// iframe from "ad-tech-1.example"
let report1 = delegation_object.measureConversion(
  aggregator: "aggregator-1.example",
  histogramSize: 3,
);
// report1 would be a histogram contribution 3 wide

// iframe from "ad-tech-2.example"
let report2 = delegation_object.measureConversion(
  aggregator: "aggregator-2.example",
  histogramSize: 5,
);
// report2 would be a histogram contribution 5 wide

The idea is that measureConversionWithDelegation would attempt to attribute the conversion to an impression from one of multiple ad-tech vendors. At most one ad-tech's ads would receive attribution. Only the ad-tech who received attribution (if any) would receive a non-zero histogram contribution from their call to measureConversion.

This would be an improvement over the de-facto approach to delegation as it would only involve a single deduction from the privacy budget, not multiple. Furthermore, it would avoid double-counting as any given conversion could not be attributed to multiple ad-tech vendors.

This would ease the coordination challenge described in #34 as each ad-tech would be able to independently select their own histogramSize and the values they set for histogramIndex would not need to be coordinated.

This would also allow each ad-tech to select a different aggregation service.

Each of these per-ad-tech histogram results could be combined into a unified user-interface by the advertiser, who would then have a unified view of results broken down by ad-tech, then by campaign or whatever they wanted to use the histogram bins to represent.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Important
Development

No branches or pull requests

1 participant