Skip to content
This repository was archived by the owner on Nov 7, 2025. It is now read-only.
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

Description

@warrrrren

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.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.

Activity

  1. rdgordon-index commented on Mar 26, 2024

    @rdgordon-index
    Contributor

    #826 is related

  2. warrrrren commented on Mar 27, 2024

    @warrrrren
    ContributorAuthor

    Thanks, @rdgordon-index. Was it brought up in a prior weekly sync call?

  3. rdgordon-index commented on Mar 27, 2024

    @rdgordon-index
    Contributor

    Yes, cf.

    ## Additional browser event beacons - https://github.com/WICG/turtledove/issues/826

  4. warrrrren commented on Mar 27, 2024

    @warrrrren
    ContributorAuthor

    Thank you.

    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?

  5. MattMenke2 commented on Mar 27, 2024

    @MattMenke2
    Contributor

    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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions