Tutorials › Econometrics (Graduate) › Consumer Surplus in Logit and Random-Coefficient Models

Demand and Discrete Choice · Tutorial 741 of 952

Consumer Surplus in Logit and Random-Coefficient Models

Learn how to convert changes in logit choice utilities into monetary consumer-surplus changes, including when consumers have different tastes and price sensitivities.

Advanced 11 min read

What You'll Learn

  • State the assumptions that make the log-sum difference a consumer-surplus measure.
  • Calculate welfare changes in dollars for logit demand with a common price coefficient.
  • Extend the calculation to consumer-specific price coefficients and random tastes.
  • Average consumer-level changes using population or simulation weights.
  • Recognize why averaging coefficients before calculating welfare can be misleading.

Why Choice Probabilities Are Not Enough

A demand counterfactual can tell us how prices or product attributes change predicted choice probabilities. To evaluate the implications for consumers, we also need a measure of how the available options’ overall attractiveness changes. In logit models, the log-sum provides a convenient welfare measure: it combines the systematic utilities of all available alternatives, including the outside option, and converts their change into monetary units.

The conversion is especially direct when every consumer has the same marginal utility of money. In a random-coefficient model, different consumers can have different price sensitivities and tastes, so the calculation must be made separately for each consumer type before it is averaged. The resulting measure is a change in expected consumer surplus under the model’s assumptions; it is not a measure of producer profit or total surplus.

Logit Utility and the Log-Sum

Consider a consumer choosing among \(J\) inside products and an outside option. In a given market state, let \(v_j\) denote the systematic utility of alternative \(j\), including its price, observed attributes, and any product-specific quality term. The outside option has systematic utility \(v_0\). Choice utility also includes a transitory shock \(\varepsilon_j\).

Definition: Under the logit specification, the shocks \(\varepsilon_0,\ldots,\varepsilon_J\) are independent Type I extreme-value random variables with common scale normalized to one. The log-sum for the choice set is $$ L=\ln\left(\sum_{j=0}^{J}\exp(v_j)\right). $$ It summarizes the systematic utilities of all available alternatives, with larger values indicating a more attractive choice set.

The outside option belongs in the sum because it is a genuine alternative to purchasing an inside product. A common normalization sets its systematic utility to zero, \(v_0=0\), so its contribution to the sum is one. The normalization does not mean that the consumer receives no value from opting out; it fixes the utility scale and reference point.

Suppose the utility of inside product \(j\) is \(v_j=x_j'\beta+\xi_j-\alpha p_j\), where \(p_j\) is price and \(\alpha>0\) is the common marginal utility of income in the model’s utility units. A dollar increase in price reduces systematic utility by \(\alpha\). With quasi-linear utility and a linear price term, the change in log-sum divided by \(\alpha\) gives the exact change in expected consumer surplus, in dollars.

Result: For a fixed consumer with common price coefficient \(-\alpha\), the consumer-surplus change from a baseline state \(A\) to a counterfactual state \(B\) is $$ \Delta CS=\frac{1}{\alpha}\left[ \ln\left(\sum_{j\in\mathcal J_B}\exp(v_{jB})\right) - \ln\left(\sum_{j\in\mathcal J_A}\exp(v_{jA})\right) \right]. $$ A positive value is a welfare gain and a negative value is a welfare loss. If utility is measured in the model’s normalized units and price is measured in dollars, \(1/\alpha\) converts utility changes to dollars.

The formula compares the choice sets and systematic utilities in the two states. It does not require that the consumer actually chooses the same product in both states. The randomness in the logit shocks is accounted for by taking expected maximum utility in each state.

Why the Log-Sum Difference Measures Expected Utility

The key identity follows directly from the Type I extreme-value distribution. Let \(M=\max_j(v_j+\varepsilon_j)\) be the consumer’s maximum utility across all alternatives. The shock distribution has cumulative distribution function \(F(e)=\exp[-\exp(-e)]\). Independence gives the distribution of \(M\):

$$ \begin{aligned} P(M\le m) &=\prod_{j=0}^{J}P(\varepsilon_j\le m-v_j)\\ &=\prod_{j=0}^{J}\exp\{-\exp[-(m-v_j)]\}\\ &=\exp\left\{-\exp\left[-\left(m-\ln\sum_{j=0}^{J}\exp(v_j)\right)\right]\right\}. \end{aligned} $$

Thus \(M\) has a Type I extreme-value distribution shifted by \(L=\ln\sum_j\exp(v_j)\). A standard Type I extreme-value random variable has mean \(\gamma\), where \(\gamma\) is Euler’s constant, so

$$ E[M]=L+\gamma. $$

When comparing two states for the same consumer, the common \(\gamma\) cancels. The difference in expected maximum utility is therefore \(L_B-L_A\). With utility that is linear in money at marginal rate \(\alpha\), dividing this difference by \(\alpha\) expresses it as a change in dollars. This derivation also clarifies that the formula concerns expected maximum utility, not the realized utility of a particular consumer facing a particular set of shocks.

Worked Example: A Price Reduction in Simple Logit Demand

Suppose a consumer chooses between two products and an outside option. The outside-option utility is zero. In the baseline state, the products’ systematic utilities are \(v_{1A}=1.0\) and \(v_{2A}=0.5\). A price reduction for product 1 raises its utility by \(0.5\), so in state \(B\), \(v_{1B}=1.5\) and \(v_{2B}=0.5\). The common price coefficient is \(\alpha=0.5\) utility units per dollar. Calculate the consumer-surplus change.

The baseline log-sum is

$$ L_A=\ln(1+\exp(1.0)+\exp(0.5)) =\ln(1+2.7183+1.6487) =\ln(5.3670) \approx 1.6803. $$

The counterfactual log-sum is

$$ L_B=\ln(1+\exp(1.5)+\exp(0.5)) =\ln(1+4.4817+1.6487) =\ln(7.1304) \approx 1.9644. $$

The change in consumer surplus is therefore

$$ \Delta CS=\frac{1.9644-1.6803}{0.5} =\frac{0.2841}{0.5} \approx \$0.5682. $$

Under the stated model, the price reduction increases this consumer’s expected surplus by about 57 cents. The calculation includes the outside option in both states, so it reflects the change in the full set of options rather than only the change in product 1’s utility.

Random Coefficients: Calculate First, Then Average

In a random-coefficient model, consumers differ in their tastes or price sensitivities. Write consumer \(i\)’s systematic utility for product \(j\) as \(v_{ij}=x_j'\beta_i+\xi_j-\alpha_i p_j\), where \(\beta_i\) contains the consumer’s taste coefficients and \(\alpha_i>0\) is that consumer’s marginal utility of money. The outside option is included as an alternative, often with normalized systematic utility zero.

For a given consumer, calculate the two log-sums using that consumer’s own coefficients. Divide the difference by that consumer’s \(\alpha_i\) to obtain the consumer’s surplus change in dollars. To obtain a population average, take a weighted average of these consumer-specific dollar changes. In simulation, the weights represent the population shares associated with the simulated types and sum to one.

Result: If consumer \(i\) has positive price sensitivity \(\alpha_i\), the individual change and its population average are $$ \Delta CS_i=\frac{L_{iB}-L_{iA}}{\alpha_i}, \qquad \overline{\Delta CS}=\sum_{i=1}^{N}w_i\Delta CS_i, \qquad \sum_{i=1}^{N}w_i=1. $$ For equal weights, \(w_i=1/N\). An aggregate dollar change for a population with \(N\) consumers is \(N\overline{\Delta CS}\), provided the weights describe that population.

This procedure is not generally equivalent to inserting average coefficients into one log-sum formula. The log-sum is nonlinear in utility, and conversion to dollars also depends on each consumer’s price coefficient. Averaging tastes or price sensitivities first can therefore change the welfare calculation.

Worked Example: A Price Increase for Two Consumer Types

Consider two equally weighted consumer types choosing between two products and an outside option with utility zero. Both types have baseline product utilities \(v_{1A}=0.8\) and \(v_{2A}=0.2\). A one-dollar price increase for product 1 reduces its utility by \(\alpha_i\) for type \(i\); product 2’s utility is unchanged. Type 1 has \(\alpha_1=0.5\), and type 2 has \(\alpha_2=1.0\). Calculate each type’s surplus change and the equally weighted average.

The common baseline log-sum for the two types in this constructed example is

$$ L_A=\ln(1+\exp(0.8)+\exp(0.2)) =\ln(1+2.2255+1.2214) =\ln(4.4469) \approx 1.4922. $$

For type 1, the price increase reduces product 1’s utility from \(0.8\) to \(0.3\). Thus,

$$ L_{1B}=\ln(1+\exp(0.3)+\exp(0.2)) =\ln(1+1.3499+1.2214) \approx 1.2729, $$

and the type-specific surplus change is

$$ \Delta CS_1=\frac{1.2729-1.4922}{0.5} \approx -\$0.4386. $$

For type 2, the price increase reduces product 1’s utility from \(0.8\) to \(-0.2\). Therefore,

$$ L_{2B}=\ln(1+\exp(-0.2)+\exp(0.2)) =\ln(1+0.8187+1.2214) \approx 1.1119, $$

so

$$ \Delta CS_2=\frac{1.1119-1.4922}{1.0} \approx -\$0.3803. $$

The equally weighted population average is

$$ \overline{\Delta CS} =0.5(-0.4386)+0.5(-0.3803) \approx -\$0.4095. $$

The price increase reduces expected surplus by about 41 cents per consumer on average. If this two-type composition represented a population of 1,000 consumers, the corresponding aggregate change would be approximately \(1{,}000(-\$0.4095)=-\$409.50\). This multiplication is appropriate only when the average and population size refer to the same target population.

Assumptions and Practical Interpretation

The log-sum welfare calculation is useful because it translates the estimated demand model into a monetary measure, but its interpretation depends on the model. In particular, the utility specification must have a well-defined, negative price coefficient for each consumer whose dollar surplus is calculated. A zero or positive \(\alpha_i\) does not provide the required positive marginal utility of money for this conversion.

The standard formula also relies on the choice model’s Type I extreme-value shocks and on utility being linear in price with no income effects over the comparison. If utility is not quasi-linear, a single division by \(\alpha_i\) need not equal exact compensating variation. The utility scale must be consistent as well: the price coefficient and systematic utilities used in the calculation must be expressed on the same scale as the normalized logit shocks.

For random coefficients, population integration matters. A finite set of simulation draws approximates the population average; each draw’s welfare change must use its own tastes and price sensitivity before the weighted average is computed. The simulation weights should correspond to the population being described. If the goal is welfare for a particular subgroup, use that subgroup’s type distribution rather than automatically reporting the overall population average.

Common Mistake: Averaging Price Sensitivity First

A tempting shortcut is to average the consumers’ price coefficients, average their utilities, and then calculate one log-sum change. That generally gives a different answer from calculating each consumer’s dollar welfare change and averaging those amounts. The order matters because both the log-sum and division by \(\alpha_i\) are nonlinear operations.

The correction is to compute \(L_{iA}\), \(L_{iB}\), and \((L_{iB}-L_{iA})/\alpha_i\) for each type \(i\), then apply the population weights. Also check the sign: if a counterfactual raises a product’s price while leaving other features unchanged, consumers’ expected surplus should not rise under the assumed positive price sensitivities.

Key takeaway: In logit demand, the change in the log-sum measures the change in expected maximum utility. Divide by the relevant positive price sensitivity to express it in dollars; with random coefficients, do this consumer by consumer before averaging.

Check Your Understanding

Use the definitions and assumptions in this tutorial to answer the following questions.

  1. Why must the outside option be included in the log-sum when it is available to the consumer?
  2. In a common-coefficient logit model, what does dividing the log-sum difference by \(\alpha\) accomplish?
  3. Suppose a counterfactual changes the log-sum from 1.4 to 1.1 and \(\alpha=0.6\) utility units per dollar. What is the consumer-surplus change, and how should its sign be interpreted?
  4. Why is it generally incorrect to calculate random-coefficient welfare using only the average price coefficient?
  5. What model conditions support interpreting a log-sum difference divided by the price coefficient as a dollar change in consumer surplus?
Clinical Biostats