Tutorials › Econometrics (Graduate) › Why Logit Share Inversion Works

Demand and Discrete Choice · Tutorial 725 of 952

Why Logit Share Inversion Works

Learn the conditions under which simple-logit shares have a unique finite utility inversion, and why the outside option fixes the utility scale.

Advanced 10 min read

What You'll Learn

  • State the simple-logit model and the outside-option normalization.
  • Derive mean utility differences from inside-to-outside share ratios.
  • Prove that strictly positive shares summing to one yield a finite solution.
  • Prove that this solution is unique under the normalization.
  • Explain how zero shares and alternative utility normalizations affect inversion.

Why a Share Ratio Reveals a Utility Difference

In a simple-logit demand model, each product’s predicted share depends on its mean utility relative to the utilities of every other option. Yet dividing a product’s share by the outside option’s share removes the common denominator in the choice probabilities. The resulting ratio isolates the product’s utility difference. This is why share inversion is not merely a convenient calculation: under the model and a normalization, it gives an exact and unique recovery of mean utilities.

The conditions matter. Every inside product and the outside option must have a strictly positive share for the corresponding mean utilities to be finite. We will show both that positive shares produce a solution and that no other normalized utility vector can produce the same shares.

Model and Normalization

Consider one market with \(J\) inside products, indexed by \(j=1,\ldots,J\), and an outside option indexed by \(0\). Consumer \(i\)'s utility from option \(j\) is

$$ U_{ij}=\delta_j+\varepsilon_{ij}, \qquad j=0,1,\ldots,J. $$

Here \(\delta_j\) is the mean utility of option \(j\), common to consumers in this market, and \(\varepsilon_{ij}\) is consumer \(i\)'s idiosyncratic utility shock. Assume the shocks are independent across options and consumers and have the normalized type-I extreme-value distribution. Consumers choose the option with the highest utility. The outside option is available to all consumers, and we normalize its mean utility to \(\delta_0=0\). This fixes the utility origin; only utility differences affect choices.

Under these assumptions, the probability of choosing option \(j\) is its simple-logit share:

$$ s_j=\frac{\exp(\delta_j)}{\sum_{k=0}^{J}\exp(\delta_k)}, \qquad j=0,1,\ldots,J. $$

With \(\delta_0=0\), the outside share is \(s_0=1/\left(1+\sum_{k=1}^{J}\exp(\delta_k)\right)\). Shares here are model probabilities, so they are positive and sum to one. In applications, observed market shares are estimates of those probabilities and may be affected by finite samples or measurement.

Definition: Simple-logit share inversion recovers each inside product’s mean utility relative to the outside option from the ratio of its share to the outside share. With \(\delta_0=0\), the inversion is \(\delta_j=\log(s_j/s_0)\).

Deriving the Log Share-Ratio Formula

For any inside product \(j\), divide its share by the outside share. Both shares have the same denominator, so it cancels. The numerator of the outside share is \(\exp(\delta_0)=1\) under the normalization.

$$ \frac{s_j}{s_0} = \frac{\exp(\delta_j)/\sum_{k=0}^{J}\exp(\delta_k)} {\exp(\delta_0)/\sum_{k=0}^{J}\exp(\delta_k)} = \exp(\delta_j-\delta_0) = \exp(\delta_j). $$

Taking natural logarithms gives \(\delta_j=\log(s_j/s_0)\). More generally, before normalizing the outside option, the same calculation identifies \(\delta_j-\delta_0=\log(s_j/s_0)\). Thus the share ratio identifies a utility difference, not an absolute level of utility.

Worked Example: Inverting Two Inside Shares

Suppose a hypothetical market has two inside products with model shares \(s_1=0.20\) and \(s_2=0.30\), and an outside share \(s_0=0.50\). These shares are positive and sum to one, as required. Under the normalized simple-logit model, calculate each mean utility.

For product 1,

$$ \delta_1=\log\left(\frac{s_1}{s_0}\right) =\log\left(\frac{0.20}{0.50}\right) =\log(0.40) \approx -0.9163. $$

For product 2,

$$ \delta_2=\log\left(\frac{s_2}{s_0}\right) =\log\left(\frac{0.30}{0.50}\right) =\log(0.60) \approx -0.5108. $$

The negative values mean that each inside product’s mean utility is below the normalized outside option’s mean utility. They do not imply that every consumer chooses the outside option: consumers also experience product-specific shocks. As a check, \(\exp(\delta_1)=0.40\) and \(\exp(\delta_2)=0.60\), so the share denominator is \(1+0.40+0.60=2\). The model then gives shares \(0.40/2=0.20\), \(0.60/2=0.30\), and \(1/2=0.50\), as specified.

Existence and Uniqueness

The log-ratio calculation shows what any solution must be. To establish that inversion works fully, we also need to show that every strictly positive share vector summing to one actually corresponds to a finite utility vector, and that this vector is the only one under the stated normalization.

Theorem: Let \(s_0,s_1,\ldots,s_J\) be strictly positive numbers that sum to one. In the normalized simple-logit model with \(\delta_0=0\), there exists exactly one finite vector \((\delta_1,\ldots,\delta_J)\) that produces these shares. It is given by \(\delta_j=\log(s_j/s_0)\) for every inside product \(j\).

The argument has two parts. First, construct a candidate utility vector from the shares. Then verify that it generates those shares. For uniqueness, show that any vector generating the shares must equal that candidate.

1
Construct finite utilities.
Since \(s_j>0\) and \(s_0>0\), the ratio \(s_j/s_0\) is strictly positive and finite. Therefore \(\delta_j=\log(s_j/s_0)\) is a finite real number for each inside product.
2
Verify the shares.
The construction gives \(\exp(\delta_j)=s_j/s_0\). Hence the model denominator is \(1+\sum_{j=1}^{J}s_j/s_0=(s_0+\sum_{j=1}^{J}s_j)/s_0=1/s_0\). The predicted outside share is \(s_0\), and the predicted share of product \(j\) is \((s_j/s_0)/(1/s_0)=s_j\).
3
Establish uniqueness.
If another normalized vector \((\tilde{\delta}_1,\ldots,\tilde{\delta}_J)\) generates the same shares, dividing its product-\(j\) share by its outside share gives \(\exp(\tilde{\delta}_j)=s_j/s_0\). Taking logarithms forces \(\tilde{\delta}_j=\log(s_j/s_0)=\delta_j\) for every \(j\). No distinct normalized vector can generate those shares.

This result is an existence-and-uniqueness statement for the simple-logit mapping from normalized mean utilities to shares. The proof does not rely on an iterative search: the inverse is available directly. Positivity is essential because the logarithm of a zero share is not finite.

Worked Example: Checking the Unique Inversion From Market Counts

In a hypothetical market of 1,000 consumers, suppose 120 choose product 1, 280 choose product 2, and 600 choose the outside option. Treat the resulting frequencies as the shares to be matched by the simple-logit model. The shares are \(s_1=120/1000=0.12\), \(s_2=280/1000=0.28\), and \(s_0=600/1000=0.60\). All are positive and sum to one.

The inverted utilities are

$$ \delta_1=\log\left(\frac{0.12}{0.60}\right) =\log(0.20) \approx -1.609, \qquad \delta_2=\log\left(\frac{0.28}{0.60}\right) =\log(0.4667) \approx -0.7621. $$

Check the implied denominator using the unrounded ratios: \(1+0.20+0.4667=1.6667\), approximately. The predicted shares are \(1/1.6667\approx0.60\), \(0.20/1.6667\approx0.12\), and \(0.4667/1.6667\approx0.28\). The rounded utilities may produce tiny rounding differences, but the unrounded inversion reproduces the specified shares exactly. Uniqueness means that no different pair of normalized finite utilities can match all three shares under this model.

Why the Outside Option Matters

Fixing \(\delta_0=0\) is a normalization, not a behavioral claim that the outside option has no value. If the same constant \(c\) is added to every option’s mean utility, then every numerator and the denominator of the choice probabilities are multiplied by \(\exp(c)\), leaving all shares unchanged. Without a normalization, the absolute utility levels are therefore not separately identified. The shares identify differences such as \(\delta_j-\delta_0\); setting \(\delta_0=0\) expresses those differences as \(\delta_j\).

Worked Example: Recovering Differences When Utility Levels Shift

Suppose a hypothetical market has two inside-product mean utilities \(\delta_1=\log 2\) and \(\delta_2=\log 3\), with outside mean utility \(\delta_0=0\). The denominator is \(1+2+3=6\), so the shares are \(s_0=1/6\), \(s_1=2/6=1/3\), and \(s_2=3/6=1/2\). They are all positive and sum to one.

Now add \(c=4\) to all three mean utilities. The new levels are \(4\), \(4+\log 2\), and \(4+\log 3\). Each exponential in the share formula is multiplied by \(\exp(4)\), so that factor cancels and the shares stay \(1/6\), \(1/3\), and \(1/2\). The inversion relative to the outside option still recovers \(\log(s_1/s_0)=\log 2\) and \(\log(s_2/s_0)=\log 3\). It recovers differences, not the shifted absolute levels.

Zero Shares and the Boundary of the Result

If \(s_j=0\) while \(s_0>0\), the formula requires \(\delta_j=\log(0)=-\infty\), not a finite mean utility. Thus the theorem does not apply to share vectors with zero entries. In finite data, a product may have no observed choices even if its underlying model probability is positive; that sampling outcome does not establish that its model share is exactly zero. Inversion of observed shares must therefore be interpreted with attention to how the shares were measured and to whether all options have positive shares.

At the other boundary, if the outside share is zero while an inside share is positive, the ratio \(s_j/s_0\) is undefined. Under finite utilities in this simple-logit model, the outside option has positive probability because its exponential utility is positive and the denominator is finite. Consequently, a zero outside share cannot be generated by a finite normalized utility vector.

Common Mistake

  • Wrong reasoning: “The share formula has a denominator involving all products, so a product’s share cannot reveal its own utility, and there may be several utility vectors that fit the same shares.”
  • Correction: For each product, divide its share by the outside share. The common denominator cancels, leaving \(\exp(\delta_j-\delta_0)\). With \(\delta_0=0\), taking the logarithm determines \(\delta_j\) uniquely. The argument requires positive inside and outside shares and the simple-logit model assumptions.
  • Another normalization error: Treating \(\log(s_j/s_0)\) as an absolute utility level without specifying the outside option’s normalization. It is a utility difference; it equals \(\delta_j\) only when \(\delta_0=0\).
Key takeaway: In the normalized simple-logit model, each inside mean utility is the log of its share relative to the outside share. Strictly positive shares summing to one guarantee a finite solution, and share ratios force that solution to be unique.

Check Your Understanding

Use the simple-logit model with the outside-option normalization unless a question says otherwise.

  1. Why does dividing an inside share by the outside share eliminate the common denominator?
  2. A product has share \(0.15\) and the outside option has share \(0.45\). What is its inverted mean utility, and what is the utility-difference interpretation?
  3. State the two conditions on a share vector that guarantee a finite normalized inversion.
  4. Why does the log-ratio argument establish uniqueness rather than merely provide one possible solution?
  5. What does adding the same constant to every option’s mean utility do to predicted shares, and what does this imply about the role of normalization?
Clinical Biostats