Mech Design in Ads.

17 July, 2026

I had been working around auctions for a while before I understood that the auction itself was a piece of software.

Not software in the narrow sense of servers and APIs. I mean that its rules were an algorithm. Take some private inputs from people who do not fully trust one another, process those inputs, choose an outcome, charge some money, and somehow make the entire thing difficult to game. A tiny change in the payment rule could change what everybody said, which changed who won, which changed whether the market worked at all.

This was especially hard to ignore in ad tech. Every impression creates a small market that lives for a few milliseconds. Advertisers privately know what the impression might be worth to them. The publisher wants revenue. The exchange sees bids but not true values. Buyers shade, pace, learn, and react to one another. The system cannot simply ask, “what is this impression worth?” and trust the answers.

Then I started noticing the same shape elsewhere. A college cannot merely ask students where they want to go and allocate seats greedily. A city cannot ask everyone how much they value a bridge and split the bill equally. A dating app cannot rank people as if recommendations were one-sided products. A voting rule cannot assume that every ballot is a diary entry rather than a strategic move.

In all of these cases, the central problem is not prediction. It is that the input changes when people understand how the input will be used.

That sentence is mechanism design.

Game theory usually begins with a game and asks what self-interested players will do. Mechanism design runs the movie backward. It begins with an outcome we want, accepts that people have private information and their own objectives, and asks what game would make the desired outcome emerge from their behaviour. Leonid Hurwicz called mechanisms communication systems; the modern theory built around implementation, incentive compatibility, and the revelation principle earned Hurwicz, Eric Maskin, and Roger Myerson the 2007 Economics Nobel [1].

This blog is my attempt to build the subject in the order that finally made it click for me. First the designer’s problem, then truthfulness, the strange genius of second-price auctions, VCG payments, Myerson’s virtual values, matching without money, impossibility theorems, ad auctions, and finally what happens when the mechanism itself is learned by a neural network.

The big idea is simple: you do not design only the outcome. You design the incentives that produce the outcome.

The designer does not know the important part

Imagine I have one football ticket and two friends, A and B. A values it at ₹2,000. B values it at ₹1,200. If I knew those numbers, efficiency would be easy: give the ticket to A. But I do not know them. Each friend knows only their own value, and both understand that whatever they tell me may affect the ticket and the price.

This is the information problem at the centre of the subject. Agent \(i\) has a private type \(\theta_i\). A type can be a willingness to pay, a cost of completing a job, a preference ordering over colleges, risk, quality, or any private information relevant to the decision. The complete type profile is

\[ \theta=(\theta_1,\ldots,\theta_n)\in\Theta_1\times\cdots\times\Theta_n. \]

The designer chooses a mechanism \(M\). At the cleanest level it contains a message space \(S_i\) for every agent and an outcome rule \(g\):

\[ M=(S_1,\ldots,S_n,g), \qquad g:S_1\times\cdots\times S_n\rightarrow X. \]

If money is allowed, it is useful to separate the allocation \(x(s)\) from payments \(p(s)\). With quasilinear utility, agent \(i\)'s payoff is

\[ u_i(\theta_i,s)=v_i(x(s),\theta_i)-p_i(s). \]

The designer cares about some objective \(W(x,\theta)\). It might be total welfare, revenue, fairness, stability, low congestion, or a compromise among several of them. If the designer magically observed all types, they could select a social choice rule

\[ f(\theta)\in\arg\max_{x\in X} W(x,\theta). \]

But the designer sees messages, not types. The entire discipline lives inside that gap.

A prediction model usually assumes its features are sitting there waiting to be measured. A mechanism cannot. The feature vector may be an action chosen by somebody who knows the model. Change the scoring rule and the data-generating process changes with it. This is why mechanisms feel closer to control systems than ordinary supervised learning. The policy acts on people; people react; their reaction becomes the new input.

SettingPrivate typeDesigner’s goalStrategic failure
Auctionvalue for an itemefficiency or revenuebid shading, collusion, false identities
Procurementcost of doing the worklow cost with acceptable qualityinflated costs, under-delivery
College matchingranked preferencesstable seat allocationmisordered lists, exploding offers
Public projectpersonal value of the projectefficient provision and fundingfree-riding
Ad marketplacevalue of an impression or clickrevenue, relevance, liquidityshading, pacing games, poor quality

Good outcomes are not enough

A mechanism designer rarely gets to optimize one clean number. There are constraints that behave like engineering requirements. Remove one, and the mechanism may look brilliant on paper while nobody uses it.

Incentive compatibility

Does following the intended strategy make sense for each participant? In the strongest form, dominant-strategy incentive compatibility, telling the truth is optimal regardless of what everyone else reports:

\[ u_i(\theta_i,\theta_i,\theta_{-i}) \geq u_i(\theta_i,\hat{\theta}_i,\theta_{-i}) \quad \forall i,\theta_i,\hat{\theta}_i,\theta_{-i}. \]

The first \(\theta_i\) inside utility is the true type. The second is the report. The inequality says that pretending to be any other type cannot help, whatever the others do.

Bayesian incentive compatibility is weaker. Truthfulness need only maximize expected utility under beliefs about other agents’ types. That can still be useful, but it asks the participant to know or trust a distribution. Dominant strategies are operationally beautiful because the user does not need to model the room.

Individual rationality

Participation should beat the outside option. If opting out gives utility zero, we want

\[ u_i(\theta_i,\theta_i,\theta_{-i})\geq 0. \]

A truthful mechanism that reliably makes participants worse off is not much of a mechanism. It is a compulsory form.

Efficiency, revenue and budget balance

Efficiency chooses the outcome with maximum total reported value. Revenue asks how much the designer collects. Budget balance asks whether the mechanism can finance itself without outside money. These goals are not identical, and sometimes they are mathematically incompatible. Much of mechanism design is learning exactly which nice properties cannot coexist.

A mechanism is not “truthful” because its instructions request honesty. It is truthful when honesty survives as an optimal strategy after every participant has read the rules and tried to exploit them.

The second-price trick

Return to the ticket. Suppose I run the obvious sealed first-price auction: highest bid wins and pays their own bid. A values the ticket at ₹2,000. Should A bid ₹2,000? Probably not. Winning at ₹2,000 creates zero surplus. A wants to bid below value, but how far below depends on what B might bid. The rule has turned a simple value report into a prediction contest.

Now change one line. Highest bid still wins, but the winner pays the second-highest bid. This is the Vickrey auction, introduced in William Vickrey’s 1961 paper [2]. It looks like a pricing curiosity. It is actually an information-extraction device.

Let A’s true value be \(v\), and let \(m\) be the highest bid from everybody else. A’s own bid cannot change \(m\). It changes only whether A crosses the threshold and wins.

If \(v>m\), A wants to win because the payoff \(v-m\) is positive. Any bid above \(m\) wins, and bidding \(v\) does exactly that. If \(v<m\), A wants to lose because winning produces \(v-m<0\). Bidding \(v\) loses. In neither case can a lie improve the outcome. Therefore

\[ b_i=v_i \]

is a weakly dominant strategy.

The important part is not that the winner gets a discount. The payment is the smallest bid at which the winner would still have won. It separates the report that decides allocation from the price paid. My bid says whether I cross the critical threshold; the other bids determine where that threshold lies.

Truthful does not mean everybody always tells the truth in practice. Bidders can be confused, budget constrained, collusive, risk-seeking, or care about future auctions. The theorem rests on a model: private values, quasilinear utility, one item, no externalities between bidders. Mechanism design is powerful precisely because it makes those assumptions visible.

The revelation principle, or the most useful simplification in the field

At first, designing a mechanism seems impossible. Agents could submit bids, send messages, play several rounds, randomize, bargain, or take arbitrary actions. The strategy space contains every weird game we could invent.

The revelation principle collapses that search [1,3]. If some complicated mechanism implements a social choice rule in equilibrium, then there exists a direct mechanism in which agents report their types and truthful reporting is an equilibrium that produces the same outcome.

The intuition is almost embarrassingly neat. Imagine the complicated mechanism already exists, and type \(\theta_i\) would cause agent \(i\) to play equilibrium strategy \(s_i^*(\theta_i)\). Build a mediator. Each agent reports a type to the mediator; the mediator plays the corresponding equilibrium strategy in the old game on their behalf.

\[ g'(\hat{\theta}) =g\bigl(s_1^*(\hat{\theta}_1),\ldots,s_n^*(\hat{\theta}_n)\bigr). \]

If lying to the mediator helped, the agent could have mimicked that lie’s strategy in the original mechanism. But the original strategies were an equilibrium. So truth-telling must be optimal in the mediated version.

This does not say every real mechanism should literally ask for types. It says that for the purpose of finding what outcomes are implementable, we can focus on truthful direct mechanisms. Instead of searching over every possible game, we search over allocation and payment rules subject to incentive constraints. An institutional problem becomes an optimization problem.

That move is one reason the field became mathematically tractable. It is also a recurring trick in computer science: replace a huge behavioural search with a canonical interface that preserves what matters.

VCG: make people pay for the harm they cause

The Vickrey auction handles one item. Vickrey–Clarke–Groves mechanisms extend its logic to much more general allocation problems [2,4,5]. The designer first chooses the efficient outcome:

\[ x^*(\hat{\theta}) \in\arg\max_{x\in X}\sum_{j=1}^{n}v_j(x,\hat{\theta}_j). \]

Then agent \(i\) pays for the externality their presence imposes on everybody else:

\[ p_i(\hat{\theta})= \max_{x\in X}\sum_{j\neq i}v_j(x,\hat{\theta}_j) - \sum_{j\neq i}v_j(x^*(\hat{\theta}),\hat{\theta}_j). \]

The first term is the welfare everyone else could achieve if \(i\) did not exist. The second is the welfare everyone else receives in the chosen outcome when \(i\) does exist. The difference is the cost of \(i\)'s presence.

In the single-ticket auction, without the winner the second-highest bidder would get the ticket and enjoy their value. With the winner present, everybody else gets zero. The externality is therefore the second-highest value. The Vickrey payment drops straight out.

A richer example is route allocation. Suppose three delivery companies want access to a scarce road segment, but only a compatible subset can use it. VCG can choose the combination with maximum total value and charge each winner for the welfare displaced by their inclusion. A winner does not pay what they claimed the road was worth. They pay what their presence cost the rest of the system.

Now look at agent \(i\)'s utility under VCG. Ignoring a term determined only by other agents, it becomes total reported welfare:

\[ u_i =v_i(x^*,\theta_i)-p_i =\sum_j v_j(x^*,\theta_j)-h_i(\theta_{-i}). \]

Since the mechanism chooses \(x^*\) to maximize that sum, the agent cannot improve by distorting their own value. Their private objective has been made to point in the same direction as social welfare.

This is one of those formulas that feels like a magic trick the first time. But VCG has real weaknesses. Payments can be computationally expensive because the allocation problem may need to be solved once with every agent removed. The mechanism may fail budget balance in public-good settings. It can be vulnerable to collusion and false-name bids. And welfare maximization is not revenue maximization.

The mechanism aligns one carefully stated objective under one carefully stated model. It does not abolish economics.

Efficiency is not revenue: Myerson changes the score

Suppose I am not a benevolent ticket allocator. I am the seller and I care about expected revenue. Giving the object to the highest value is efficient, but it need not extract the most money.

Roger Myerson’s 1981 result shows how to design the optimal single-item auction under standard assumptions [6]. The surprising move is to stop ranking bidders by raw value and rank them by virtual value:

\[ \phi_i(v)=v-\frac{1-F_i(v)}{f_i(v)}, \]

where \(F_i\) is bidder \(i\)'s value distribution and \(f_i\) its density. The first term is the value. The second is an information-rent correction: how much surplus the mechanism must leave with this type to keep higher types truthful.

Under regularity conditions, the revenue-optimal mechanism allocates to the bidder with the highest non-negative virtual value, then charges the critical payment needed to remain the winner. If every virtual value is negative, the seller keeps the object.

For a bidder whose value is uniform on \([0,1]\),

\[ F(v)=v,\qquad f(v)=1,\qquad \phi(v)=2v-1. \]

The virtual value becomes non-negative only at \(v\geq 1/2\). So the optimal auction has a reserve price of \(1/2\). Even when someone values the item positively, the seller may refuse to sell. That deliberate inefficiency raises expected revenue.

This is the point where mechanism design stops being a chapter about clever auction formats and becomes a theory of trade-offs. The objective is encoded into the mechanism. Ask for welfare and you get VCG. Ask for seller revenue and distributions enter through virtual values. Ask for fairness, simplicity, robustness, or low regret and the rule changes again.

Sometimes money is not allowed

Auctions dominate mechanism-design explanations because payments make incentives wonderfully adjustable. But many important markets cannot use prices. Universities do not auction every seat to the highest bidder. Hospitals cannot simply sell transplant organs. People do not bid cash for dates, at least not in any market I want to join.

Now the mechanism has fewer levers. The main object becomes a preference ranking, and the desired property is often stability.

A matching is unstable if there exists a blocking pair: two participants who prefer one another to the partners assigned by the mechanism. If such a pair exists, the allocation contains the seed of its own collapse. They can leave and match privately.

Gale and Shapley’s deferred-acceptance algorithm guarantees a stable matching [7]. In the one-to-one version, one side proposes down its preference list. Each receiver tentatively holds the best proposal so far and rejects the rest. Rejected proposers continue. The process ends when nobody wishes to propose again.

The word tentatively is doing all the work. A receiver does not commit too early. Better proposals can replace worse ones. Rejections are final, so the algorithm must terminate after finitely many proposals.

If some proposer \(a\) and receiver \(b\) formed a blocking pair at the end, \(a\) must have proposed to \(b\) before reaching their assigned match. Then \(b\) either held \(a\) or rejected \(a\) for somebody preferred. Because held partners only improve over time, \(b\)'s final match cannot be worse than \(a\). Contradiction. No blocking pair exists.

But even here the side that proposes matters. The result is proposer-optimal among all stable matchings and receiver-pessimal. Truthful reporting is strategy-proof for the proposing side under the standard model, not symmetrically for everyone. Stability, fairness between sides, and strategy-proofness pull in different directions.

This is incredibly relevant to recommendation systems. A recommender usually asks, “what should user \(u\) see?” A matching market asks a harder question: “what allocation remains acceptable when every recommendation also has preferences, capacity, and the power to reject?” Job platforms, colleges, dating apps, and organ exchange are not ordinary ranking problems with a second table attached. They are markets.

The impossibility results are not bugs in the proof

After Vickrey and Gale–Shapley, it is easy to become overconfident. Perhaps every social problem has a beautiful payment or proposal rule waiting to be found.

Then the impossibility theorems arrive.

The Gibbard–Satterthwaite theorem says, roughly, that with at least three possible outcomes and unrestricted preferences, every deterministic, onto, strategy-proof voting rule is dictatorial [8,9]. If all outcomes are genuinely possible and no single voter controls the result, somebody can benefit from misreporting in some situation.

This does not say democracy is useless. It says that a completely general voting mechanism cannot simultaneously be non-dictatorial, always responsive, deterministic, and immune to strategic voting. Escapes exist only by relaxing something: restrict preferences, randomize, weaken strategy-proofness, accept a smaller outcome space, or tolerate some manipulability.

Public goods have their own collisions. We may want efficient provision, truthful revelation, individual rationality, and exact budget balance. In general, we cannot have all of them under broad conditions. VCG can create truthfulness and efficiency, but the transfers need not add up neatly. Fixing the budget can destroy the incentives.

Property we wantWhy it mattersWhat can conflict with it
Strategy-proofnessparticipants need not game the rulenon-dictatorial voting with unrestricted preferences
Efficiencymaximize total valuerevenue, budget balance, distributional goals
Stabilityno pair wants to defectequal treatment of both sides, full strategy-proofness
Budget balanceno outside subsidy or surplusefficient truthful public-good provision
Simplicitypeople can understand and trust the rulethe theoretically optimal bespoke mechanism

I like these results because they make mechanism design unusually honest. The output is not always “here is the optimal algorithm.” Sometimes it is a map of the frontier: here are the properties you can combine, here is the one you must sacrifice, and here is the cost of pretending otherwise.

Ad auctions are mechanism design running at machine speed

Mechanism design became concrete for me through advertising because the participants do not submit preferences once a year. They submit bids continuously, through software, into a market that changes while they learn it.

Sponsored-search auctions historically used the generalized second-price mechanism. Advertisers are ranked into slots, often using a bid adjusted by quality. Each winner pays an amount related to the bidder below. It sounds like the Vickrey auction stretched across several positions. It is not the same thing.

Edelman, Ostrovsky, and Schwarz showed that GSP generally has no dominant-strategy equilibrium and truth-telling is not generally an equilibrium [10]. With one item, “pay the next bid” creates the critical payment. With several slots of different click volumes, each winner changes the displacement chain below them. A true VCG payment charges the total externality imposed on others; GSP’s local next-bid payment does not generally equal that externality.

Modern programmatic display auctions commonly use first-price rules; OpenRTB 2.6 explicitly defines first-price and second-price-plus auction types [14]. When the winner pays their bid, a DSP again faces the shading problem. Let \(v\) be the predicted value of an impression and \(b\leq v\) the submitted bid. A simplified expected surplus is

\[ U(b\mid v)=(v-b)\Pr(\text{win}\mid b). \]

Bid too low and the margin is lovely on impressions you rarely win. Bid too high and you win often but overpay. The optimal bid depends on the competitive landscape, floors, fees, pacing, value calibration, and how the auction reports outcomes. The mechanism determines what the bidder’s machine-learning model must learn.

This is why “predict conversion probability and multiply by value” is only half a bidder. A good bid system also needs a model of the market induced by the auction. And the exchange must think one level higher: if it changes the rule, every DSP will retrain and the bid distribution itself will move.

There are more objectives than price. The publisher cares about revenue and user experience. The advertiser cares about incremental value, not merely winning. The platform may include quality to avoid irrelevant ads. Budgets create pacing constraints across time. Repeated interaction creates learning, retaliation, and possible collusion. Privacy changes what values can be estimated. Latency limits how complicated the allocation can become.

An ad auction is not a static (\arg\max) over bids. It is a dynamic mechanism embedded inside forecasting, optimization, identity, measurement, and distributed systems.

The designer can be gamed too

Most elegant results assume the mechanism is committed, agents know the relevant rules, and the designer’s objective has been stated correctly. Real systems are less polite.

Participants may collude. One person may create several identities. A platform may quietly optimize a proxy. A scoring rule can reward visible effort instead of useful work. Agents can enter or leave. Values may be interdependent: learning that everyone else thinks a painting is fake changes what I think it is worth. Budgets and risk break quasilinear utility. Repeated play lets participants experiment against the mechanism.

There is also Goodhart’s law hiding nearby. If a school rewards teachers for test scores, the score becomes an object of strategy. If a marketplace rewards sellers for click-through rate, listings learn to attract clicks. If a content platform pays for watch time, creators optimize watch time. The metric is not merely measured after behaviour. Once tied to allocation or payment, it becomes a mechanism.

This gives a practical design checklist:

QuestionWhat to inspect
What is private?values, costs, preferences, quality, effort, identity, future intentions
What can participants change?reports, timing, entry, identities, coalitions, effort, observable features
What equilibrium is assumed?dominant strategy, Bayes–Nash, repeated-game learning, approximate best response
Which constraints are hard?truthfulness, participation, budget, capacity, fairness, privacy, latency
What happens off distribution?new bidder population, collusion, model error, shocks, adversarial adaptation
Can people understand it?simplicity, auditability, recourse, predictable payments, trust

A theoretically optimal rule that nobody trusts may attract the wrong participants or cause defensive behaviour. Transparency can improve participation but also make gaming easier. Complexity can raise revenue in a model while increasing operational mistakes. The institution has users.

What changes when a neural network designs the auction?

Myerson solved the standard single-item problem beautifully. Multi-item, multi-bidder auction design becomes much nastier. Values can be additive, complementary, or substitutable. The allocation space explodes, and the optimal mechanism may not have a clean analytic form.

This motivated automated mechanism design and, eventually, neural approaches. RegretNet represents allocation and payment rules with neural networks and trains them to maximize expected revenue while penalizing incentive violations [11]. A simplified objective is

\[ \min_w -\mathbb{E}_{v\sim F}\!\left[\sum_i p_i^w(v)\right] +\lambda\sum_i \operatorname{Regret}_i(w), \]

where ex-post regret measures the gain agent \(i\) could obtain by reporting the best lie:

\[ \operatorname{Regret}_i(w)= \mathbb{E}_{v}\left[ \max_{v_i'}u_i^w(v_i;v_i',v_{-i}) -u_i^w(v_i;v_i,v_{-i}) \right]. \]

If regret is zero, truth-telling is optimal. If it is small, the mechanism is approximately incentive compatible under the tested distribution and optimization procedure.

I find this direction fascinating because it turns institution design into constrained learning. But it also creates a dangerous temptation: treat empirical regret like a proof. The inner maximization may miss a profitable deviation. The training distribution may not resemble deployment. A bidder may coordinate with others, split identities, or exploit numerical quirks the evaluator never searched.

Learned mechanisms need the usual ML evaluation plus strategic evaluation. We should ask about distribution shift, worst-case regret, coalition deviations, interpretability, computational cost, and whether the learned rule is simple enough to communicate. A tiny revenue lift may not justify a mechanism nobody can audit.

The same issue becomes sharper with AI agents. Software bidders can test strategies faster than humans, coordinate through common models, and react to mechanisms at machine speed. Mechanism design gives us tools for aligning self-interested agents, but mechanisms are incomplete contracts: no rule can specify every future contingency. A 2026 preprint argues formally and experimentally that mechanisms alone can leave welfare gaps when AI agents lack any intrinsic concern for others [12]. I would treat that as an early result, not a settled theorem about all agent systems, but the warning is correct. Incentives shape behaviour only over what the mechanism can observe and reward.

Mechanism design is really interface design for incentives

There is a computer-science reading of this entire field that I like.

The mechanism exposes an interface. Agents submit messages. The allocation rule is a function. Payments are feedback. Incentive compatibility is a behavioural correctness condition. Individual rationality is an adoption constraint. Budget balance is a resource constraint. The revelation principle gives a canonical API. Impossibility theorems are lower bounds.

But this interface is unusual because the caller is adversarial, adaptive, and has private state. You cannot test it only with fixed inputs. You have to test the incentive to generate those inputs.

That is why mechanism design keeps appearing wherever ML systems meet people. A ranking model allocates attention. A pricing model transfers surplus. A recommendation system changes future preferences and supply. A reputation score induces effort toward whatever it measures. A reward model becomes a mechanism for an AI policy. Once an output changes payoffs, prediction and incentives are coupled.

The clean workflow is therefore not:

\[ \text{collect data}\rightarrow\text{fit model}\rightarrow\text{deploy score}. \]

It is closer to:

\[ \text{choose objective} \rightarrow \text{model private information} \rightarrow \text{design rules} \rightarrow \text{solve strategic response} \rightarrow \text{evaluate the induced system}. \]

The model is one component. The equilibrium is the product.

My practical test for a mechanism

If I had to review a new marketplace, allocation rule, or agent incentive system tomorrow, I would not begin by asking whether the algorithm is optimal. I would ask seven smaller questions.

1. Optimal for whom?

Revenue, total welfare, one side of the market, fairness, and growth are different objectives. “Optimal” without a named objective is marketing.

2. What does each participant know privately?

If the mechanism needs information that nobody benefits from revealing, the information will arrive distorted or not at all.

3. What is the easiest profitable lie?

Do not begin with exotic attacks. Try a lower bid, a delayed entry, a reordered list, a second identity, a coalition, or effort aimed only at the metric.

4. How much strategic sophistication is required?

A Bayes–Nash equilibrium may be mathematically valid and operationally terrible if ordinary participants need accurate beliefs about everybody else. Simple dominant strategies are valuable because they reduce cognitive tax.

5. Which assumption breaks first?

Independent private values? Unlimited budgets? Stable preferences? One-shot play? No collusion? Exact optimization? The first broken assumption usually predicts the first failure.

6. Where does the money or scarce resource go?

Track transfers, platform fees, subsidies, externalities, rejected participants, and unallocated capacity. Local incentive alignment can hide system-level waste.

7. What will people learn after a thousand rounds?

Static truthfulness is not the whole story in repeated digital markets. Bidders learn, platforms update, and the equilibrium moves. Evaluate the loop, not only one auction.

Closing note

Mechanism design began to make sense to me when I stopped thinking of it as auction theory and started thinking of it as the engineering of reactions.

A rule does not sit outside the system. It enters everybody’s utility function. A first-price rule creates shading. A second-price rule can make value revelation safe. A VCG payment turns private payoff toward social welfare by charging externality. A reserve price trades efficiency for revenue. Deferred acceptance prevents matching markets from unravelling. Voting impossibility tells us when no clever rule can satisfy the entire wish list.

The most important output is sometimes a mechanism. Sometimes it is an impossibility frontier. And sometimes it is simply the realization that the data we were planning to model is itself a strategic response.

This matters more as decisions become automated. Ads, jobs, creators, drivers, sellers, datacenter resources, and AI agents are increasingly allocated by rules that execute millions of times. We can make those rules faster with machine learning. We can make them more personalized. We can even learn the mechanism itself.

But the old question remains underneath all of it: once everyone understands the rule and acts in their own interest, what world does the rule create?

Game theory predicts the answer. Mechanism design lets us choose the question.

References and links

  1. The Royal Swedish Academy of Sciences (2007). Mechanism Design Theory: Scientific Background for the Sveriges Riksbank Prize in Economic Sciences. NobelPrize.org.
  2. Vickrey, W. (1961). Counterspeculation, Auctions, and Competitive Sealed Tenders. The Journal of Finance, 16(1), 8–37. Paper.
  3. Myerson, R. B. (1979). Incentive Compatibility and the Bargaining Problem. Econometrica, 47(1), 61–73. DOI.
  4. Clarke, E. H. (1971). Multipart Pricing of Public Goods. Public Choice, 11, 17–33. DOI.
  5. Groves, T. (1973). Incentives in Teams. Econometrica, 41(4), 617–631. DOI.
  6. Myerson, R. B. (1981). Optimal Auction Design. Mathematics of Operations Research, 6(1), 58–73. INFORMS.
  7. Gale, D., & Shapley, L. S. (1962). College Admissions and the Stability of Marriage. The American Mathematical Monthly, 69(1), 9–15. RAND paper.
  8. Gibbard, A. (1973). Manipulation of Voting Schemes: A General Result. Econometrica, 41(4), 587–601. DOI.
  9. Satterthwaite, M. A. (1975). Strategy-proofness and Arrow’s Conditions. Journal of Economic Theory, 10(2), 187–217. DOI.
  10. Edelman, B., Ostrovsky, M., & Schwarz, M. (2007). Internet Advertising and the Generalized Second-Price Auction: Selling Billions of Dollars Worth of Keywords. American Economic Review, 97(1), 242–259. AEA.
  11. Dütting, P., Feng, Z., Narasimhan, H., Parkes, D. C., & Ravindranath, S. S. (2019). Optimal Auctions through Deep Learning. ICML 2019. PMLR.
  12. Huang, X. A., Tharas, C., Marro, S., Truong, V. Q., Schölkopf, B., La Malfa, E., & Jin, Z. (2026). Mechanism Design Is Not Enough: Prosocial Agents for Cooperative AI. arXiv:2605.08426.
  13. The Royal Swedish Academy of Sciences (2012). Stable Allocations and the Practice of Market Design. NobelPrize.org.
  14. IAB Tech Lab (2022). OpenRTB Version 2.6. Specification.

get the next post by email