1. Scope
Applies the midpoint (arc) elasticity formula to two (price, quantity) points and reports whether revenue grows or shrinks under the observed elasticity. It does not estimate elasticity from a single data point or cross-elasticity between products.
2. Inputs and outputs
Inputs
- priceOld number (currency)
- priceNew number (currency)
- quantityOld number
- quantityNew number
Outputs
- elasticity
Midpoint price elasticity of demand (PED).
- classification
elastic (|PED| > 1), inelastic (|PED| < 1), unit-elastic (=1).
- revenueDirection
Whether revenue rises or falls under the price change.
Engine source: src/lib/price-elasticity-calculator/engine.ts
3. Formula / scoring logic
PED = ((Qn - Qo) / ((Qn + Qo) / 2)) / ((Pn - Po) / ((Pn + Po) / 2)) 4. Assumptions
- Two observed points are enough to approximate local elasticity. For policy decisions, estimate from a regression across many points.
- Demand is stationary between the two measurements — no seasonality, no macro shock, no competitor price move.
5. Data sources
6. Known limitations
- Two points describe a chord, not a curve. Estimated elasticity is valid only near the price band sampled.
- Cannot detect menu effects, anchoring, or promotion-driven demand spikes.
7. Reproducibility
Input
priceOld = $20, priceNew = $25, quantityOld = 100, quantityNew = 80.
Expected output
elasticity ≈ -1.0 (unit-elastic); revenue unchanged at $2,000.
8. Change log
- 2026-04-24 methodology page first published.