Marketing Mix Modeling на собесе

Зачем MMM на собесе маркетинг-аналитика

MMM (Marketing Mix Modeling) — econometric подход к измерению ROI маркетинга. Особо актуален в cookieless эре, когда per-user attribution деградирует. На собесе маркетинг-аналитика MMM спрашивают, если компания крупная и есть offline-каналы (ТВ, OOH, радио).

Слабый ответ — «не знаю». Сильный — про регрессионный модель revenue ~ media spend, adstock, saturation, cookieless preference.

Что такое MMM

Идея: регрессия revenue ~ marketing spend + control variables.

Variables:

  • Dependent: weekly / daily revenue (sales)
  • Media spend: TV, digital, radio, OOH per channel
  • Controls: seasonality, holidays, promotions, competitor activity, price, weather

Output:

  • Contribution каждого канала к revenue
  • ROI per channel
  • Optimal budget allocation
  • Diminishing returns curves

Когда MMM работает

Хорошо:

  • Long history data (2+ years)
  • Several variation в spend (не одинаково месяцами)
  • Mix online + offline channels
  • Aggregated reporting OK (не per-user)

Плохо:

  • Short history
  • Все spend растёт линейно (нет variation)
  • Только digital channels с good attribution
  • Need per-user decisions

Adstock (carryover)

Marketing impact не моментальный — есть decay over time.

Geometric adstock:

  • adstock_t = spend_t + λ × adstock_(t-1)
  • λ = decay rate (0.3-0.8 typical)

Weibull adstock:

  • Более flexible curve
  • Peak не сразу, decay следом

Half-life:

  • Через сколько недель half effect остаётся
  • TV: 2-4 weeks. Digital: 1-2 weeks. OOH: 4-8 weeks.

Saturation (diminishing returns)

Spend дополнительный $1k → меньше revenue uplift при большом spend.

Кривые saturation:

  • Hill function: y = A × x^n / (K^n + x^n)
  • Log: y = a × log(x + 1)
  • Exponential: y = A × (1 - exp(-k × x))

Output: point of diminishing returns → over это spend ineffective.

Подход к моделированию

Steps:

  1. Data prep:

    • Weekly / daily aggregation
    • Spend per channel
    • Revenue / sales
    • Controls (seasonality, price, promotions)
  2. Transformations:

    • Apply adstock per channel
    • Apply saturation per channel
    • Tune parameters
  3. Regression:

    • revenue ~ adstocked_saturated_spend + controls
    • Bayesian regression (PyMC, Stan) — handle uncertainty
  4. Validation:

    • Train/test split (time-based)
    • MAPE, R² metrics
    • Cross-validation на different periods
  5. Insights:

    • Channel contribution
    • ROI per channel
    • Budget optimization

Tools

Open-source:

  • Robyn (Meta) — R, popular
  • LightweightMMM (Google) — Python, Bayesian
  • PyMC-Marketing — Python, flexible Bayesian
  • Orbit (Uber) — Python, Bayesian

Managed:

  • Nielsen MMM (legacy enterprise)
  • Hopper, OAK, etc.

В РФ: in-house на Python / R, или Robyn / PyMC.

MMM vs MTA

MTA (Multi-Touch Attribution):

  • Per-user
  • Cookie-based
  • Realtime
  • Better для digital

MMM:

  • Aggregated
  • Cookieless
  • Slow iteration
  • Better для offline / brand

Best practice 2026: unified measurement — MMM + MTA + incrementality.

Incrementality testing

Дополняет MMM. Causal lift через experiments.

Methods:

  • Geo-experiments: hold out region from spend, compare lift
  • Conversion lift (in-platform GA, Meta)
  • PSA test: replace ads with PSA, measure baseline

Подтверждает (или опровергает) MMM estimates.

Типичные вопросы

«Зачем MMM в 2026?»

Cookieless tracking degraded. Per-user attribution unreliable. MMM аgregated, не depends on cookies, captures offline channels.

«Adstock и saturation — зачем?»

Adstock: marketing impact lingers (TV ad seen today affect purchase next week). Saturation: $1 ад spend even at $100k не такой effective как at $10k. Без них MMM unreliable.

«У нас 6 месяцев data. MMM сработает?»

Слабо. MMM requires 2+ years обычно. С 6 месяцами model overfits, нестабильный. Альтернатива: incrementality testing.

«MMM сказал TV ROI 5x. Believe?»

Sanity check: MMM uncertainty bounds wide? Cross-validate на different periods. Validate с incrementality test (geo-experiment).

Частые ошибки

  • Без adstock / saturation. Линейная регрессия — wrong assumptions.
  • Short history. Model overfits.
  • Too many channels, мало data. Underspecified.
  • MMM как single source of truth. Combine с MTA, incrementality.
  • No validation. Доверяем числам без проверки.

FAQ

MMM сам или нанять consultancy?

Small / mid scale — in-house на open-source (Robyn / LightweightMMM). Enterprise — consultancy + in-house team.

Какой ML stack?

Python (PyMC, statsmodels) или R (Robyn). Bayesian → uncertainty estimates.

Update cadence MMM?

Quarterly typically. Re-run model на refreshed data.

MMM и B2B?

Слабее — sales cycles long, mediating factors много. B2C consumer products — better fit.

Где практиковать?

Robyn — open-source, есть public examples. Kaggle MMM datasets.

Смотрите также