How VCG Auction Mechanism Works Behind Facebook Ad
As of the third quarter of 2016, Facebook had 190 Cr. monthly active users worldwide, more than 15 Cr. user in India. These numbers are clearly dazzling for advertisers who are on the lookout for new platforms to reach new users. However There is huge competition between advertisers: Lacs of companies target the same people on Facebook and millions of impressions are auctioned every day. In such a competitive environment, understanding the mechanism of Facebook ad auction plays an important role for running successful Facebook campaigns.
Facebook uses the Vickrey-Clarke-Groves (VCG) auction system to sell and select ads for the network. A more useful explanation what we, as users need to know about this side of VCG came from Facebook chief economist John Hegeman, in an interview.
“If you’re an advertiser and you’re getting a chance to show your ad, you’re going to take away the opportunity from someone else. The price [of the ad] can be determined based on how much value is being displaced from those other people. An advertiser will only win this placement if their ad really is the most relevant, if it really is the best ad to show to this person at this point in time.”
The Vickery-Clark-Groves (VCG) is a sealed auction of multiple items where bidders cannot see others’ bids. Although the winner of a VCG auction is the highest paying bidder, he pays only as much as the bidder(s) he displaced by entering the auction. Therefore the right strategy in a VCG auction mechanism is to bid your true value since VCG aims for a socially optimal auction.
Let’s have a look at how it works with an example:
Imagine you are one of 4 advertisers bidding for two impressions and one bidder can win at most one impression. You bid ₹11, while the others bid ₹7, ₹5 and ₹3. The winners of the auction will be the two highest bidders: you and the ₹7 bidder. While the winning bids are ₹11 and ₹7, you and the other winner will only pay ₹5 each. Sounds too good to be true? Let’s look at how this is calculated:
Based on the formula above:
Payout for advertiser with ₹11 bid (You):
- If we removed You from the auction, ₹7 and ₹5 bids would win. Therefore, sum of other winning bids without the winner in auction is ₹7 + ₹5 + ₹0 = ₹12
- Sum of the other winning bid with the winner in auction is ₹7 + ₹0 + ₹0 = ₹7 as this bidder would be the only one in addition to you.
- So, the winning bid (what You pay) is ₹12 – ₹7 = ₹5
Payout for advertiser with ₹7 bid:
- If we removed this bidder, ₹11 and ₹5 bids would win the auction. Therefore, sum of other winning bids without the winner in auction is ₹11 + ₹5 + ₹0 = ₹16
- Sum of the other winning bid with the winner in auction is ₹11 + ₹0 + ₹0 = ₹11 as you would be the only one winning in addition to this bidder.
So, the advertiser with ₹7 bid pays (₹16 – ₹11) = ₹5
Suppose two apples are being auctioned among three bidders.
- Bidder A wants one apple and bids ₹5 for that apple.
- Bidder B wants one apple and is willing to pay ₹2 for it.
- Bidder C wants two apples and is willing to pay ₹6 to have both of them but is uninterested in buying only one without the other.
First, the outcome of the auction is determined by maximizing bids: the apples go to bidder A and bidder B, since their combined bid of ₹5 + ₹2 = ₹7 is greater than the bid for two apples by bidder C who is willing to pay only ₹6. Thus, after the auction, the value achieved by bidder A is ₹5, by bidder B is ₹2, and by bidder C is ₹0 (since bidder C gets nothing). Note that the determination of winners is essentially a knapsack problem.
Next, the formula for deciding payments gives:
- For bidder A: Bidders B and C have total value of ₹2 (the perceived value of the items they’ve won: ₹2 + ₹0). If A were removed, the maximizing bids would give C both the apples while B gets nothing. Hence, in this modified scenario, the value achieved by bidder B is ₹0 and by bidder C is ₹6. The total value achieved in this modified scenario by B and C is ₹6 (₹0 + ₹6). So A pays ₹4 (₹6 − ₹2).
- For bidder B: Bidders A and C have total value of ₹5 (₹5 + ₹0). If B were removed, the maximizing bids would give both the apples to C while A gets nothing. Hence, in this modified scenario, the value achieved by bidder A is ₹0 and the value achieved by bidder C is ₹6, thus making the total value of ₹6 (₹0 + ₹6). So B pays ₹1 (₹6 − ₹5).
- Similarly, bidder C pays ₹0 ((₹5 + ₹2) − (₹5 + ₹2)).
After the auction, A is ₹1 better off than before (paying ₹4 to gain ₹5 of utility), B is ₹1 better off than before (paying ₹1 to gain ₹2 of utility), and C is neutral (having not won anything).
Two important features of VCG auction mechanism:
1. Bidders pay less than the amount they actually bid.
2. The amount the winners pay is determined by the bids they displaced by entering and winning the auction.
Maximizing your auction performance
- Bid correctly for the objective
- Target your ads to the right people
- Use best quality creative
- Follow the guideline of Facebook ads.
- Do A/B testing
With the VCG auction, Facebook aims to find a balance between creating value for advertisers and providing valuable experience for its users. Therefore, it is important that you give your true maximum bid and create high quality targeting groups in order to increase ad quality and relevance and ensure efficient ad delivery.
Source: Wikipedia, Adphorus, Facebook, Google