Research & Evidence

Search for a method

Search titles, questions, territories and MSC identifiers.

41 results
  1. MSC-P-001How do you turn a marketing claim into a testable question?Decision Science↗
  2. MSC-P-002Correlation or causality: what can an analysis actually support?Marketing Measurement↗
  3. MSC-P-003How should uncertainty in a marketing result be expressed?Decision Science↗
  4. MSC-P-004Statistical significance or effect size: which result should be interpreted?Decision Science↗
  5. MSC-P-005How do you measure a marketing construct that is not directly observable?Market Research↗
  6. MSC-P-006How do you design and validate a measurement scale?Market Research↗
  7. MSC-P-007Alpha or omega: how should scale reliability be assessed?Market Research↗
  8. MSC-P-009PCA, EFA or CFA: which method should you choose?Market Research↗
  9. MSC-P-010When should you run a marketing experiment?Marketing Measurement↗
  10. MSC-P-011How do you design an A/B test that actually estimates an effect?Marketing Measurement↗
  11. MSC-P-012How many observations does an experiment need?Decision Science↗
  12. MSC-P-013How do you measure campaign incrementality with a control group?Marketing Measurement↗
  13. MSC-P-017How do you detect selection, contamination and attrition in an experiment?Marketing Measurement↗
  14. MSC-P-018Predictive or causal regression: what are you trying to estimate?Marketing Models↗
  15. MSC-P-019How do you diagnose a marketing regression before interpreting it?Marketing Models↗
  16. MSC-P-022How do you estimate price elasticity and its uncertainty?Pricing Science↗
  17. MSC-P-026Logit vs Probit: how do you choose for purchase probability?Customer Science↗
  18. MSC-P-029Which customers have the highest probability of churn?Customer Science↗
  19. MSC-P-027TAM, UTAUT or UTAUT2: which framework should be used to study technology acceptance?Market Research↗
  20. MSC-H-001Measurement and causality: how can a marketing effect be established?Marketing Measurement↗
  21. MSC-H-002Marketing response models: shape, delay and saturationMarketing Models↗
  22. MSC-H-003Pricing science: connecting price, demand and contributionPricing Science↗
  23. MSC-H-004Customer and choice science: behavior, value and heterogeneityCustomer Science↗
  24. MSC-H-005Measurement science: building valid indicatorsMarket Research↗
  25. MSC-H-006Statistical decision methods: choose, quantify, validateDecision Science↗
  26. MSC-P-008How do you validate a marketing measurement scale?Market Research↗
  27. MSC-P-014How do you design a marketing geo experiment?Marketing Measurement↗
  28. MSC-P-015How do you estimate an effect with difference-in-differences?Marketing Measurement↗
  29. MSC-P-020How do you address price endogeneity?Pricing Science↗
  30. MSC-P-021Fixed or random effects: which panel model should you choose?Marketing Models↗
  31. MSC-P-023How do you estimate a demand function?Pricing Science↗
  32. MSC-P-024How do you simulate a price-volume-margin scenario?Pricing Science↗
  33. MSC-P-028How do you estimate CLV with BG/NBD and Gamma-Gamma?Customer Science↗
  34. MSC-P-030How do you analyze retention with a survival model?Customer Science↗
  35. MSC-P-043What is a subscriber worth with only six months of retention data?Customer Science↗
  36. MSC-P-031How do you build a useful customer segmentation?Customer Science↗
  37. MSC-P-032How do you test segmentation stability?Customer Science↗
  38. MSC-P-033How do you validate a marketing forecast?Decision Science↗
  39. MSC-P-034How do you build a Monte Carlo simulation for a marketing decision?Decision Science↗
  40. MSC-P-035How do you model saturation and adstock?Marketing Models↗
  41. MSC-P-039Which statistical test should you choose?Decision Science↗
← All methods
METHOD DOSSIERMSC-P-023Pricing scienceVerified scientific dossier

How do you estimate a demand function?

A demand function connects quantity, price and context over an observed domain. Shape, heterogeneity, competition and endogeneity determine what can be simulated.

Scientific editorial team: Marketing Science Center

Direct answer

Compare scenarios near observed data with intervals and diagnostics.

A demand function connects quantity, price and context over an observed domain. Shape, heterogeneity, competition and endogeneity determine what can be simulated.

Tellis, 1988Villas-Boas & Winer, 1999

01

Operational summary

Scientific question and scope

How do you estimate a demand function?

Supported

Compare scenarios near observed data with intervals and diagnostics.

Forbidden

Extrapolate stable demand through an unobserved structural change.

02

Three reading levels

  1. 01

    Decision-maker — Connect the result to a declared decision, useful threshold and error cost.

  2. 02

    Practitioner — Fix population, unit, horizon, available variables and analysis rule before calculation.

  3. 03

    Analyst — Reproduce the calculation, quantify uncertainty and document diagnostics, failures and sensitivities.

03

Concrete marketing situation

A demand function connects quantity, price and context over an observed domain. Shape, heterogeneity, competition and endogeneity determine what can be simulated.

04

Scientific question and scope

How do you estimate a demand function?

Associational target by default: E[ln(Q)|ln(P),X]. Structural target only under a separately justified identification design: counterfactual demand Q(p)

Required data

Market × product × period

Population, unit of analysis, origin date and horizon must be declared in the deliverable. Without them, the estimand silently changes.

05

Why a simple analysis can fail

  • Extrapolate stable demand through an unobserved structural change.
  • Declare associational or structural target
  • Functional form
  • Price endogeneity

06

Method intuition

The method does not automatically turn an association into evidence. It links a declared question to an estimand, specification, compatible data and a bounded interpretation rule.

Associational target by default: E[ln(Q)|ln(P),X]. Structural target only under a separately justified identification design: counterfactual demand Q(p)

07

Required data

Scientific symbol dictionary

P0
Baseline unit price before the scenario. Unit: euro per unit · Type: positive number · Role: input
P1
Scenario unit price P0 multiplied by the declared price ratio. Unit: euro per unit · Type: positive number · Role: derived
Q0
Baseline volume over the declared horizon. Unit: unit · Type: positive number · Role: input
Q1
Conditional scenario volume under constant supplied elasticity. Unit: unit · Type: positive number · Role: derived
VC
Variable cost per unit, held constant in this sealed branch. Unit: euro per unit · Type: nonnegative number · Role: input
price_ratio
Multiplicative scenario price P1/P0. Unit: ratio · Type: positive number · Role: input
elasticity
Externally supplied constant price elasticity used only for the scenario range. Unit: dimensionless · Type: number · Role: input
delta_fixed_cost
Signed change in fixed cost; a negative value is a saving and therefore increases delta profit through the minus sign. Unit: euro · Type: number · Role: input
delta_profit
Conditional change in contribution after the signed fixed-cost change. Unit: euro over declared horizon · Type: number · Role: output

Exact sealed engine inputs

baseline_price_eur
Value: 100 · Unit: EUR_per_unit · Type: number · Data status: synthetic
baseline_volume
Value: 10000 · Unit: unit · Type: number · Data status: synthetic
variable_cost_eur
Value: 55 · Unit: EUR_per_unit · Type: number · Data status: synthetic
fixed_cost_change_eur
Value: 0 · Unit: EUR · Type: number · Data status: synthetic
elasticity
Value: -1.3 · Unit: dimensionless · Type: number · Data status: synthetic
price_ratio
Value: 1.05 · Unit: ratio · Type: number · Data status: synthetic

08

Formal model

Formal model

P1 = P0 × price_ratio; Q1 = Q0 × price_ratio^elasticity; delta_profit = (P1−VC)Q1 − (P0−VC)Q0 − delta_fixed_cost

Evidence claims: MSC-P023-C01 · MSC-P023-C02 · MSC-P023-C03 · MSC-P023-C04 · MSC-P023-C05

Scientific question and scope

Associational target by default: E[ln(Q)|ln(P),X]. Structural target only under a separately justified identification design: counterfactual demand Q(p)

09

Declared calculation

  1. 01

    Validate positive prices and volumes, nonnegative variable cost, a positive price ratio and the signed fixed-cost convention.

  2. 02

    Compute the scenario price and volume with the supplied elasticity, then calculate baseline and scenario contribution.

  3. 03

    Subtract the signed fixed-cost change and label the result as a conditional scenario, not demand estimation or a causal effect.

10

Numerical example or application case

Synthetic illustration — teaching values, not observed — synthetic data or declared parameters; no real observations

Sealed inputs

  • baseline_price_eur=100 [EUR_per_unit]
  • baseline_volume=10000 [unit]
  • variable_cost_eur=55 [EUR_per_unit]
  • fixed_cost_change_eur=0 [EUR]
  • elasticity=-1.3 [dimensionless]
  • price_ratio=1.05 [ratio]

Reproducible results

  • Q1=9385.424301
  • conditional_volume_change=-6.1458%
  • incremental_contribution=€19,271.215054

Verified dossier: claims are linked to passage-level sources, the Python/R calculation is reproduced, limits are explicit, and independent scientific review is complete.

11

Validity assumptions

  • Is the supplied elasticity credible over the exact price range and horizon?
  • Are variable and fixed cost sign conventions reconciled with finance?
  • Could capacity, competitor response, substitution or endogeneity invalidate the constant-elasticity scenario?

12

Diagnostics and uncertainty

Diagnostics and uncertainty

Declare associational or structural target · Functional form · Price endogeneity · Residual structure · Observed support for scenarios

Bounded diagnostic

Conditional scenario using a supplied elasticity; neither demand estimation nor causal effect.

Explicit uncertainty contract · not_estimable_from_sealed_inputs

Method: Explicit non-estimability assessment against the sealed input schema.

Target: Uncertainty of incremental contribution under uncertain elasticity and costs.

Engine evidence: diagnostic=conditional_scenario_using_supplied_elasticity_not_demand_estimation_or_causal_effect

Interpretation: No sampling distribution or credible range for elasticity and costs is supplied, so the example is a conditional point scenario only.

Stop when

Extrapolate stable demand through an unobserved structural change.

13

Result interpretation

  • Compare scenarios near observed data with intervals and diagnostics.
  • The result is conditional on the declared population, horizon, specification and diagnostics. It must not be extended to another decision without new justification.

14

Supported and forbidden conclusions

Supported

Compare scenarios near observed data with intervals and diagnostics.

Forbidden

Extrapolate stable demand through an unobserved structural change.

15

Possible marketing decision

  1. 01

    Compare scenarios near observed data with intervals and diagnostics.

  2. 02

    The result is conditional on the declared population, horizon, specification and diagnostics. It must not be extended to another decision without new justification.

16

When to use — when to stop

Use when

Compare scenarios near observed data with intervals and diagnostics.

Market × product × period

Stop when

Extrapolate stable demand through an unobserved structural change.

Methodological alternatives

  • Estimate a demand model with explicit price endogeneity controls.
  • Run a randomized price experiment where legal and operationally feasible.
  • Use a richer demand system when substitution across products matters.

17

Reproducibility contract

Python and R are the executable references. SPSS and SAS remain secondary syntaxes until checked on the same data, specification and diagnostics.

The engine selects only this page’s explicit slice and branch. Its hash, outputs, and diagnostics remain sealed in the atomic dossier; no generic fallback branch is allowed.

Slice fingerprint: 27a93ef2c767497234093d2e6d4cb40930812f450e9b235f978cfa4a11ab6b84

Formal model

P1 = P0 × price_ratio; Q1 = Q0 × price_ratio^elasticity; delta_profit = (P1−VC)Q1 − (P0−VC)Q0 − delta_fixed_cost

Verified dossier: claims are linked to passage-level sources, the Python/R calculation is reproduced, limits are explicit, and independent scientific review is complete.

18

Expected final deliverable

  1. 01

    How do you estimate a demand function? — Market × product × period

  2. 02

    P0 · P1 · Q0 · Q1 · VC · price_ratio · elasticity · delta_fixed_cost · delta_profit

  3. 03

    P1 = P0 × price_ratio; Q1 = Q0 × price_ratio^elasticity; delta_profit = (P1−VC)Q1 − (P0−VC)Q0 − delta_fixed_cost

  4. 04

    Declare associational or structural target · Functional form · Price endogeneity · Residual structure · Observed support for scenarios

  5. 05

    Compare scenarios near observed data with intervals and diagnostics. / Extrapolate stable demand through an unobserved structural change.

19

Scientific sources and evidence status

Verified dossier: claims are linked to passage-level sources, the Python/R calculation is reproduced, limits are explicit, and independent scientific review is complete.

  1. MSC-P023-C01 — Elasticity is a dimensionless relative response measure.
  2. MSC-P023-C02 — A log-log price coefficient can be interpreted as elasticity under the stated form.
  3. MSC-P023-C03 — Omitted variables, cross-sectional design and aggregation can bias elasticity estimates.
  4. MSC-P023-C04 — Price may be correlated with unobserved demand determinants.
  5. MSC-P023-C05 — Ignoring marketing-mix endogeneity can materially bias parameters.
  1. Tellis, 1988
  2. Villas-Boas & Winer, 1999

Method connections

Parent territoryPricing science: connecting price, demand and contributionRequiresHow do you address price endogeneity?EstimatesHow do you estimate price elasticity and its uncertainty?

Read next

MSC-H-003Pricing science: connecting price, demand and contribution→MSC-P-020How do you address price endogeneity?→MSC-P-022How do you estimate price elasticity and its uncertainty?→MSC-P-024How do you simulate a price-volume-margin scenario?→