ADX module auction and price logic

Markup Level that could be set on ADX UI (percentage to be added to the bidfloor):

  • Markup in SSP endpoint settings
  • Markup in DSP endpoint settings

Scenario

  • Floor price in SSP request→ 1$ 
  • SSP markup → 10% 
  • DSP markup → 20% 

 

Case: Sending bid requests to DSPs.

Open market:  

  1. SSP sent a floor price of $ 1 to ad exchange. 
  2. We look at the value of SSP Markup and form intermediary floor price before checking DSP markup. It’s 1$+ 10% = 1,111$
  3. We look at the value of DSP Markup and form the final bid floor that we will send to DSPs. It’s 1,1$ + 20% = 1,3889$

 

Therefore the request will go to market with the following formula:

 

  • bid floor in the bid request = SSP request floor price / (1-SSP markup) / (1-DSP markup)
  • request price example = 1$ / (1 -0.1) / (1-0,2)= 1,3889 $  

Case: Defining a winner 

Scenario: 

  • DSP#1 bids at 4$
  • DSP#2 bids at 5$

Once we send the request, OPM (open market) is there, so here are 2 possibilities to manage the winning price. 

Dsp = first price auction: 

  • Winning price is equal to the highest bid price = 5$. DSP#2 is the winner.

Dsp = second price auction: 

  1. There are more than 2 bids and they are different
    • The winner of the highest price wins. DSP#2 is the winner.
    • The winning price is the second highest bid price = 4$+0,01$
  2. There are 2 bids and they are equal
    • The winner is DSP who responded first.
    • The winning price is the bid price = 4$
  3. There is just one bid and it’s quite higher than the floor price
    • The winner is DSP who responded.
    • The winning price is the bid price -2-3% = 4$ -2-3%
  4. There is just one bid and it’s close to the floor price
    • The winner is DSP who responded.
    • The winning price is the bid floor + 1 cent

 

Case: Payouts and returning bid price to SSP

We are DSP for SSP = first price auction

Once we have the final winning price we must distribute that money among the participants. 

  • Platform revenue = SSP spend + Adx revenue = DSP spend
  • DSP spend = win price
  • SSP spend = adx bid price to SSP = win price *(1-DSP markup)*(1-SSP markup)
  • Adx earn = DSP spend - SSP spend

Example: (Win price = 4$ & SSP markup = 10% & DSP markup = 20%): 

  • DSP spend = 4$
  • SSP spend = (4$ -20%)-10% = 4 - 10% = 2,88$
  • Adx earn = 4$ - 2,88$ = 1,12$

We are DSP for SSP = second price auction

For example, there were more than 2 bids and they were different.

Once we have the final winning price we must distribute that money among the participants. 

  • Platform revenue = SSP spend + Adx revenue = DSP spend
  • DSP spend = win price
  • SSP spend = adx bid price to SSP = win price *(1-DSP markup)*(1-SSP markup)

Note: When SSP swaps out auction price macro, we are comparing what we calculated by formula above and the macro value. If the calculated value is less than the macro one, we record the calculated value as SSP spend. If the macro value is less, we record it instead. If they are equal, we use any of them.

  • Adx earn = DSP spend - SSP spend

Example: (Win price = 4$ & SSP markup = 10% & DSP markup = 20%): 

  • DSP spend = 4,01$
  • SSP spend = 4,01$*(1-0,2)*(1-0,1)=2,8872$
  • Adx earn = 4,01$ - 2,8872$ = 1,1228$

How to set the auction type

You can set up auction type for each DSP endpoint. 

To do so, open endpoint settings:

https://lh3.googleusercontent.com/Lsy2sMv1rroDe03fmCbYk8u-6tFpuii9LSTlgpyvCJoBI_uulj984nr7mN80oBdEFjXJl0RzIXD2qmJq_Q__DdtZG-hJzY4mTgSTyKwwZ-7v5tkQNooYrWLJZkKeR7JfGZ7YB6Sn

 

Scroll down to ‘Auction type’ and set the type:

https://lh3.googleusercontent.com/meT1s58SBjSriUlp991_QI_ffxkGqly-opQUlyzjsUmFGy7E4vkCzlUZQ_W8QcFDmQOhYs7P-418YlhX1913jibJV4Nr94QsC4eNM7MT0nIzxEzbrjTDQaWUAgYrmxdzCm3r92fK

Click ‘Save’.

Changes will take effect immediately and DSP will continue bidding on the selected auction type.