Skip to content

Multiple Impression Registrations on Existing Tracking Pings #549

Closed
@chandan-giri

Description

@chandan-giri

Multi Conversion Domain Tracking
Advertisers may track conversions on different conversion domains than original click/impression destinations. Eg: User clicks on an Ad and lands on advertiser.us, performs interactions to further navigate and convert on advertiser.com. If we register for only the click/impression domain, AdTech will not be able to track conversions on advertiser.com. It can also happen for the above case that AdTech is tracking page view conversion on advertiser.us and purchase conversion on advertiser.com domain. For a given ad click or impression, AdTech may need to register multiple impressions for a given Ad.

  1. The additional impressions are always registered as views. For these additional impressions registrations, view validations and corresponding 1 conversion per view limits for EventApi will apply. This is true even when the original event is a click. Hence for these additional impression registration, we will not validate that registration destination matches click destination.
  2. The “source_event_id” of these impression registrations may be all different and depend on AdTech implementation.
  3. Aggregation dimensions may change from original event registration and depend on AdTech implementation. AdTech may want to measure conversions for these x-domain registration slices. Eg: For the case where the original event is a click, 3 bits conversion metadata and 3 conversions per click is tracked for original click whereas 1 bit conversion metadata and 1 conversion per click is tracked for additional view registrations.
  4. Attribution filters may change from original events since newer aggregation dimensions and conversion metadata may be output differently for cross-domain registrations. Eg: For the original click 3 bits of metadata will be output, however for additional x-domain view registrations, only 1 bit of metadata is allowed.

Constraints With Current Proposal

  1. Support for 3rd party trackers: 3rd party trackers can only register impressions on click tracking pings. Currently there is no mechanism available to register additional views to track cross-domain conversions. Also for click, these cross-domain registrations will be rejected since destination doesn’t match click destination.
  2. Rendering/Serving overhead: For current registration mechanism, changes are likely required in rendering/serving of all ad formats to fire new registration pings. Newer feature requests will remove these overheads and make integration more convenient.
  3. Additional Network Requests: Since currently only one registration is allowed per registration ping, new registration pings order of magnitude of additional cross-domain registrations is generated. The # of request pings will increase by lot for such use cases.

Feature Request
We are requesting the following extension to the current impression registration mechanism

  1. Allow for multiple events registration for given registration ping.
  2. Allow for events registration to be downgraded as view. For these explicitly downgraded views’ registration, the view registration validation will apply.
  3. Add destination to registration and attribution debug reports. For the cases where AdTech opts to use the same source_event_id for all click/view registrations, <source_event_id, destination, {user_agent | device}> will create a unique identifier for registered events.

Example sample response:
Attribution-Reporting-Register-Sources [
// Original click. Validation is computed for click registration.
{
"source_event_id": "123456",
"destination": "advertiser.com",

},
// View registered for another conversion domain. Validation is computed for
// click registration.
{
"source_event_id": "987654",
"destination": "conversion-page1.com",
// If set to false, use the original source inference: {event, navigation}.
“register_source_as_event”: “true”,

},
// View registered for another conversion domain. Validation is computed for
// click registration.
{
"source_event_id": "567891",
"destination": "conversion-page2.com",
// If set to false, use the original source inference: {event, navigation}.
“register_source_as_event”: “true”,

},
...]

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