Tutorials › Econometrics (Graduate) › Diagnosing Auction Data and Model Fit

Games, Auctions, and Strategic Behavior · Tutorial 789 of 952

Diagnosing Auction Data and Model Fit

Check auction records against the model’s support and equilibrium implications, then compare predicted and observed bidder counts and outcomes.

Advanced 10 min read

What You'll Learn

  • Audit auction identifiers, bidder records, bid units, reserves, and participation counts.
  • Distinguish observed bid ranges from the model’s theoretical support.
  • Use the first-price inversion to check whether implied values increase with bids.
  • Calculate predicted sale probabilities and winning-bid distributions.
  • Interpret discrepancies as diagnostic evidence, not automatic proof of a particular error.

Why Auction Diagnostics Matter

A structural auction model turns assumptions about bidders and their incentives into predictions about bids and auction outcomes. Estimation can produce numerical parameters even when the recorded data contain duplicate bids, omitted participants, inconsistent units, or auctions that do not fit the maintained model. A diagnostic is therefore not an extra decoration after estimation: it checks whether the records and the model’s implications are mutually coherent.

This tutorial uses the symmetric, independent-private-values benchmark for a sealed-bid first-price auction to make the checks concrete. The diagnostic logic is broader: first verify what was recorded, then check whether the fitted model can plausibly generate the observed bids and outcomes. A mismatch is evidence to investigate, not by itself a proof that either the data or the model is wrong.

Benchmark assumptions: Each auction has \(n\geq 2\) participating, risk-neutral bidders. Their private values are independent draws from the same continuous distribution \(F\), with density \(f\) positive on the interior of its support. Bidders submit sealed bids, and the highest bidder wins and pays their own bid. There is no binding reserve, entry is not selective, and bidders use the symmetric, strictly increasing equilibrium strategy. The assumptions are stated here because the equilibrium inversion and predictions below depend on them.

Start with the Records

Before comparing a model with data, establish what counts as an auction, a participant, and a submitted bid. Useful fields include auction and bidder identifiers, bid amount and currency unit, participation or entry status, reserve price, auction format, and the recorded winner. The bidder count must refer to participants in the auction, not merely the number of rows in a file.

The following hypothetical audit concerns four auctions, each marked in the metadata as having three participants. The distinct bidder IDs are counted within each auction.

AuctionMetadata countBid rowsDistinct bidder IDsInitial diagnostic
A101333Counts agree
A102333Counts agree
A103322One participant or bid may be missing
A104343One bidder ID is duplicated in the rows

The total number of bid rows is 12, which happens to equal the total participant count implied by the metadata. That agreement does not resolve the problem: A103 is short by one row, while A104 has an extra row. Aggregate checks can conceal offsetting errors. A duplicated row should not be treated as an extra bidder, and a participant who entered but did not submit a recorded bid needs to be distinguished from someone who never entered.

Worked Example: Reconciling Participants and Bid Records

Suppose A103 is described as having three participants, but the file contains bids of $25 and $34 from two distinct bidder IDs. A104 is also described as having three participants; it has four bid rows of $12, $15, $19, and $21, with bidder IDs 1, 2, 2, and 3.

A103. There are two recorded bidders, not three. The difference is \(3-2=1\) participant. The file alone does not reveal whether the third person entered but failed to submit, whether a bid was omitted, or whether the metadata count is incorrect. Those possibilities have different implications for an auction model with a fixed number of bidders.

A104. There are four rows but only three distinct bidder IDs. Bidder 2 appears twice, so the row count overstates the number of bidders by \(4-3=1\). The duplicate must be investigated rather than counted as another participant.

Conclusion. The participant counts cannot be verified from a total row count. Reconcile records auction by auction, and keep entry, participation, and submitted bids conceptually distinct.

Bid Support and the First-Price Inversion

A support check asks whether recorded bids are compatible with the range allowed by the fitted model and the auction rules. It should begin with units and coding: a bid of 250 may mean $250, 250 cents, or a missing-value code. Then check whether bids violate known restrictions, such as a nonnegative-bid rule or an enforced bid cap. A model’s theoretical support is not the same as the smallest and largest bids in a finite sample. Sample extremes ordinarily fall inside the population support.

Under the benchmark assumptions, let \(G\) be the common cumulative distribution function of bids and \(g\) its density. Given a bid \(b\), the probability of beating each of the other \(n-1\) bidders is \(G(b)\). A bidder with value \(v\) who submits \(b\) therefore has expected payoff \((v-b)G(b)^{n-1}\). At an interior optimum, differentiating with respect to \(b\) gives the inversion that maps a bid to its implied private value.

$$ \frac{\partial}{\partial b}\left[(v-b)G(b)^{n-1}\right] = -G(b)^{n-1}+(v-b)(n-1)G(b)^{n-2}g(b)=0 $$

Rearranging the first-order condition gives the following diagnostic formula. It requires a smooth bid distribution with \(g(b)>0\) at the bid being evaluated; it is not reliable at points where a density estimate is zero or unstable.

First-price inversion: Under the stated benchmark assumptions, an interior bid \(b\) implies the private value \(v(b)=b+\frac{G(b)}{(n-1)g(b)}\). The equilibrium strategy is strictly increasing, so the inverse value function should also increase with the bid over its domain. This implication concerns the model’s strategy or the recovered bid-to-value mapping, not the ordering of bids submitted by different bidders whose private values are unobserved.

Worked Example: Checking Support and Implied Values

Consider a hypothetical fitted bid distribution on \([10,50]\): \(G(b)=((b-10)/40)^2\), with density \(g(b)=(b-10)/800\) on the interior. Suppose each auction has \(n=3\) participants. The fit is only being assessed within its stated support, and the density is positive at the interior bids considered here.

At \(b=30\), \(G(30)=(20/40)^2=0.25\) and \(g(30)=20/800=0.025\). Thus \(v(30)=30+0.25/((3-1)(0.025))=30+5=35\).

For any interior bid, set \(x=b-10\). Then \(G(b)/g(b)=(x^2/1600)/(x/800)=x/2\), so the implied value is \(v(b)=b+(b-10)/4\). Its derivative is \(v'(b)=1+1/4=1.25>0\). The implied value mapping is therefore increasing over the interior of this fitted support.

For example, bids of 20, 30, and 40 imply values of 22.5, 35, and 47.5, respectively. The finite-sample bid support should not be interpreted as a guarantee that every sample contains bids near both endpoints. A recorded bid of 52, however, is outside the fitted bid support \([10,50]\): it cannot be evaluated by this fit without changing the support or the model. First check whether it reflects a units or recording issue; if not, investigate whether the fitted support or maintained model is inadequate.

Checking Monotonicity Carefully

Strictly increasing bidding is an equilibrium implication under the benchmark, not a claim that every higher observed bid must come from a bidder with a higher known value. In typical auction records the values are not observed. The practical checks are therefore indirect: inspect whether the estimated strategy or recovered value mapping behaves monotonically where it is supposed to, and whether the estimation method is being used where its assumptions hold.

For an estimated mapping \(\hat v(b)=b+\hat G(b)/((n-1)\hat g(b))\), a downward movement across increasing bids can signal an unstable density estimate, sparse data, a support-boundary problem, or a conflict between the data and the assumed model. It does not automatically identify which explanation is correct. Density estimates can be especially noisy because the inversion divides by \(\hat g(b)\); when \(\hat g(b)\) is close to zero, small estimation errors can produce large changes in implied values.

Also check whether the auctions being pooled really share a bid distribution. Combining different bidder counts, reserve rules, auction formats, or bidder populations may create a pooled distribution that does not correspond to any one equilibrium environment. Sorting all bids across such auctions and calling the resulting pattern a monotone bidding strategy would not be a valid check.

Predicting Auction Outcomes

A fitted bid distribution implies more than individual bid values. If \(n\) bidders’ bids are independent with common CDF \(G\), the highest bid \(B_{(n)}\) has CDF \(P(B_{(n)}\leq b)=G(b)^n\): all \(n\) bids must be at most \(b\). This lets an analyst calculate predicted winning-bid distributions and, when a reserve is present, sale probabilities. The reserve calculation must match the rule that determines whether a sale occurs.

Worked Example: Comparing Predicted and Observed Sales

Use the hypothetical fitted distribution \(G(b)=((b-10)/40)^2\) on \([10,50]\), and suppose each of 64 auctions has three independent bidders and a reserve of 30. For this calculation, assume bids at or above 30 result in a sale and ties have probability zero because \(G\) is continuous.

At the reserve, \(G(30)=0.25\). The probability that all three bids are below 30, and hence that an auction has no sale, is \(P(B_{(3)}<30)=G(30)^3=0.25^3=0.015625\).

The predicted sale probability per auction is therefore \(1-0.015625=0.984375\). Across 64 independent auctions with these same conditions, the expected number of sales is \(64(0.984375)=63.0\). The standard deviation of this count under the fitted probability is \(\sqrt{64(0.984375)(0.015625)}\approx0.9922\).

Suppose 58 sales are observed. The difference from the model’s expected count is \(58-63=-5\), or about \(-5/0.9922=-5.04\) standard deviations using this simple binomial calculation. This is a notable discrepancy to investigate. It is not, on its own, a formal test that accounts for estimation of \(G\), and the calculation assumes identical independent auctions with the stated bidder counts and reserve rule. If those conditions fail, the comparison is not calibrated as shown.

The same maximum-bid distribution can be used to compute the expected highest submitted bid in this example, without applying a reserve: \(P(B_{(3)}\leq b)=((b-10)/40)^6\) for \(10\leq b\leq50\). Integrating its survival probability gives \(E[B_{(3)}]=10+40(6/7)\approx44.29\). This is a prediction for the highest submitted bid; it is not automatically the expected transaction price when a reserve or other allocation rule changes whether a sale occurs.

Separate Data Problems from Model Failures

A diagnostic flags a conflict; determining its source requires checking both the data construction and the maintained economic environment. For example, an out-of-support bid might arise from a cents-versus-dollars error, a data-entry mistake, a bid cap that was not included in the model, or a genuinely poor fit. An unexpectedly low sale rate might reflect missing bids, incorrect reserve records, a different number of actual participants, or a model that predicts the wrong bid distribution.

A useful investigation proceeds in a deliberate order:

1
Verify the data definition.
Confirm auction format, currency and units, participant IDs, submitted bids, reserve rules, and the recorded outcome for each auction.
2
Check the maintained environment.
Ask whether auctions pooled together have the bidder counts and rules the model assumes, and whether participation or selection changes who appears in the bid data.
3
Recompute model implications.
Check bid support, the estimated density, the implied-value mapping, and predictions for outcomes using the appropriate bidder count and auction rules.
4
Report uncertainty about the cause.
Describe which checks fail and what explanations remain plausible; do not present a diagnostic discrepancy as proof of a specific data error or economic mechanism.

If the records are sound, remaining discrepancies may point to a failure of the assumed equilibrium or value model. For instance, private values, symmetry, risk neutrality, independent draws, or the assumed participation process may not describe the setting. These are distinct possible departures, not conclusions supplied by a single support or outcome check. The appropriate response is to investigate which assumptions are credible and assess alternative specifications, rather than quietly treating a poor fit as confirmation of the original model.

Common Pitfall

Common mistake: “The observed winning bids differ from the model’s predictions, so the auction data must be wrong.”

Correction: A discrepancy can be caused by data construction, incorrect auction rules or bidder counts, estimation error, or a misspecified equilibrium or value model. First verify the records and the conditions used to generate the prediction. Then report the mismatch and the uncertainty about its source. A diagnostic can guide investigation; it cannot, by itself, identify the cause.

The central discipline is to keep three questions separate: are the records internally consistent, do the model’s equilibrium implications fit the bid data, and do the model’s predicted auction outcomes fit the observed outcomes? Agreement on one question does not guarantee agreement on the others.

Check Your Understanding

Use the benchmark assumptions and diagnostic distinctions developed above.

  1. A file has five bid rows for an auction whose metadata lists four participants. What additional information would you check before concluding that there were five bidders?
  2. Why is a sample minimum bid not automatically an estimate of the lower endpoint of the theoretical bid support?
  3. For the first-price inversion, why can a near-zero estimated bid density make implied values unstable?
  4. If bids are independent with common CDF \(G\) and there are four bidders, write the CDF of the highest bid and explain the reasoning.
  5. An observed sale rate is below the fitted model’s prediction. Give one possible data explanation and one possible model explanation.
Clinical Biostats