Skip to content
Chaoran Huang
Auctions & Mechanism Design

VCG Auctions, Gently: Pay for the Harm You Cause

A story-first introduction to welfare, counterfactual payments, and truthful bidding through one projector-and-screen auction.

A community arts center is selling two things: a projector and a screen. It can give them to one person as a pair or split them between two people.

Three people are interested:

  • Alice can use either item, but owning both would not help her more.
  • Bob is in the same position, although the equipment is worth less to him.
  • Carol runs a film club. A projector or screen alone helps a little; the working pair is much more valuable.

Here is what each person thinks the possible bundles are worth. The numbers are value units—you can read one unit as $1,000 if you want concrete stakes.

BidderProjectorScreenProjector and screen
Alice222
Bob111
Carol114

Who should get what? And once we know that, what should the winner pay?

Those two questions are the heart of the Vickrey–Clarke–Groves mechanism, usually shortened to VCG.


Who should get the projector and screen?

The tempting answer is to inspect each item separately. Alice lists the highest value for the projector and the highest value for the screen, so that rule would hand her both.

But Alice does not value the pair at 2+2=42 + 2 = 4. Her row says the pair is worth only 2 to her. The two items are substitutes: once she has one, the other adds nothing.

Carol has the opposite preference. The items are complements. Each one alone is worth 1 to her, but together they are worth 4.

So there are three allocations worth comparing:

  • Give both items to Alice: total value 2.
  • Give one item to Alice and the other to Bob: total value 3.
  • Give both items to Carol: total value 4.

That total is called welfare. Here it means nothing more mysterious than the value created for everyone who receives something. Giving the pair to Carol creates the most welfare.

The difficulty is that bids overlap. We cannot add Alice's projector bid to her screen bid when her value for the pair says otherwise, and we cannot accept two bids that require the same item. With multiple goods, “take the highest bid” is not an allocation rule.


What does VCG choose?

VCG separates the two jobs:

  1. Choose the feasible allocation with the greatest combined reported value.
  2. Charge each winner for the value their presence takes away from everyone else.

“Reported” matters because the arts center cannot see anyone's true values. We are also using the standard clean model: bidders know their own non-negative values, receiving nothing is worth zero, a unit of payment subtracts one-for-one from their benefit, and no hard budget limit gets in the way.

For the table above, the first rule gives both items to Carol because 4 is greater than the best split value of 3.


Why can't we just charge Carol her bid?

Suppose Carol wins and pays the 4 she reported. Her net benefit—her value minus her payment—is zero. If she could bid 3.1, still win, and pay 3.1, she would keep 0.9 instead. Charging winners their own bids turns every report into a guess about how little they can get away with saying.

VCG instead bases the price on the alternatives the winner displaces. With a single item, its two rules reduce to the well-known auction where the highest bidder wins but pays the runner-up's bid. For bundles, finding that displaced alternative takes one careful counterfactual.


So what should Carol pay?

VCG asks a counterfactual question:

Payment = everyone else's best reported value without you − their reported value with you

Without Carol, the best allocation gives the projector to Alice for 2 and the screen to Bob for 1. Together they receive 3.

With Carol present and winning the pair, Alice and Bob receive nothing. Their combined value is 0.

Carol's presence therefore costs the others 30=33 - 0 = 3, so Carol pays 3. This lost value is the externality she imposes.

Notice what is absent: Carol's own 4 appears nowhere in her price. The formula only compares values reported by Alice and Bob. Her report can change which allocation is chosen, but it never becomes one of the values being subtracted.

Why do Alice and Bob pay zero? Remove Alice and the result does not change: Carol still wins both items and creates 4. Alice's presence harms nobody, so her payment is 44=04 - 4 = 0. The same argument applies to Bob.

Carol, meanwhile, values the pair at 4 and pays 3, leaving her with a net benefit of 1. Carol keeps exactly the value she adds: welfare rises from 3 without her to 4 with her, also a gain of 1.


Why is honesty actually the best policy?

Fix whatever Alice and Bob report. The best value they could create without Carol is now a fixed baseline; Carol cannot change it by changing her report. Her report has exactly one power: it can change which allocation gets picked.

After subtracting the VCG payment, Carol's final benefit can be read as:

Carol's true value in the chosen allocation, plus Alice and Bob's reported values there, minus the fixed without-Carol baseline.

The final piece is fixed. When Carol reports truthfully, the first two pieces are exactly the score the mechanism maximizes. Her report then makes the mechanism choose the allocation that gives her the greatest possible benefit. If Alice and Bob are truthful too, that same score is the actual welfare created by the allocation.

She does not need to predict Alice or Bob. Whatever they report, truth cannot leave her worse off than a lie. A lie might happen not to change the result, but it cannot produce a higher benefit. That is what it means for truth-telling to be a dominant strategy.


What does VCG promise—and where does it break?

Under the assumptions above, VCG makes a narrow but powerful promise: tell the truth, and the goods go where they create the most value. A truthful bidder also never pays more than the value they gain, so participating does not make them worse off.

That promise is about welfare, not seller revenue. In our example, the allocation creates 4 units of value while the seller collects 3. If Alice and Bob were absent, Carol would still value the pair at 4 but would impose no harm on anyone else—and VCG would charge her 0.

VCG has other limits. With many goods, searching every possible bundle and allocation can be brutally expensive. Truthfulness protects one bidder acting alone, not groups coordinating their reports. And low revenue is not a bug in the formula; revenue was never the objective it optimized. Each limit deserves its own post.

Auctions & Mechanism Design

This post asks how to allocate multiple goods efficiently when bidders know their own values. Its sibling, One Equation for Pricing: ψ(p*) = c, asks the complementary question: what changes when the seller wants to maximize revenue instead?

Further reading