Why Marginal Effects Matter
A multinomial logit coefficient describes how a covariate changes an alternative’s index relative to the reference alternative. It is not, by itself, the change in that alternative’s probability. Probabilities depend on all the indices at once: when one alternative becomes more likely, probability must be redistributed across the others. Marginal effects express that redistribution directly, in probability units.
This tutorial considers two cases. For a continuous covariate, the marginal effect is a derivative of each choice probability. For a binary covariate, the relevant quantity is a finite change between the predicted probabilities with the covariate set to one and to zero. In either case, effects across all alternatives add to zero because their probabilities add to one.
Model and Notation
Let there be \(J+1\) mutually exclusive alternatives, indexed \(j=0,1,\ldots,J\), with alternative \(0\) as the reference. For an individual with covariate vector \(x\), write the normalized multinomial logit probabilities as
Here \(V_j(x)\) is the systematic index for alternative \(j\). The normalization sets the reference index to zero; the probabilities are unchanged if the same quantity is subtracted from every alternative’s index. For the derivative formula below, suppose a continuous covariate \(z\) enters each non-reference index linearly, with coefficient \(\beta_{jz}\), and does not enter the reference index. Thus \(\partial V_j/\partial z=\beta_{jz}\) for \(j=1,\ldots,J\), and define \(\beta_{0z}=0\).
The stated linear-index form is an assumption for the formula: if \(z\) also enters nonlinearly or through interactions, the index derivatives must reflect those terms. The probabilities are differentiable wherever the indices are finite, as they are in the standard multinomial logit model.
Continuous Covariates: Derivative and Interpretation
The derivative for alternative \(j\) depends on its own index slope and a probability-weighted average of the slopes for all alternatives, including the reference. This average is not generally zero, even though the reference coefficient is normalized to zero.
A positive slope \(\beta_{jz}\) does not guarantee a positive probability derivative. The derivative is positive only when that alternative’s slope exceeds the probability-weighted average slope. This comparison captures the reallocation of probability across alternatives. The derivative is in probability units per unit of \(z\); multiplying by 100 expresses it in percentage points per unit.
The reference term is included in both sums: its index slope is zero, but its probability is not. Summing the derivatives over alternatives confirms the adding-up restriction:
Worked Example: A Continuous Covariate at One Profile
Suppose a hypothetical three-alternative model has fitted probabilities \(P_0=0.30\), \(P_1=0.30\), and \(P_2=0.40\) at a particular profile. A continuous covariate \(z\), measured in years, has index slopes \(\beta_{0z}=0\), \(\beta_{1z}=0.10\), and \(\beta_{2z}=-0.05\). Calculate the probability derivatives.
First calculate the probability-weighted average slope:
Then apply the derivative formula to each alternative:
The effects add to \(-0.003+0.027-0.024=0\), as they must. At this profile, a one-year local increase in \(z\) is associated with an approximately 0.027 increase in alternative 1’s probability, a 0.003 decrease in alternative 0’s probability, and a 0.024 decrease in alternative 2’s probability. These are local changes, not exact changes for a full one-year increase.
Binary Covariates: Finite Probability Changes
A binary covariate has values zero and one, so the natural effect is a discrete change. Hold the other covariates fixed, calculate all choice probabilities once with the binary covariate set to zero and once with it set to one, and subtract the first set from the second. A derivative is not required, and a coefficient-based linear approximation need not equal this finite change.
Each set of probabilities must be recomputed from the model. The adding-up restriction follows directly:
Worked Example: A Binary Covariate and Exact Discrete Changes
Consider a hypothetical three-alternative model with reference alternative \(0\). At fixed values of all other covariates, let the indices be \(V_0=0\), \(V_1=0.2+0.6d\), and \(V_2=-0.4+0.2d\). Calculate the change in each probability when \(d\) changes from zero to one.
When \(d=0\), the indices are \(0\), \(0.2\), and \(-0.4\). The denominator is \(1+\exp(0.2)+\exp(-0.4)=2.89172\), giving
When \(d=1\), the indices are \(0\), \(0.8\), and \(-0.2\). The denominator is \(1+\exp(0.8)+\exp(-0.2)=4.04427\), giving
Calculate each difference from the unrounded probabilities, not by subtracting the displayed rounded values:
Using full precision, the three changes sum to zero; their displayed rounding gives \(-0.0001\). For this hypothetical profile, changing \(d\) from zero to one reduces alternative 0’s probability by about 9.86 percentage points, increases alternative 1’s by about 12.79 points, and reduces alternative 2’s by about 2.94 points. This is a model-based comparison at fixed values of the other covariates, not a causal claim.
Effects Across Profiles and Average Marginal Effects
A derivative generally varies with the covariate profile because both the probabilities and the probability-weighted average slope vary. Thus, reporting a derivative at one profile answers a different question from reporting an average marginal effect across a sample. For a sample of \(n\) profiles, the average marginal effect for alternative \(j\) is the arithmetic mean of the individual derivatives:
Since the effects add to zero at every profile, their sample averages also add to zero. Binary-covariate discrete changes can be averaged in the same way, by calculating the change for each profile and then taking the sample mean.
Worked Example: Averaging Derivatives Across Two Profiles
Suppose the same hypothetical coefficient slopes are \((\beta_{0z},\beta_{1z},\beta_{2z})=(0,0.40,-0.10)\) for two profiles. The fitted probabilities are \((0.20,0.50,0.30)\) at profile A and \((0.40,0.20,0.40)\) at profile B. Find each profile’s derivatives and the average marginal effects.
At A, the weighted slope is
The derivatives at A are \(0.20(0-0.17)=-0.034\), \(0.50(0.40-0.17)=0.115\), and \(0.30(-0.10-0.17)=-0.081\). They sum to zero.
At B, the weighted slope is
The derivatives at B are \(0.40(0-0.04)=-0.016\), \(0.20(0.40-0.04)=0.072\), and \(0.40(-0.10-0.04)=-0.056\). These also sum to zero. Averaging each alternative’s two derivatives gives
The average effects sum to \(-0.025+0.0935-0.0685=0\). For a one-unit increase in \(z\), the average local change is therefore 9.35 percentage points for alternative 1, offset by decreases of 2.50 and 6.85 percentage points for alternatives 0 and 2.
Common Pitfalls and Practical Checks
- Reading a coefficient as a probability effect. A coefficient is an index slope relative to the reference, not a constant change in probability. Calculate the derivative or discrete change from the probabilities.
- Using a derivative for a binary regressor. The standard interpretation is the finite difference between the predictions at zero and one, with other covariates fixed.
- Ignoring other alternatives. The derivative for one category reflects the full probability-weighted slope across all categories. Compute the complete set of effects and check that they add to zero.
- Subtracting rounded predictions. Rounding each probability before subtraction can shift the reported discrete change. Calculate from unrounded predictions, then round the final result.
- Omitting the evaluation profile. Marginal effects depend on covariate values. State whether an effect is evaluated at a particular profile or averaged across profiles, and retain the covariate’s units.
These calculations turn index parameters into probability-scale summaries suited to questions about predicted choice shares. The adding-up restriction is a useful arithmetic check, but it does not establish that the model is correctly specified or that a covariate has a causal effect.
Check Your Understanding
Use the definitions and results above to answer the following questions.
- For three alternatives, \(P=(0.25,0.45,0.30)\) and slopes for a continuous covariate are \((0,0.20,-0.10)\). Calculate the weighted average slope and all three probability derivatives.
- Why can a positive index slope produce a negative probability derivative for that alternative?
- For a binary covariate, what two predictions must be compared to obtain the discrete change in an alternative’s probability?
- Explain why derivatives across alternatives sum to zero, and why finite discrete changes do too.
- What is the distinction between a derivative evaluated at one profile and an average marginal effect?