-
Notifications
You must be signed in to change notification settings - Fork 765
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
Record the default core bid ranking #4150
Comments
bretg
changed the title
Default core bid ranking algorithm
Default core bid ranking attribute
Jan 15, 2025
bretg
changed the title
Default core bid ranking attribute
Record the default core bid ranking
Jan 15, 2025
This was discussed in committee, and then more in a slack thread. Here's a summary of where we stand:
So the proposed vision for the future is:
It's understood that there's some legacy cruft in core. At some point in a major release, we should pull the "winning bid" logic and the "targeting" out and make them modules. PBJS doesn't use our targeting anyhow. AMP and App do. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
As described in the response to the Audio/CTV committee requests, there's a proposal to define
seatbid.bid.ext.prebid.rank
as a way to flag the highest priority bids. A rank of "1" would mean highest priority. Note that highest priority doesn't always mean "highest price". Sometimes deals are prioritized over open market.The 'response' document imagines a "bid ranking module" which would assign these ranks based on account configuration to cover advanced scenarios like "open market bids more than $5 above the deal price can beat out the deal, except for deal 123"
But at this point, neither Audio nor CTV needs support for that type of advanced scenario.
Since PBS-core is already sorting bids to apply ad server targeting, I'd like to explore adding the default seatbid.bid.ext.prebid.rank to every bid. Then someday, a more sophisticated bid ranking module could be built to override this default value.
The algorithm would be very basic:
ext.prebid.targeting.preferdeals
is true, then sort by isDeal (true first) and then bid.price (highest first), else just bid.price (highest first).The text was updated successfully, but these errors were encountered: