designing auctions for search ads
play

Designing Auctions for Search Ads Kshipra Bhawalkar Lane (Google - PowerPoint PPT Presentation

Designing Auctions for Search Ads Kshipra Bhawalkar Lane (Google Research) Joint work with Gagan Aggarwal, Aranyak Mehta With input from various Google Research Scientists and Engineers Rich Ad Auctions Old Search Ads New Search Ads 2


  1. Designing Auctions for Search Ads Kshipra Bhawalkar Lane (Google Research) Joint work with Gagan Aggarwal, Aranyak Mehta With input from various Google Research Scientists and Engineers

  2. Rich Ad Auctions Old Search Ads New Search Ads 2

  3. Auction Design Allocation Rule: Algorithm to select ads Payment Rule: Algorithm to compute payments (cost per click (CPC)) 3

  4. Advertiser Model Value per click : maximum pay max $10 bid = $9 willingness to pay per click Report: Bid per click Goal: Maximize utility = CTR * (value - CPC); CTR = expected number of clicks Truthfulness: maximize utility with bid = value 4

  5. Auctioneer Model Maximize economic efficiency : ∑ value * CTR Shown ads Show ads from advertisers that value them the most ● Auctioneer 5

  6. Outline ● Position Auctions ● Designing Rich Ad Auctions ● Optimal Rich Ad Auction ● Greedy Auction 6

  7. Position Auction 7

  8. Position Auction Choose ads for k positions Allocation Rule: Assign ads to position in the eCPM = bid * CTR order Auctioneer 8

  9. Generalized Second Price (GSP) Payment Rule Payment Rule: CTR Minimum threshold below which ● Total GSP cost the ad loses clicks CPC = next-eCPM / CTR Where eCPM = bid * CTR bid CPC ● Same price charged for all clicks 9

  10. From second price to GSP GSP generalizes celebrated second price [Vickrey'61] auction for single item Second price auction in single position is truthful - optimal to bid true value independent of other's bid Simple generalization to multiple positions not truthful! Takeaway #1: Auctions that work for single item may break when extended to multiple items 10

  11. From second price to GSP GSP generalizes celebrated second price [Vickrey'61] auction for single item Second price auction in single position is truthful - optimal to bid true value independent of other's bid Simple generalization to multiple positions not truthful! Takeaway #1: Auctions that work for single item may break when extended to multiple items 11

  12. Vickrey-Clarke-Groves (VCG) payment rule Payment Rule: Charge for each incremental clicks the minimum bid at which the clicks are obtained 0.08 Payment = $2 * 0.02 + $5 * (0.05 - 0.02) + s 0.05 $9 * (0.08 - 0.05) = 0.46 k c i l c CPC = payment/clicks = $5.75 0.02 $2 $5 $9 $10 bid Ref: [Aggarwal et al. 2006] 12

  13. Designing Rich Outline Ad Auctions Position Auctions ● Designing Rich Ad Auctions ● ● Optimal Rich Ad Auction ● Greedy Auction 13

  14. Rich Ad Auctions ● Bid Bids per Rich Ads Maximum price for a click ○ click Same for all rich ads $10 ○ ● Rich ads differ in ○ Height in pixels $5 Information provided ○ Click Through Rate (CTR) $4 ○ $8 $7 14

  15. Rich Ad Auctions Shown Cost per click Bids per Rich Ads $8 click $10 $4 $7.5 $5 Auctioneer $4 ● Choose up to k rich ads ● Must fit within MaxHeight Assign cost per click (CPC) ● $8 ● Charge when user clicks ad $7 15

  16. Truthful Rich Ad Auction Truthful: Optimal to report true value independent of what others bid Preferable when starting from scratch Why truthful? Ease of bidding ● ● Easier to extend 16

  17. Truthful Rich Ad Auction Truthful: Optimal to report true value independent of what others bid Preferable when starting from scratch Why truthful? Ease of bidding ● Takeaway #2: Consider implementing truthful auctions ● Easier to extend 17

  18. Building on GSP GSP used for more than a decade... Well established ● ● Understood and optimized for by advertisers, engineers ● Steady state bids optimized for GSP Very challenging to switch auction to VCG [Varian, Harris 2013] ● 18

  19. Goal: Generalize GSP for Rich Ads Rich ad auction should have Same allocation and payment as GSP when unconstrained ● ● Bid monotonicity: Get same or more clicks if bidding higher ● Second pricing principle: charge minimum threshold to lose clicks 19

  20. Strategizing about Rich Ads Advertisers can be strategic about which rich ads they provide. Rich ad truthfulness: Optimal to provide all rich ads Rich ad monotonicity: Advertiser should not get more more clicks by opting out of rich ads 20

  21. Strategizing about Rich Ads Advertisers can be strategic about which rich ads they provide. Rich ad truthfulness: Optimal to provide all rich ads Rich ad monotonicity: Takeaway #3: Beware of different ways participants can be strategic Advertiser should not get more more clicks by opting out of rich ads 21

  22. Outline Optimal Rich Ad Position Auctions ● Auction ● Designing Rich Ad Auctions ● Optimal Rich Ad Auction Simple Greedy Auction ● 22

  23. Optimal Allocation Allocation Rule: Choose up to k rich ads, only one per advertiser to Maximize ∑ eCPM = ∑ bid * CTR Selected ads Selected ads 23

  24. Optimal Allocation: Computational Challenge Allocation Rule: Choose up to k rich ads, only one per advertiser to Maximize ∑ eCPM = ∑ bid * CTR Selected ads Selected ads Computational Challenge: Knapsack problem: Find best packing of rich ads with Max-Height ● Greedy not optimal, implement dynamic program or brute force ● ● Pushing real world latency limits 24

  25. Optimal allocation is not rich ad monotone Optimal allocation trades off space between advertisers Example: ● Config on left is best A1 ● A, B get more clicks in config on A2 right. B1 ● A or B can opt-out of smaller rich B2 ad to ensure config on the right C1 wins. 25

  26. GSP like payment rule Payment Rule: Generalized GSP (GGSP) s k c Minimum threshold at which lose ● i l Total GGSP cost c clicks ● Same CPC for all clicks bid [Muthukrishnan'09, Cavallo et al.'17] 26

  27. GGSP is a bit more complex GGSP price = max losing configs min. Bid to beat config 27

  28. GGSP is a bit more complex GGSP price = max losing configs min. Bid to beat config B2 Advertiser appears in both configs ● B1 ● Lowering bids lowers sum-eCPM of both ● Price = bid where the scores become equal. 28

  29. GGSP is a bit more complex GGSP price = max losing configs min. Bid to beat config B2 Advertiser appears in both configs ● B1 ● Lowering bids lowers sum-eCPM of both ● Price = bid where the scores become equal. losing config winning config CPC(i) = sum-ecpm( ) - sum-ecpm( ) without i without i CTR(i, winning-config) - CTR(i, losing config) 29

  30. GGSP is a bit more complex GGSP price = max losing configs min. Bid to beat config B2 No longer just pay the bid of the next ad Advertiser appears in both configs ● B1 ● Lowering bids lowers sum-eCPM of both ● Price = bid where the scores become equal. losing config winning config CPC(i) = sum-ecpm( ) - sum-ecpm( ) without i without i CTR(i, winning-config) - CTR(i, losing config) 30

  31. Properties of Generalized GSP ➕ Same prices as GSP in special s k cases c i l Total GGSP cost ➖ Large increase in CPC for a small c increase in clicks bid Takeaway #3: Generalizations of second price do not retain all the nice properties 31

  32. Lack of rich ad monotonicity breaks GGSP clicks Price Current without bid opt-out 32

  33. Lack of rich ad monotonicity breaks GGSP clicks Price Price Current without with bid opt-out opt-out 33

  34. Lack of rich ad monotonicity breaks GGSP Get more clicks clicks at lower price Price Price Current without with bid opt-out opt-out 34

  35. Truthful payment rule for Rich Ad Auctions Vickrey(1961), Clarke(1971), Groves(1973) provide general truthful auction Allocation rule finds the optimal allocation 35

  36. Truthful payment rule for Rich Ad Auctions Vickrey(1961), Clarke(1971), Groves(1973) provide general truthful auction Allocation rule finds the optimal allocation Payment rule: For each shown ad i, charge damage caused to others. best efficiency Efficiency of ads other Payment(i) = ( ) - ( ) without i than i in selection 36

  37. Truthful payment rule for Rich Ad Auctions Vickrey(1961), Clarke(1971), Groves(1973) provide general truthful auction Allocation rule finds the optimal allocation Payment rule: For each shown ad i, charge damage caused to others. best efficiency Efficiency of ads other Payment(i) = ( ) - ( ) without i than i in selection Truthful in both bids and rich ads Computationally expensive! 37

  38. Outline Position Auctions ● Greedy Auction ● Designing Rich Ad Auctions ● Optimal Rich Ad Auction Greedy Auction ● 38

  39. Greedy Auction eCPM order Allocation Allocation Rule: A2 A2 Pick ads in eCPM = bid * CTR ● order B1 A1 ● Only one rich ad per advertiser Stop when space runs out B1 ● C1 B2 39

  40. Greedy Allocation Rule: Properties + Bid monotone: bidding higher gets more clicks + Rich ad monotone: always show best rich ad for each advertiser + Efficient when space is not a constraint 40

Recommend


More recommend