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.

Allowing breakdown of adCost  #1092

Open

Description

@omriariav

Hi,

Regarding the adCost field in generateBid and reportWin as added per this case.

We are at the point of live testing, and when reviewing the charging process, we have contractual and auditing requirements as a public company (SOC, SOC1) to break down the additional fees we are collecting.

As a DSP, Taboola has fixed/dynamic fees we need to collect from the advertiser that impact the eventual ad cost value. These fees also impact the overall payment we pay publishers (as an SSP).

The fees are based on the context, available only when we generate the bid. Due to the trusted environment, we also can't do it post-auction (either from reportWin ->Backend) or by using the data in the TEE.

Currently, the adCost field can accept "8-bit mantissa and 8-bit exponent, with any rounding performed stochastically" (source).

We suggest keeping the value and rounding, but instead of one value, allow us to pass an array of values, where each one will get the same treatment of the current field.

Example:

generateBid(interestGroup, auctionSignals, perBuyerSignals,
    trustedBiddingSignals, browserSignals, directFromSellerSignals) {
  ...
  return {'ad': adObject,
          'adCost': [value1,value2,...,valueN]
          'bid': bidValue,
          'bidCurrency': 'USD',
          'render': {url: renderURL, width: renderWidth, height: renderHeight},
          'adComponents': [{url: adComponent1, width: componentWidth1, height: componentHeight1},
                           {url: adComponent2, width: componentWidth2, height: componentHeight2}, ...],
          'allowComponentAuction': false,
          'modelingSignals': 123};
}

Thank you

Activity

  1. michaelkleber commented on Mar 21, 2024

    @michaelkleber
    Collaborator

    Each cost value is an opportunity to send a limited amount of information out of the auction. Allowing a whole list of N of those costs would be enough to send a whole user identifier, which would enable cross-site tracking.

    Can you say more about the different values you want to send, e.g. how they are calculated, how they are used, etc?

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