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

GAM throttling PAAPI even when Chrome has PAAPI enabled #79

Open
rdgordon-index opened this issue Sep 23, 2023 · 21 comments
Open

GAM throttling PAAPI even when Chrome has PAAPI enabled #79

rdgordon-index opened this issue Sep 23, 2023 · 21 comments

Comments

@rdgordon-index
Copy link

As per https://support.google.com/admanager/answer/13627134:

When the Protected Audience API (formerly known as FLEDGE) becomes generally available in Chrome, Ad Manager will begin gradually increasing the amount of traffic included in its testing. We'll monitor the impact to publisher revenue as we slowly increase the percentage of traffic, and will not ramp up further if there is a noticeable negative impact to publisher revenue. We expect that by the end of 2023, up to 10% of Chrome traffic will be enabled for Protected Audience API testing.

As noted #77 (comment), #65 (comment) and privacysandbox/privacy-sandbox-dev-support#110, with the GA release of PAAPI, it has become evident that there is a gap in how on-page Protected Audience auctionConfig, GPT setConfig and GAM's handling are interacting, making it extremely difficult to for buyers, sellers and publishers to begin integrating with PAAPI.

In short, there is no indication on-device available in JavaScript that an auctionConfig registered for a component auction will not be honoured by GAM -- neither before the display call for the ad slot is executed, nor after the slot has rendered -- runAdAuction simply isn't executed, and it's invisible as to why this is the case from the browser. In other words, it acts as though there are no IGs available for the user, but that simply isn't the case. At the moment, it appears quite random as to whether or or GAM will throttle PAAPI or not.

https://services.google.com/fb/forms/uastringformultisellertestsignup/ is the proposed workaround for local testing -- but if ad tech vendors are going to begin to start PA testing, we're going to need additional clarity and signalling regarding if and when a given slot is PAAPI-eligible in GAM during the ramp-up period.

Can GAM provide this much-needed clarity?

@rdgordon-index
Copy link
Author

From https://privacysandbox.com/intl/en_us/news/privacy-sandbox-for-the-web-reaches-general-availability:

General availability means the Privacy Sandbox technologies are in a stable state, and ready for scaled use by advertising solutions to support key business use cases

General availability of the Privacy Sandbox APIs means advertising providers and developers can now scale usage of these new technologies within their products and services, as these are now available for the majority of Chrome users

Given the overwhelming usage of GAM as the publisher ad server -- making this one of the 'key business use cases' -- I'm not sure I fully understand GAM's throttling controls; how can buyers and sellers prepare for 'scaled use' if 90% of the traffic isn't going to included by GAM?

Furthermore, beyond the overall testing population percentage, on a per publisher / network ID basis, this also makes integration extremely challenging, not to mention the difficultly in being able to correlate this invisible GAM behaviour with the https://developer.chrome.com/en/docs/privacy-sandbox/chrome-testing/ Mode A and B labelling.

@rahulkooverjee-google
Copy link
Collaborator

Thanks for the question!

We agree that coordinated testing is important, which is why we intend to use Chrome mode A and mode B labels to coordinate when Protected Audience auctions are run. We're still waiting on the details of the mode A labels from Chrome, but will certainly share more information once we have more to share.

@dmdabbs
Copy link

dmdabbs commented Sep 27, 2023

... coordinate when Protected Audience auctions are run

Not grokking the connection, The Publisher wants their partners to be able to testdrive all this nifty new advertising technology irrespective of any specially labeled browsers.

@dmdabbs
Copy link

dmdabbs commented Oct 19, 2023

We're still waiting on the details of the mode A labels from Chrome

FYI, @rahulkooverjee-google. DevRel published those details ten days ago. Just Mode A labels? Mode B (the ones without cookies) are also to be labeled when Chrome initiates that phase in 1Q24.

@rahulkooverjee-google
Copy link
Collaborator

Thanks for flagging that David!

To share an update:

  • We will be enabling Protected Audience auctions where possible* on one of the mode A labels. We're still finalizing exactly what label will be used. We're going to be starting with one label initially, and will evaluate whether it makes sense to include additional labels over time.
  • To your question around mode B, we will be sharing additional details soon about our planned testing. For now, I can share that we do intent to use mode B for coordinated testing as well. For clarify - that means that we will enable Protected Audience auctions where possible* on the three mode B labels where Privacy Sandbox APIs are available.

* i.e. Ad Manager won't impose a % traffic restriction like we do for global traffic today, but there may be other reasons an auction is not run such as insufficient user consent.

@dmdabbs
Copy link

dmdabbs commented Oct 26, 2023

Thanks @rahulkooverjee-google.

We will be enabling Protected Audience auctions where possible* on one of the mode A labels. We're still finalizing exactly what label will be used. We're going to be starting with one label initially, and will evaluate whether it makes sense to include additional labels over time.

So on labeled traffic: GAM will permit PAAPI auctions on
a) a single Chrome A label traffic, to be announced, and
b) all Mode B instance traffic
modulo the * fine print.

And not at all on unlabeled traffic, or will GAM "impose a % traffic restriction like we do for global traffic today?"

we will be sharing additional details soon about our planned testing

Should we expect that content on this repo or elsewhere, such as a product update?

@dmdabbs
Copy link

dmdabbs commented Nov 7, 2023

Checking in @rahulkooverjee-google.

@rahulkooverjee-google
Copy link
Collaborator

rahulkooverjee-google commented Nov 7, 2023

By default, a traffic (labeled or otherwise) will continue as today, where we run PA auctions on a percentage of traffic.

The specific changes outside of that default will be:

  • No Privacy Sandbox APIs will be used for the control labels in mode A
  • Privacy Sandbox APIs will be used wherever possible in mode B
  • We will also specifically use one mode A label to run PA auctions where possible

Please note that this subject to change given feedback from partners on how to best use mode A labels.

@dmdabbs
Copy link

dmdabbs commented Nov 7, 2023

By default, a traffic (labeled or otherwise) will continue as today, where we run PA auctions on a percentage of traffic.

Thanks @rahulkooverjee-google.

The percentage of inventory on which GAM will permit Protected Audience auctions to run is that advertised here?

@rahulkooverjee-google
Copy link
Collaborator

Correct - we expect to enable up to 10% of traffic for PA auctions this year

@dmdabbs
Copy link

dmdabbs commented Nov 7, 2023

TY @rahulkooverjee-google. So those Finch (?) experiment percentages support GAM and Chrome modes.

@rdgordon-index
Copy link
Author

Can you further elaborate how that 10% of traffic will be selected? Will it be 10% of network codes, 10% of slots of a page, 10% of browsers, etc.?

For the selections that are label-based, it should be simple enough for a seller to ensure that we do (for the soon-to-be-selected mode A label ) or don't (for control label mode A) return an auctionConfig.

However, for the ones that aren't labelled, I'm looking for further clarification as to how that can be be made available to PA participants -- otherwise, it will be impossible to distinguish between 'no IGs on device', 'no IG bids were placed' and 'runAdAuction was never called.

@dmdabbs
Copy link

dmdabbs commented Nov 7, 2023

Here is a table overlaying Chrome's testing doc and above comments. Does this accurately capture it, GAM's intent, @rahulkooverjee-google?

Mode Label % of Stable traffic Chrome PA API Enabled? GAM Run PA Auctions? Notes per Chrome-facilitated testing or GAM
A control_1.1 0.25 Y N GAM: No Privacy Sandbox APIs will be used for the control labels in mode A
A control_1.2 0.25 Y N As the labels do not affect functionality, participants should not pass observed topics or run Protected Audience auctions when they detect the control_1.* group labels.
A control_1.3 0.25 Y N  
A control_1.4 0.25 Y N  
A label_only_1 1.5 Y Limited
A label_only_2 1.5 Y Limited Limited Availability (auctions will run on limited % of traffic - same as non-labeled traffic) see post below
A label_only_3 1.5 Y Limited
A label_only_4 1.5 Y Limited  
A label_only_5 1.5 Y Y GAM (per below): will run on eligible inventory (not subject to traffic sampling).
B treatment_1.1 0.25 Y Y GAM: Privacy Sandbox APIs will be used wherever possible in mode B
B treatment_1.2 0.25 Y Y We're proposing to divide the population into three treatment_1.* groups where third-party cookies are disabled, but PS R&M APIs are available,
B treatment_1.3 0.25 Y Y  
B control_2 0.25 N N ...and one control_2 group where both third-party cookies and the PS R&M APIs are disabled. Per Chrome-facilitated testing
    9.5 9.25 2.25  

My original Sheet here.

@rahulkooverjee-google
Copy link
Collaborator

rahulkooverjee-google commented Nov 8, 2023

That seems right, except for the label_only_* labels. We haven't yet decided which mode A label will be used for PA API testing (i.e. it may not necessarily be label_only_1), and for the other labels it's not that no auction would run but that auctions would run similarly to un-labeled traffic

@dmdabbs
Copy link

dmdabbs commented Nov 8, 2023

That seems right, except that we haven't yet decided which mode A label will be used for PA API testing (i.e. it may not necessarily be label_only_1)

Yes, @rahulkooverjee-google, that was for placement only to account for the single Mode A label in your comment.

Just one label seems counter to the CMA's intent to have:

all participating ad techs would be able to see the same [] label and coordinate accordingly, i.e. use the PS R&M APIs, but refrain from using third-party cookies. For example, this allows multiple participants to run Protected Audience auctions without third-party cookies across a consistent group of browsers.

@patmmccann
Copy link
Contributor

We will also specifically use one mode A label to run PA auctions where possible

@rahulkooverjee-google which one? We don't want to solicit auction configs when we can be confident you won't run a top level auction

@rahulkooverjee-google
Copy link
Collaborator

To your question around mode B, we will be sharing additional details soon about our planned testing.

We just published details on our planned testing, including how each label will be used, here: https://support.google.com/admanager/answer/13178817

@rahulkooverjee-google which one?

@patmmccann to save you a click, it'll be label_only_5

@dmdabbs
Copy link

dmdabbs commented Nov 27, 2023

The doc indicates Google Ad Manager's treatment is (*)

*Subject to change with updated guidance from Chrome, the CMA, and/or partner feedback

Thank you in advance for posting here should this change.

@rdgordon-index
Copy link
Author

@rahulkooverjee-google -- I noticed a new section / GAM configuration option on https://support.google.com/admanager/answer/13627134: "Allow testing on all inventory with non-Google sellers" -- can you comment on this further?

Specifically, are any of these PAAPI opt-outs visible client-side in javascript via the GAM libraries?

@shahinrahbariasl
Copy link

shahinrahbariasl commented May 8, 2024

Hey @rahulkooverjee-google, just circling back on this. Despite having PAAPI enabled to allow testing on the full 100% of our inventory and tweaking the user agent along with applying CMA labels, it seems like GAM isn't calling runAdAuction all the time as expected on some of our test pages. There are definitely interest group buyers on the page, but there's no clear indication whether it's a technical issue or if GAM is throttling the auctions.

Is there any way to verify what's happening with GAM calling runAdAuction or any documentation about how/when/why GAM wouldn't call runAdAuction? It's pretty crucial for us to have some kind of visibility for this, as it impacts our ability to properly interact with PAAPI.

@rahulkooverjee-google
Copy link
Collaborator

Our help center has documentation about when we do / don't call runAdAuction.

It looks like you might work at Index Exchange - if that's right, I'd encourage you to contact GAM through the existing communication channels we have if you'd like deeper support.

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

No branches or pull requests

5 participants