Sponsored Search Auctions

Sponsored search (per-click pricing, per-query continuous auctions, slots, impressions vs clicks); click-through rates alpha_ij, weights and scores, rank-by-bid vs rank-by-revenue, the generalized second price (GSP) and generalized first price (GFP) auctions; the static model and its four strong assumptions; Myerson revenue-optimal auction as VCG on virtual values; efficient allocation as a maximum-weight assignment LP with VCG prices from the minimal optimal dual; assortative (Northwest corner) assignment; why multi-slot VCG differs from GSP (worked two-slot example); ranking auctions and the truthful payment rule; GFP symmetric Bayes-Nash efficiency and bid fluctuation; locally envy-free assignments = optimal assignments (Theorem 28.1); GSP full-information equilibrium implementing VCG (Theorem 28.2); condominium auctions; bid rotation and vindictive bidding; online budgeted allocation, LP with budget shadow prices, greedy 1/2-competitive, budget smoothing with phi(x) = 1 - e^(x-1), optimal 1 - 1/e competitive ratio (Theorem 28.3, Lemma 28.4); open issues (soft budgets, pay per action, competing search engines, syndication, CTR learning)

· 20 min read · 3,974 words

Motivation: auctioning attention next to search results

Offline, advertising is sold by negotiation or posted price. Online, search engines auction space beside their algorithmic results. When a user searches “ipod,” Apple or Best Buy may appear in the sponsored listings.

DefinitionSponsored search

  • Sponsored listings appear above or beside the results, in the same format (title, text, link). Each position is a slot, and higher slots get more attention and more clicks.
  • Advertisers pay per click: nothing for a display that isn’t clicked.
  • Each query has its own auction. HostRocket bidding 40¢ on “Web hosting” means paying up to 40¢ per click.
  • Auctions are continuous and dynamic. Bids change at any time (raise “buy flowers” before Valentine’s Day), and a new auction clears on every search.
  • Advertisers can set daily or monthly budgets.

WarningImpressions, not clicks

Bids are per click, but the engine can only allocate impressions (placements on the screen). Clicks follow only stochastically.

NoteScale (2005 figures, as reported)

About $7B in revenue, nearly doubling yearly for five years; $5.1B in the US, which was 41% of US online ad revenue. About 85% of Google’s $4.1B and 45% of Yahoo!‘s $3.7B. As many as 17% of Google searches produce a paid click, earning about 9¢ per query. Overture (GoTo.com, later Yahoo!) pioneered the model.

IntuitionThe central question

Search engines sell ordered slots whose value differs by position, to bidders with private per-click values, millions of times a day under budget constraints. How do the mechanisms actually used compare with what theory says is efficient or revenue-optimal — and how should budgets be handled online?

Why per click rather than per impression? Traditional media sell exposure because effectiveness is hard to measure. The Web can track clicks, and direct marketers prefer to pay for them. The next step, paying per action or conversion, is discussed under Open questions.


Existing mechanisms

Advertisers submit keyword–bid pairs plus a budget. On each search, the interested advertisers with budget remaining enter an auction.

DefinitionClick-through rates, weights, scores

  • nn bidders and m<nm < n slots.
  • CTR αij\alpha_{ij} is the probability a user clicks slot ii when bidder jj occupies it, with αij≥αi+1,j\alpha_{ij}\ge\alpha_{i+1,j} (higher slots are better for everyone).
  • Each advertiser has a weight wjw_j (relevance or quality) and a score sj=wjbjs_j = w_jb_j.
  • Slots are allocated in decreasing score order. Number bidders so bidder jj gets slot jj.
  • Slot jj pays per click the lowest bid that keeps its position: pricej=sj+1wj.\text{price}_j = \frac{s_{j+1}}{w_j}.
MechanismWeightsPrice per click
GSP, rank by bid (Overture/Yahoo!)wj=1w_j = 1next bid bj+1b_{j+1}
GSP, rank by revenue (Google)wj=α1jw_j = \alpha_{1j}sj+1/wjs_{j+1}/w_j
GFP (Yahoo! before 2004)rank by bidyour own bid

NoteWhy decaying CTRs matter

Monotone CTR decay means every bidder ranks slots identically. This is much more structure than general multi-item auctions have, and it enables sharper equilibrium analysis.

graph TD
  B1["Slot 1: highest score"] -->|"pays next score / own weight"| B2["Slot 2"]
  B2 -->|"pays next score / own weight"| B3["Slot 3"]
  B3 -->|"sets slot 3's price"| B4["First excluded bidder"]

The static model

DefinitionStatic model

Bidder jj has a private, one-dimensional value per click vjv_j, and gets 00 without a slot. Bidders are risk-neutral with quasilinear money.

Four assumptions need salt:

AssumptionReality check
static (one-shot)auctions recur constantly; the chapter accepts this for tractability
value per click is slot-independentsome claim top-slot clicks convert worse (errors, less serious users); tracking data (Isobar) says the top slot converts about as well
no externalities between biddersAvis may value Hertz being absent
CTRs are common knowledgeengines learn CTRs from rich context (a hard ML problem with an explore/exploit trade-off); bidders know less; CTRs fluctuate

Revenue maximization and efficiency

In the static model, the optimal designs are already known.

TheoremRevenue-optimal auction

Apply Myerson directly (see revenue-maximization), with the allocation variable xj(b)x_j(b) reinterpreted as the expected CTR of a bidder bidding bb. The optimum is the generalized Vickrey auction on virtual values, i.e. VCG with reserve prices.

FormulaEfficient allocation: maximum-weight assignment

With xij=1x_{ij} = 1 if bidder jj gets slot ii (kk slots):

max⁡∑i=1k∑j=1nαijvjxijs.t.∑jxij≤1 ∀i,∑ixij≤1 ∀j,xij≥0.(28.1–28.4)\max\sum_{i=1}^k\sum_{j=1}^n\alpha_{ij}v_jx_{ij}\quad\text{s.t.}\quad \sum_jx_{ij}\le1\ \forall i,\qquad \sum_ix_{ij}\le1\ \forall j,\qquad x_{ij}\ge0. \tag{28.1–28.4}

This is bipartite maximum-weight matching, solvable in polynomial time. The constraint matrix is totally unimodular, so there is an integral optimum (an assignment).

FormulaThe dual gives VCG prices

With pip_i for the slot constraints and qjq_j for the bidder constraints:

min⁡∑ipi+∑jqjs.t.pi+qj≥αijvj,pi,qj≥0.(28.5–28.7)\min\sum_ip_i + \sum_jq_j\quad\text{s.t.}\quad p_i + q_j \ge \alpha_{ij}v_j,\qquad p_i,q_j\ge0. \tag{28.5–28.7}

pip_i is the expected payment for slot ii (CTR times price per click), and qjq_j is bidder jj‘s profit. Among all optimal duals, the one minimizing ∑ipi\sum_ip_i gives the generalized Vickrey prices.

IntuitionOne LP, both answers

The primal chooses the allocation. The dual splits the total surplus into seller revenue and buyer profits. The VCG split is the one that gives bidders as much as possible, i.e. the seller as little as possible, consistent with stability.

DefinitionAssortative assignment (Northwest corner rule)

If CTRs are bidder-independent, αij=μi\alpha_{ij} = \mu_i, the efficient assignment gives the highest vv the top slot, the next highest the next slot, and so on.

NoteAscending versions

If sealed bids are objectionable, ascending implementations of the generalized Vickrey auction exist.

GSP is not VCG

Warning“Based on Vickrey” is not “truthful”

Neither GFP nor GSP has truthful bidding as an equilibrium. Google’s promotional material called its auction a generalization of Vickrey’s single-item auction (true), and concluded that sincere bidding is optimal (false). The same mistake was made about Hambrecht’s IPO auctions. A design that reduces to Vickrey for one unit need not inherit Vickrey’s properties for many units. (The chapter’s analogy is the “freshman binomial theorem,” (a+b)n=an+bn(a+b)^n = a^n + b^n: true for n=1n = 1 only.)

ExampleTwo slots, three bidders: how a second slot lowers the top price

Values v1>v2>v3v_1 > v_2 > v_3 and CTRs μ1>μ2\mu_1 > \mu_2.

Top slot alone, by English auction: bidder jj stays while μ1(vj−p1)≥0\mu_1(v_j - p_1)\ge0, so the price ends at p1=v2p_1 = v_2.

With slot 2 available (currently priced at 0): bidder jj stays in the top-slot auction only while that slot beats the free lower slot:

μ1(vj−p1)≥μ2vj  ⟺  p1≤(1−μ2μ1)vj.\mu_1(v_j - p_1)\ge\mu_2v_j \iff p_1\le\Big(1 - \frac{\mu_2}{\mu_1}\Big) v_j.

So the top-slot price ends at (1−μ2μ1)v2<v2\big(1 - \frac{\mu_2}{\mu_1}\big)v_2 < v_2.

The second slot is an outside option that lowers what a bidder will pay for the first. VCG builds this in. GSP charges the top bidder the next bid, v2v_2 per click if everyone is truthful, so the top bidder overpays and wants to shade.

DerivationExact VCG prices in this example

Bidder 1’s externality: without her, bidders 2 and 3 get μ1v2+μ2v3\mu_1v_2 + \mu_2v_3. With her, bidder 2 gets μ2v2\mu_2v_2 and bidder 3 gets nothing. So she pays μ1v2+μ2v3−μ2v2=(μ1−μ2)v2+μ2v3,\mu_1v_2 + \mu_2v_3 - \mu_2v_2 = (\mu_1 - \mu_2)v_2 + \mu_2v_3, which is (1−μ2μ1)v2+μ2μ1v3\big(1 - \frac{\mu_2}{\mu_1}\big)v_2 + \frac{\mu_2}{\mu_1}v_3 per click. Bidder 2 pays μ2v3\mu_2v_3, i.e. v3v_3 per click.

(The chapter states bidder 1’s VCG price as (1−μ2/μ1)v2(1 - \mu_2/\mu_1)v_2. That matches its sequential-auction story, where slot 2 is priced at 0. The full externality adds the μ2μ1v3\frac{\mu_2}{\mu_1}v_3 term. This computation is mine.)

Ranking auctions

DefinitionRanking auction

Weight the bids (with weights independent of the bids), rank them, and give slots in rank order. GSP and GFP are both ranking auctions. The allocation is monotone in one’s own bid.

FormulaThe truthful payment for a ranking allocation

Monotonicity guarantees that some payment rule makes truth-telling an equilibrium (see mechanism-design). With xj(b∣b−j)x_j(b\mid b_{-j}) bidder jj‘s expected CTR at bid bb:

Pj(b∣b−j)=b xj(b∣b−j)−∫0bxj(t∣b−j) dt.(28.8)P_j(b\mid b_{-j}) = b\,x_j(b\mid b_{-j}) - \int_0^b x_j(t\mid b_{-j})\,dt. \tag{28.8}

GSP’s and GFP’s payments are not this rule. Ranking auctions are in general neither efficient nor revenue-maximizing.

Equilibrium properties

Not being truthful doesn’t settle efficiency or revenue. The equilibria might still be good.

TheoremGFP: efficient in Bayesian equilibrium

GFP has no pure full-information equilibrium, but it has a symmetric Bayes-Nash equilibrium in monotone bid functions (as in the single-item first-price auction). Monotone bids reproduce the efficient allocation, and revenue equivalence gives the same revenue as VCG.

WarningThe static assumption bites

With no pure full-information equilibrium, repeated GFP bidders keep adjusting bids period after period. The resulting fluctuations are argued to cause significant inefficiency, and Yahoo! abandoned GFP.

NoteGSP’s Bayesian equilibrium is unknown

The chapter analyses GSP only under full information, with αij=μi\alpha_{ij} = \mu_i and wj=1w_j = 1. Separable CTRs αij=μiβj\alpha_{ij} = \mu_i\beta_j with general weights are left as exercises.

DefinitionLocally envy-free assignment

An assignment xx with slot prices {pi}\{p_i\} (total expected payments) is locally envy-free if every bidder jj in slot ii weakly prefers her slot to the slots immediately above and below:

μivj−pi≥μi−1vj−pi−1,μivj−pi≥μi+1vj−pi+1.(28.9–28.10)\mu_iv_j - p_i\ge\mu_{i-1}v_j - p_{i-1}, \qquad \mu_iv_j - p_i\ge \mu_{i+1}v_j - p_{i+1}. \tag{28.9–28.10}

TheoremTheorem 28.1 — locally envy-free ⟺ optimal

An assignment x∗x^* is optimal iff it is locally envy-free.

ProofAdjacent-swap inequalities give assortativity; LP duality gives the converse

(⇒ optimal) It suffices to show assortativity. Let jj hold slot ii and j′j' hold slot i+1i+1. Local envy-freeness for each, toward the other’s slot:

μivj−pi∗≥μi+1vj−pi+1∗,μi+1vj′−pi+1∗≥μivj′−pi∗.\mu_iv_j - p_i^*\ge\mu_{i+1}v_j - p_{i+1}^*, \qquad \mu_{i+1}v_{j'} - p_{i+1}^*\ge\mu_iv_{j'} - p_i^*.

Adding them cancels the prices: (μi−μi+1)(vj−vj′)≥0(\mu_i - \mu_{i+1})(v_j - v_{j'})\ge0. Since μi>μi+1\mu_i > \mu_{i+1}, we get vj≥vj′v_j\ge v_{j'}.

(⇐ locally envy-free) Take an optimal dual (p∗,q∗)(p^*,q^*). For xrj∗=1x^*_{rj} = 1, complementary slackness and dual feasibility give

μrvj−pr∗=qj∗=max⁡i{μivj−pi∗}≥max⁡{μr−1vj−pr−1∗, μr+1vj−pr+1∗}.\mu_rv_j - p_r^* = q_j^* = \max_i\{\mu_iv_j - p_i^*\}\ge\max\{\mu_{r-1}v_j - p_{r-1}^*,\ \mu_{r+1}v_j - p_{r+1}^*\}.

The dual prices are in fact globally envy-free.

∎

NoteWhat “optimal” needs here

Local envy-freeness constrains only assigned bidders relative to neighbouring slots. So the (⇒) direction shows the assigned bidders are correctly ordered; optimality also requires that the top-mm values are the ones assigned. (This caveat is mine; it holds in the construction below.)

TheoremTheorem 28.2 — GSP implements VCG in full-information equilibrium

GSP has a full-information equilibrium whose allocation is locally envy-free, hence efficient, with every bidder paying her VCG price.

ProofBid the VCG price of the slot above, scaled by its CTR

Order values v1≥v2≥⋯v_1\ge v_2\ge\cdots, and let pi∗p_i^* be the Vickrey total price of slot ii.

Step 1: The bids. Bidder 1 bids b1=v1b_1 = v_1. Each bidder j≥2j\ge2 bids bj=pj−1∗/μj−1b_j = p^*_{j-1}/\mu_{j-1}. Under GSP, slot jj pays the next bid bj+1b_{j+1} per click, for a total of μjbj+1=pj∗\mu_jb_{j+1} = p_j^*: exactly the VCG price.

Step 2: Bids are decreasing, so GSP assigns efficiently. Local envy-freeness of the VCG outcome for bidder jj looking up gives pj−1∗≥pj∗+(μj−1−μj)vjp^*_{j-1}\ge p^*_j + (\mu_{j-1} - \mu_j)v_j. VCG profits are nonnegative, so vj≥pj∗/μjv_j\ge p^*_j/\mu_j. Combining,

pj−1∗≥pj∗+(μj−1−μj)pj∗μj=μj−1μjpj∗  ⇒  bj=pj−1∗μj−1≥pj∗μj=bj+1.p^*_{j-1}\ge p^*_j + (\mu_{j-1}-\mu_j)\frac{p^*_j}{\mu_j} = \frac{\mu_{j-1}}{\mu_j}p^*_j \;\Rightarrow\; b_j = \frac{p^*_{j-1}}{\mu_{j-1}}\ge\frac{p^*_j}{\mu_j} = b_{j+1}.

For j=1j = 1: b1=v1≥p1∗/μ1=b2b_1 = v_1\ge p_1^*/\mu_1 = b_2. So bidder jj gets slot jj. Bidders beyond mm pay nothing.

Step 3: No profitable deviation. Each bidder receives her efficient slot at her VCG price, and the prices are envy-free (Theorem 28.1). The chapter concludes that no one wants to change her bid.

(Step 2’s cleaned-up inequality chain is mine; the printed version has shifted indices. Step 3 is the chapter’s brief argument.)

∎

ImportantGSP is not truthful, but can be as good as VCG

In the full-information equilibrium built from VCG prices, GSP gives the efficient allocation and VCG revenue. The failure is truthfulness, not outcomes (at least in this equilibrium).

RemarkCondominium auctions

Setting aside repetition, keyword auctions are condominium auctions in which everyone ranks units identically (everyone wants a higher floor).


Dynamic aspects

These auctions are really repeated games of incomplete information, which have rich equilibrium sets. Two phenomena stand out:

DefinitionBid rotation

Competitors take turns winning, e.g. alternating in the top slot. This is harmless with short-lived bidders, but with persistent ones it lowers revenue.

DefinitionVindictive bidding

In GSP, your bid sets the price of the bidder above you, not your own. So you can raise a budget-limited competitor’s costs at no cost to yourself. In a dynamic setting this drives constant bid adjustment, to inflict or dodge damage.

Online allocation with budgets

Even without strategy, budgets across keywords make efficient allocation an online problem.

DefinitionOnline budgeted allocation model

nn advertisers and mm keywords. Advertiser jj bids bijb_{ij} on keyword ii, with budget BjB_j, and bij≪Bjb_{ij}\ll B_j. Queries arrive over the day. Each page has one slot, and the winner pays its bid per impression (unlike practice). Scaling bids by CTR gives pay per click. The goal is to maximize revenue within budgets.

FormulaOffline benchmark: known query volumes rir_i

max⁡∑i,jbijxijs.t.∑jxij≤ri,∑ibijxij≤Bj,x≥0,(28.11)\max\sum_{i,j}b_{ij}x_{ij}\quad\text{s.t.}\quad \sum_jx_{ij}\le r_i,\qquad \sum_ib_{ij}x_{ij}\le B_j,\qquad x\ge0, \tag{28.11}

with dual

min⁡∑jBjβj+∑iriαis.t.αi+bijβj≥bij,α,β≥0.\min\sum_jB_j\beta_j + \sum_ir_i\alpha_i\quad\text{s.t.}\quad \alpha_i + b_{ij}\beta_j\ge b_{ij},\qquad \alpha,\beta\ge0.

Allocation rule from complementary slackness: give each query ii to the jj maximizing bij(1−βj)b_{ij}(1 - \beta_j).

ComponentDetail
βj\beta_jshadow price of advertiser jj‘s budget: extra revenue per extra dollar of BjB_j
bijβjb_{ij}\beta_jopportunity cost of spending bijb_{ij} of jj‘s budget now
bij(1−βj)b_{ij}(1 - \beta_j)net value of allocating query ii to jj

IntuitionDiscount bids by budget scarcity

A bidder with a nearly binding budget should get fewer queries now, so its money is available later for queries only it values. The optimal offline rule scales each bid down by 1−βj1 - \beta_j.

Online: the query frequencies rir_i are unknown, and queries must be allocated as they arrive. Performance is measured by competitive ratio against the offline optimum of (28.11) (see online-mechanisms).

AlgorithmGreedy

Give each query to the highest bidder with budget remaining. This amounts to setting every βj=0\beta_j = 0.

ExampleGreedy gets only half

Two bidders, each with budget $2, and two queries. Bidder 1 bids 2 on query 1 and 2−ϵ2-\epsilon on query 2. Bidder 2 bids 2 on query 1 and ϵ\epsilon on query 2.

  • Greedy: query 1 arrives first and goes to bidder 1 (tie), which exhausts her budget. Query 2 goes to bidder 2 for ϵ\epsilon. Revenue 2+ϵ2 + \epsilon.
  • Optimum: query 1 to bidder 2 and query 2 to bidder 1. Revenue about 44.

Greedy ignores the opportunity cost of bidder 1’s budget.

TheoremGreedy is 1/2-competitive

Greedy’s revenue is always at least half the optimum, and the example shows this is tight.

AlgorithmAlgorithm 1 — budget smoothing (tradeoff function)

Let fjf_j be the fraction of jj‘s budget spent so far, and ϕ(x)=1−ex−1.\phi(x) = 1 - e^{x-1}. Give each arriving query ii to the bidder maximizing bij ϕ(fj)b_{ij}\,\phi(f_j). This is an online estimate of the shadow price, βj=1−ϕ(fj)=efj−1\beta_j = 1 - \phi(f_j) = e^{f_j-1}.

IntuitionSpend budgets evenly

As a bidder spends more, ϕ(fj)\phi(f_j) falls from 1−1/e1 - 1/e toward 0, so her effective bid shrinks. Queries shift toward bidders with more budget left, spreading expenditure over time. Search engines sell this as budget smoothing.

TheoremTheorem 28.3 — optimal competitive ratio 1−1/e1 - 1/e

Algorithm 1’s revenue is at least (1−1/e)(1 - 1/e) of the optimum, and no deterministic or randomized online algorithm does better.

Proof ideas. Discretize budgets into kk levels. A bidder is of type jj if she has spent a fraction in (j−1k,jk](\frac{j-1}{k},\frac jk] of her budget. Let sjs_j be the total budget of bidders ending at type jj, and wiw_i the money spent from the ii-th slice of bidders’ budgets. Use the discrete tradeoff

Ψ(s)=1−(1−1k)k−s  →  ϕ(s/k),(28.12)\Psi(s) = 1 - \Big(1 - \frac1k\Big)^{k-s}\;\to\;\phi(s/k), \tag{28.12}

which is decreasing in ss. Assume OPT exhausts all budgets, so OPT=∑isi\mathrm{OPT} = \sum_is_i.

LemmaLemma 28.4

At the end, ∑i=0kΨ(i) si≤∑i=0kΨ(i) wi\displaystyle\sum_{i=0}^k\Psi(i)\,s_i \le \sum_{i=0}^k\Psi(i)\,w_i. (28.13)

ProofCharge each query to OPT’s choice

Step 1: Compare at one query. When query qq arrives, let OPT give it to a bidder of current type tt (final type t′≥tt'\ge t), earning boptb_{\text{opt}}. The algorithm gives it to a bidder of type ii, earning balgb_{\text{alg}}.

Ψ(t′) bopt≤(a)Ψ(t) bopt≤(b)Ψ(i) balg.\Psi(t')\,b_{\text{opt}}\overset{(a)}{\le}\Psi(t)\,b_{\text{opt}} \overset{(b)}{\le}\Psi(i)\,b_{\text{alg}}.
  • (a) Ψ\Psi is decreasing and t′≥tt'\ge t.
  • (b) The algorithm maximizes (discretized) b⋅Ψ(type)b\cdot\Psi(\text{type}).

Step 2: Sum over queries. The left side, weighted by each bidder’s final type, sums to ∑iΨ(i)si\sum_i\Psi(i)s_i. The right side, weighted by the type at the moment of spending, sums to ∑iΨ(i)wi\sum_i\Psi(i)w_i.

∎

NoteFinishing the theorem

One then uses wi≤1k∑j≥isjw_i\le\frac1k\sum_{j\ge i}s_j, swaps the order of summation, and sums the geometric series. The remaining terms give ALG=∑iwi≥(1−1/e−o(1))∑isi\text{ALG} = \sum_iw_i\ge(1 - 1/e - o(1))\sum_is_i as k→∞k\to\infty. The printed chain of inequalities is garbled in the source, so only this outline is reproduced here. The lower bound, that no algorithm beats 1−1/e1-1/e, is stated without proof.

RemarkExtensions and unknowns

The same algorithm handles multiple slots per page and advertisers arriving at different times. Its equilibrium properties are unknown.


Open questions

NoteBudgets and richer bids

Budgets seem soft: bidders adjust them often, and can “expand” a budget by bidding lower. Budgets may proxy for other goals (limiting exposure, spreading ads over time). Richer languages would let bidders express diminishing marginal value for clicks, or value by region or demographic. They would improve efficiency at computational and elicitation cost.

NoteClick fraud and pay per action

Per-click pricing invites robot clicks, spam clicks, competitors’ cost-imposing clicks, and affiliates profiting from clicks. Pay per action or conversion is the leading alternative, but it raises incentive problems around tracking sales.

NoteCompetition between search engines

Models assume a monopoly engine with a fixed user base. In fact advertisers multi-home cheaply (both Google and Yahoo!, or via marketing agencies), and users switch at essentially zero cost. Blind tests show little quality difference, and brand drives loyalty. Competition may push engines toward retaining advertisers and users over extracting revenue. Keyword auctions in competition are unstudied.

NoteSyndication, CTR learning, the bidder’s side

  • Syndication (e.g., AdSense to AOL, MySpace) complicates the meaning of bids and allocation.
  • CTRs are learned from bidder, ad, user and page context. This is an explore/exploit trade-off, and the engine’s estimates differ from bidders’.
  • The advertiser’s bid optimization problem is its own major research and commercial area.

Quick reference

ObjectStatementNote
Sponsored searchper-query continuous auctions for ordered slotspay per click
CTRαij\alpha_{ij}, decreasing in sloteveryone ranks slots alike
Scoresj=wjbjs_j = w_jb_j; rank by score
GSP price per clicksj+1/wjs_{j+1}/w_jrank by bid (w=1w = 1) / by revenue (w=α1jw = \alpha_{1j})
GFPpay your own bidno pure full-info equilibrium
Static modelprivate vjv_j per click; CTRs knownfour strong assumptions
Revenue optimumVCG on virtual values (reserves)Myerson with xjx_j = expected CTR
Efficiency LP (28.1)max-weight assignmenttotally unimodular ⇒ integral
Dual (28.5)pi+qj≥αijvjp_i + q_j\ge\alpha_{ij}v_jVCG = optimal dual minimizing ∑pi\sum p_i
Assortativeαij=μi\alpha_{ij} = \mu_i ⇒ sort by vvNorthwest corner rule
Two-slot exampletop price (1−μ2/μ1)v2<v2(1 - \mu_2/\mu_1)v_2 < v_2lower slot is an outside option
Truthful ranking payment (28.8)P=b x(b)−∫0bx(t) dtP = b\,x(b) - \int_0^bx(t)\,dtGSP and GFP don’t use it
GFP Bayes-Nashsymmetric, monotone ⇒ efficientbid cycling when repeated
Locally envy-free (28.9–28.10)no envy toward adjacent slots
Thm 28.1optimal ⟺ locally envy-freeadjacent swap + duality
Thm 28.2GSP equilibrium with bj=pj−1∗/μj−1b_j = p^*_{j-1}/\mu_{j-1} gives VCGefficient, VCG revenue
Bid rotation / vindictive biddingrepeated-game pathologiesyour bid prices the slot above
Online LP (28.11)budgets BjB_j, volumes rir_iallocate to max⁡bij(1−βj)\max b_{ij}(1 - \beta_j)
βj\beta_jbudget shadow price, i.e. opportunity cost
Greedy1/21/2-competitive, tightignores opportunity cost
Algorithm 1maximize bij(1−efj−1)b_{ij}(1 - e^{f_j-1})budget smoothing
Thm 28.31−1/e1 - 1/e, optimalLemma 28.4 charging argument

Facts to keep to hand

  • LP duality prices everything here. VCG payments are the seller-minimal optimal dual of the assignment LP. Envy-free prices are dual solutions (Theorem 28.1). The online rule discounts bids by the budget constraint’s dual variable.
  • Reducing to Vickrey for one item proves nothing for many. A second slot is an outside option that lowers willingness to pay for the first. VCG accounts for this and GSP doesn’t, so truthful GSP bidding overpays at the top.
  • Non-truthful mechanisms can have good equilibria. GFP (Bayesian) and GSP (full information, locally envy-free) both reach efficient allocations, and GSP’s constructed equilibrium matches VCG revenue exactly. Truthfulness is sufficient for good outcomes, not necessary.
  • Static equilibria can mislead dynamically. GFP’s lack of a pure full-information equilibrium became bid cycling in practice. GSP’s “price-setting from below” enables vindictive bidding. Repeated play enables rotation.
  • Budgets make allocation online, and opportunity cost is the fix. Greedy spends the wrong budgets first (1/2). Pricing budget depletion with ϕ(f)=1−ef−1\phi(f) = 1 - e^{f-1} spreads spending and achieves the best possible 1−1/e1 - 1/e.
  • 1−1/e1 - 1/e keeps appearing. Greedy for monotone submodular maximization (cascading-behavior-in-networks) and optimal online budgeted allocation share the same constant. It is the signature of “diminishing marginal value, handled online or greedily.”
  • Monotone CTR decay is the structural gift. Identical slot rankings make keyword auctions condominium auctions: efficient assignment is just sorting, and local envy-freeness implies global.

References

← All notes