Why Competitor Prices Matter
A customer deciding whether to buy an insurance product may compare its price with prices for other insurers or other products. A model that includes only the price of the product being sold can therefore miss an important part of the demand response: customers may be more likely to choose product A when a comparable product B becomes more expensive. The effect of B’s price on demand for A is a cross-price effect.
The direction and size of this effect depend on the products, the customer population, and the outcome being modeled. A positive cross-price effect is consistent with customers substituting toward A when B becomes more expensive. A negative effect is consistent with the products being complements, or with other features of the situation that make their demands move together. The sign alone does not establish a causal relationship.
Demand may be measured as a purchase probability, a number of policies, or another quantity. The derivative’s units depend on that outcome. For example, a derivative of \(0.002\) for a purchase probability means a fitted increase of 0.002 probability units per dollar of the specified price, or 0.2 percentage points per dollar. It does not mean a 0.2% increase in demand.
Cross-Price Effects and Elasticities
A price coefficient is measured in the units of the modeled outcome per unit of price. An elasticity instead expresses a relative response and is dimensionless. For demand \(q_A>0\) and positive price \(P_j\), the elasticity of A’s demand with respect to price \(P_j\) is the percentage change in demand associated with a one-percent change in that price, locally:
Thus, the own-price elasticity is \(\varepsilon_{A,A}\), and the cross-price elasticity with respect to B’s price is \(\varepsilon_{A,B}\). A positive cross-price elasticity means fitted demand for A increases locally when B’s price rises. The coefficient and elasticity are not interchangeable: the elasticity also depends on the price and fitted demand at the point being evaluated.
For a binary purchase outcome, \(q_A\) can be the probability \(p_A\). The same elasticity definition applies when \(p_A>0\). The probability derivative is then measured in probability units per price unit, while the elasticity remains a relative response.
Model Forms and Interpretation
The model determines how to calculate the price effects. In every case, interpret a coefficient conditional on the other included predictors and the model specification. A fitted relationship in observational data is not automatically a causal price response: that interpretation requires appropriate assumptions about price assignment, confounding, and the data used to estimate the model.
A linear probability model uses this form when the outcome is a binary purchase indicator and the fitted conditional mean is interpreted as a purchase probability. Such a model can produce fitted values below zero or above one, so it is most defensible over a range where predictions remain plausible. Its coefficients describe changes in probability units, not odds.
The logistic coefficient \(\beta_B\) is a change in log odds per unit of B’s price. It is neither the probability change per dollar nor the cross-price elasticity. The probability derivative depends on the fitted probability, and the elasticity also depends on price.
The log-log model’s constant-elasticity interpretation differs from the linear model’s constant-slope interpretation. In particular, a competitor-price coefficient in a log-log model is directly a cross-price elasticity, but a competitor-price coefficient in a linear or logistic model is not.
Worked Example: Linear Model Coefficients Versus Elasticities
Worked Example: Linear Model Coefficients Versus Elasticities
A hypothetical insurer models the probability of purchasing its product A with a linear probability model: \(p_A=0.62-0.004(P_A-200)+0.003(P_B-180)\), where both prices are in dollars. At \(P_A=\$210\) and \(P_B=\$190\), calculate the fitted probability, the cross-price effect per dollar, and the own- and cross-price elasticities. State one limitation of the model.
Method and assumption. Treat the stated fitted equation as the conditional mean probability at these prices. In this linear model, the price derivatives are the coefficients on the corresponding centered prices.
Step 1: Calculate fitted demand. The centered prices are \(P_A-200=210-200=10\) and \(P_B-180=190-180=10\). Therefore, \(p_A=0.62-0.004(10)+0.003(10)=0.62-0.04+0.03=0.61\).
Step 2: Identify the cross-price effect. The derivative with respect to B’s price is \(0.003\) probability units per dollar. In percentage points, this is \(0.003(100)=0.3\) percentage points per dollar.
Step 3: Calculate the elasticities. The own-price derivative is \(-0.004\), so the own-price elasticity is \((-0.004)(210)/0.61=-0.84/0.61\approx-1.3770\). The cross-price elasticity is \((0.003)(190)/0.61=0.57/0.61\approx0.9344\). Report elasticities to four decimal places.
The positive cross-price elasticity is consistent with substitution toward A as B becomes more expensive, conditional on the model. The limitation is that a linear probability model can predict probabilities outside the interval from zero to one at other prices. Common mistake avoided: treating \(0.003\), the probability change per dollar, as the cross-price elasticity. The elasticity here is approximately \(0.9344\), not \(0.003\).
Check. Substituting the prices into the equation gives \(0.61\), which is between zero and one. The elasticity calculations use that same fitted probability and the relevant price for each derivative.
Why the Logistic Derivative Has This Form
The logistic derivative follows from the chain rule. This short derivation also explains why a logistic price coefficient cannot be read directly as a probability change.
Set \(p_A=(1+e^{-\eta})^{-1}\), where \(\eta\) contains the price predictors.
\(\partial p_A/\partial\eta=e^{-\eta}(1+e^{-\eta})^{-2}\). Since \(p_A=1/(1+e^{-\eta})\) and \(1-p_A=e^{-\eta}/(1+e^{-\eta})\), this is \(p_A(1-p_A)\).
If \(\partial\eta/\partial P_B=\beta_B\), then \(\partial p_A/\partial P_B=(\partial p_A/\partial\eta)(\partial\eta/\partial P_B)=p_A(1-p_A)\beta_B\). Multiplying by \(P_B/p_A\) gives \(\varepsilon_{A,B}=\beta_BP_B(1-p_A)\).
The factor \(p_A(1-p_A)\) changes with the fitted probability, so the same log-odds coefficient has a different local probability effect in different parts of the response curve. The derivative is a local effect; for a sizable price change, calculate the model prediction at both prices rather than multiplying the derivative by the entire change.
Worked Example: Logistic Cross-Price Response
Worked Example: Logistic Cross-Price Response
For a hypothetical quote, an insurer fits the purchase model \(\operatorname{logit}(p_A)=-1.2-0.01(P_A-180)+0.006(P_B-160)\), with prices measured in dollars. At \(P_A=\$190\) and \(P_B=\$170\), calculate the fitted probability, the local probability effect of B’s price per dollar, and the cross-price elasticity. Then calculate the fitted probability change if B’s price rises by \$10 while A’s price stays fixed.
Method and assumptions. Use the logistic transformation for the binary purchase probability. The local derivative uses the fitted probability at the stated prices; the \$10 change requires evaluating the logistic model at the new price.
Step 1: Find the linear predictor. The price deviations are \(190-180=10\) and \(170-160=10\). Thus, \(\eta=-1.2-0.01(10)+0.006(10)=-1.2-0.10+0.06=-1.24\).
Step 2: Calculate the probability. The fitted probability is \(p_A=1/(1+e^{1.24})\approx0.2244\). Using additional precision for subsequent calculations gives approximately \(0.2244356\).
Step 3: Find the local probability effect. The cross-price coefficient is \(\beta_B=0.006\), so \(\partial p_A/\partial P_B=p_A(1-p_A)(0.006)\). Using the unrounded fitted probability, \(p_A(1-p_A)\approx0.174064\), and the derivative is approximately \(0.174064(0.006)=0.0010444\) probability units per dollar. This is about \(0.1044\) percentage points per dollar.
Step 4: Calculate the cross-price elasticity. Using \(P_B=170\), \(\varepsilon_{A,B}=0.006(170)(1-0.2244356)\approx0.7911\). Thus, near these prices, a one-percent increase in B’s price is associated with about a 0.7911% increase in fitted purchase probability, locally.
Step 5: Evaluate the \$10 increase directly. At \(P_B=180\), the new linear predictor is \(-1.2-0.10+0.006(20)=-1.18\). The new probability is \(1/(1+e^{1.18})\approx0.235052\). The exact fitted increase using unrounded probabilities is approximately \(0.235052-0.224436=0.010616\), or about 1.06 percentage points. The derivative approximation would be \(10(0.0010444)=0.010444\), close but not identical.
Check and common mistake avoided. The competitor-price coefficient is \(0.006\) log-odds units per dollar, not a probability increase of 0.006 per dollar. The derivative incorporates \(p_A(1-p_A)\), and the discrete change is checked by refitting the probability at the changed price.
Reading Substitution Patterns With Multiple Alternatives
A model for demand for A can include several competitor prices:
Each coefficient describes a conditional price effect in this specification. A positive \(\beta_B\) is consistent with A and B acting as substitutes in the modeled population: raising B’s price is associated with more demand for A, with other included variables held fixed. A negative coefficient is consistent with complementarity or another conditional relationship that moves their demands together. A coefficient near zero means little estimated conditional response in the chosen model; it does not prove that customers never compare the products.
These interpretations require care. Prices may vary with risk, discounts, distribution channels, or other factors that also affect purchase. The earlier material on confounding and adjustment and instrumental variables addresses why this can distort estimated price effects. Also, quote and renewal samples can select which customers are observed; conditioning on such a sample may alter the relationship. A positive estimated cross-price coefficient is therefore evidence of a conditional association unless the design and assumptions support a causal interpretation.
When several alternatives are modeled separately, their fitted probabilities are not automatically constrained to sum to one. The model can describe a particular purchase outcome, but it does not by itself allocate every customer among all available insurers. The estimated cross-price pattern should be interpreted in light of the outcome and sample used.
Worked Example: Distinguishing Substitutes From a Complement
A hypothetical insurer estimates a linear probability model for buying product A: \(p_A=0.40-0.003(P_A-200)+0.002(P_B-180)-0.001(P_C-160)\). All prices are in dollars. At \(P_A=\$210\), \(P_B=\$190\), and \(P_C=\$150\), calculate the fitted probability and the cross-price elasticities for B and C. Interpret their signs.
Method and assumptions. Treat the fitted equation as a local linear probability model at the stated prices. Each cross-price derivative is its price coefficient; calculate the elasticity using the corresponding competitor price and the fitted probability.
Step 1: Calculate the fitted probability. The centered values are \(10\), \(10\), and \(-10\). Therefore, \(p_A=0.40-0.003(10)+0.002(10)-0.001(-10)=0.40-0.03+0.02+0.01=0.40\).
Step 2: Calculate the elasticity for B. The derivative with respect to \(P_B\) is \(0.002\). Thus, \(\varepsilon_{A,B}=0.002(190)/0.40=0.38/0.40=0.95\).
Step 3: Calculate the elasticity for C. The derivative with respect to \(P_C\) is \(-0.001\). Thus, \(\varepsilon_{A,C}=-0.001(150)/0.40=-0.15/0.40=-0.375\).
The positive B elasticity is consistent with substitution toward A as B’s price rises. The negative C elasticity is consistent with a complementary or otherwise negatively associated conditional response. These signs alone do not establish the products’ economic relationship or a causal effect. Common mistake avoided: using the own price of A in both elasticity calculations. Each cross-price elasticity uses the price whose change is being considered.
Check. The fitted probability is \(0.40\); the elasticities are \(0.95\) for B and \(-0.375\) for C. Their signs agree with the signs of their respective derivatives because all prices and the fitted probability are positive.
Exam Traps and Practical Checks
- Calling a coefficient an elasticity. In a linear model, a price coefficient is an outcome change per price unit. In a logistic model, it is a log-odds change. Only in a log-log model is the price coefficient directly an elasticity under the stated model.
- Using the wrong price in an elasticity. The elasticity with respect to B’s price uses \(P_B\), not \(P_A\), and divides by demand for A.
- Confusing probability units with percentage points. A probability derivative of \(0.001\) per dollar is \(0.1\) percentage points per dollar, not one percentage point.
- Using a local derivative for a large price change. The derivative describes the response at a particular price combination. For a finite change in a nonlinear model, compute both fitted outcomes and subtract using unrounded values.
- Overstating the substitution conclusion. A positive conditional cross-price effect is consistent with substitution, but confounding, selection, and model misspecification can affect the estimate.
Check Your Understanding
For each problem, identify the relevant model quantity before interpreting the result. Prices are in dollars unless otherwise stated.
- A linear probability model is \(p_A=0.55-0.002(P_A-250)+0.0015(P_B-200)\). At \(P_A=260\) and \(P_B=220\), calculate the fitted probability and cross-price elasticity. (Answer: \(p_A=0.56\); cross-price elasticity \(=0.5893\).)
- A logistic model has \(\eta=-0.8-0.008(P_A-300)+0.005(P_B-250)\). At \(P_A=325\) and \(P_B=270\), calculate the fitted probability and the local effect of B’s price per dollar. (Answer: \(\eta=-0.9\), \(p_A\approx0.2891\), and \(\partial p_A/\partial P_B\approx0.001028\) probability units per dollar.)
- A log-log demand model is \(q_A=700(P_A/140)^{-1}(P_B/100)^{0.5}\). Calculate demand at \(P_A=154\), \(P_B=121\), and state the two elasticities. (Answer: \(q_A=700\); own-price elasticity \(=-1\), cross-price elasticity \(=0.5\).)
- A linear model is \(p_A=0.40-0.003(P_A-200)+0.002(P_B-180)-0.001(P_C-160)\). At prices \(P_A=210\), \(P_B=190\), and \(P_C=150\), calculate the fitted probability and the cross-price elasticities for B and C. (Answer: \(p_A=0.40\), \(\varepsilon_{A,B}=0.95\), and \(\varepsilon_{A,C}=-0.375\).)
- A logistic model has a linear predictor of \(-1.1\) at the current prices, and the coefficient on a competitor’s price is \(0.004\) per dollar. Calculate the fitted probability before and after that competitor’s price rises by \$15, with all other predictors fixed. Find the probability change by evaluating both predictions. (Answer: probability rises from approximately \(0.2497\) to \(0.2612\), an increase of approximately \(0.0114\), or 1.14 percentage points.)