You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Nov 7, 2025. It is now read-only.
Repository navigation
This repository was archived by the owner on Nov 7, 2025. It is now read-only.
Browser triggered reportEvent() call on creative load for reliable impression reporting #1100
The current fenced frame reporting API allows the buyer's creative to decide which entities to send events to.
This denies publishers and sell-side entities a guaranteed mechanism to log the impressions rendered by a buyer. In situations today wherein the buyer creative has errors and cannot render, publishers depend on sell-side entities to accurately record impressions and bill buyers accordingly.
Proposal
Add a new reserved event(automatic beacon perhaps) fired by the browser once a frame with an ad creative is initialized.
suggested name: reserved.rendered
The browser will call the URL associated with the event registered by the component and top-level sellers when the iframe/fenced-frame initializes the supplied URN/config.
So if I understand from the conversation, the sendReportTo() function inside reportResult() is called only when an ad renders, making it sufficient to know that an ad was rendered. I didn't see this documented, must have missed it.
Is there a similar mechanism then to detect instances only where a bid was submitted to the top-level auction from the component auction?
Note that sendReportTo() is actually called right after the auction, however, the report is only sent when navigation to the ad starts (Or when deprecatedUrnToURL is invoked with sendReports=true, though that method is, of course, slated for removal at some point). It's only requested at most once per action, even if the winning ad is used multiple times.
Context
The current fenced frame reporting API allows the buyer's creative to decide which entities to send events to.
This denies publishers and sell-side entities a guaranteed mechanism to log the impressions rendered by a buyer. In situations today wherein the buyer creative has errors and cannot render, publishers depend on sell-side entities to accurately record impressions and bill buyers accordingly.
Proposal
Add a new reserved event(automatic beacon perhaps) fired by the browser once a frame with an ad creative is initialized.
suggested name:
reserved.renderedThe browser will call the URL associated with the event registered by the component and top-level sellers when the iframe/fenced-frame initializes the supplied URN/config.