Собесов

Сценарий: ценовая эластичность — как измерить и применить

Продуктовая аналитикаPricing strategyСредняяMiddle

Условие

CFO просит: «оцени, на сколько вырастет/упадёт выручка, если поднимем цену на 10%».

Решение

Формула эластичности

E = (ΔQ / Q) / (ΔP / P)

Если поднять цену на 10% и продажи падают на 8% → E = -0.8 (неэластично — выручка растёт). Если падают на 15% → E = -1.5 (эластично — выручка падает).

ΔRevenue% ≈ (1 + E) × ΔP%

При E=-0.8 и ΔP=+10%: ΔRev ≈ +2%. При E=-1.5 и ΔP=+10%: ΔRev ≈ -5%.

Как измерить

  1. Натурный эксперимент (best): A/B на цене (см. предупреждения).
  2. Historical data: регрессия log(Q) ~ log(P) + controls. Коэффициент при log(P) = эластичность.
  3. Conjoint analysis — survey-based WTP оценка.
  4. Discrete choice model (мультиномиальный logit) на исторических выборах.

Регрессия

import statsmodels.api as sm
 
df['log_q'] = np.log(df['quantity'])
df['log_p'] = np.log(df['price'])
 
X = sm.add_constant(df[['log_p', 'season', 'promo_active']])
model = sm.OLS(df['log_q'], X).fit()
elasticity = model.params['log_p']

Endogeneity (важно!)

Цена обычно коррелирует с спросом (поднимаем в высокий сезон). Простая регрессия даст смещённый коэффициент.

Решения:

  • Instrumental variables (стоимость закупки как инструмент).
  • Natural experiments (изменение налога, акция конкурента).
  • A/B-тест — золотой стандарт.

Сегментная эластичность

Эластичность разная по сегментам:

  • Premium-юзеры — низкая (купят всё равно).
  • Бюджет-юзеры — высокая.
  • Конкурентные категории — высокая.
  • Уникальные продукты — низкая.

Считать E по сегменту, не агрегатно.

Optimal price

При линейном спросе оптимум:

P* = MC × E / (E + 1)

Для E=-2 и MC=100: P* = 200. Для E=-1.5 и MC=100: P* = 300.

Подводные камни

  1. Endogeneity — самый коварный bias. Без IV или эксперимента эластичность смещена (обычно занижена по модулю).
  2. Эластичность не константа — она зависит от уровня цены, сегмента, времени.
  3. Cross-price elasticity (товар A влияет на спрос на B) — отдельная история, может перевернуть выводы.
  4. Long-run vs short-run эластичность — длинная обычно сильнее (юзеры успевают переключиться).
  5. На малых выборках регрессия даёт большой CI — «E = -1.2 ± 1.0» не пригодна для решений.

Эталонный ответ

E = (ΔQ/Q)/(ΔP/P). ΔRev% ≈ (1+E)×ΔP%. Измерять через A/B или регрессию log(Q)~log(P)+controls с IV для контроля endogeneity. Считать по сегменту, не средне.

Хочешь увидеть разбор?

Зарегистрируйся бесплатно — откроется развёрнутое решение этой задачи и ещё 4 на выбор.

Зарегистрироваться и увидеть разбор
Уже есть аккаунт? Войти