What price elasticity of demand actually measures
Price elasticity of demand is one number that answers the only question that matters before a price change: if I move the price by one percent, by what percent does the quantity I sell move? Divide the percentage change in units by the percentage change in price and you have it. A coefficient of −1.5 says a one percent price rise costs you one and a half percent of volume.
The sign is almost always negative, because raising a price almost always sells fewer units. Since the sign is predictable, practitioners usually talk about the absolute value and reserve three labels for it, all of them describing a normal downward-sloping curve. Elastic demand has |E| greater than 1: volume responds more than proportionally, typical of commodity products with close substitutes. Inelastic demand has |E| below 1: volume barely moves, typical of essentials, habits, spare parts and anything bought under time pressure. Unit elastic demand sits at exactly 1, where the percentage moves cancel and total revenue is unchanged.
What makes elasticity useful is that it is a pure ratio with no units. You can compare the price sensitivity of a $4 coffee with that of a $40,000 machine, and you can transfer an estimate between markets in different currencies. What makes it dangerous is that it is a property of a range, not of a product. The same coffee may be nearly inelastic between $3.75 and $4.00 and violently elastic above $5.00, where buyers switch to the shop next door. An elasticity measured over a 5% move tells you very little about a 40% move.
Elasticity is also the missing half of every margin calculation. Markup arithmetic tells you what a price change does to profit per unit; only elasticity tells you what it does to the number of units. Without it, a decision to discount is a guess. The markup vs margin calculator supplies the per-unit half of that pair.
Why the midpoint method, and not simply dividing by the old price
The naive calculation divides each change by its starting value. It works, but it gives two different answers for the same pair of points depending on which one you call the start. Take $4 and $6 with 120 and 80 units. Going up, the price rises 50% and quantity falls 33.3%, so |E| = 0.67. Coming back down, the price falls 33.3% and quantity rises 50%, so |E| = 1.50. The same two observations produce an inelastic verdict and an elastic verdict from the same arithmetic.
The midpoint or arc method fixes this by dividing each change by the average of the two values rather than by one of them. The price change of $2 is measured against the midpoint $5, giving 40%. The quantity change of −40 units is measured against the midpoint 100, giving −40%. The elasticity is −40% ÷ 40% = −1.00, and you get −1.00 travelling in either direction. This is the version taught in every introductory economics course and the version reported in most empirical work on discrete price changes.
The midpoint form also buys you something better than symmetry: an exact accounting identity. Because P₂ = P̄ + ΔP/2 and Q₂ = Q̄ + ΔQ/2, the change in revenue expands to ΔR = P̄·ΔQ + Q̄·ΔP with no approximation at all. Substituting the definition of elasticity, ΔQ = E·Q̄·ΔP/P̄, gives
ΔR = Q̄ · ΔP · (1 + E)
Read the bracket. If E is more negative than −1, the bracket is negative, so a price cut (ΔP negative) multiplies two negatives and revenue rises. If E sits between −1 and 0 the bracket is positive and revenue moves in the same direction as price. At E = −1 the bracket is zero and revenue does not move at all — which is exactly what the $4-to-$6 example shows, since 120 × $4 and 80 × $6 are both $480.
The same expansion applied to gross profit, Π = (P − c)·Q, gives ΔΠ = Q̄ · ΔP · (1 + E·ḡ), where ḡ is the gross margin at the midpoint price. That single change — multiplying E by the margin — is why revenue-based and profit-based advice so often conflict, and why the profit-neutral threshold is |E| = 1 ÷ ḡ rather than 1. On a 40% margin, gross profit is unchanged at |E| = 2.5, not at 1.0.
Worked example: raising a $20 product to $22
You sell a product at $20 and move 1,000 units a month. Variable cost is $12, so the unit margin is $8. You raise the price to $22 and the next month you sell 880 units. Work the numbers by hand.
- Changes. ΔP = $22 − $20 = +$2. ΔQ = 880 − 1,000 = −120 units.
- Midpoints. P̄ = ($20 + $22) ÷ 2 = $21. Q̄ = (1,000 + 880) ÷ 2 = 940 units.
- Percentage changes. %ΔP = $2 ÷ $21 = +9.524%. %ΔQ = −120 ÷ 940 = −12.766%.
- Elasticity. E = −12.766% ÷ 9.524% = −1.340. |E| exceeds 1, so demand is elastic over this range.
- Revenue. Before: 1,000 × $20 = $20,000. After: 880 × $22 = $19,360. Revenue fell $640. Check with the identity: 940 × $2 × (1 − 1.340) = $1,880 × (−0.340) = −$640.
- Gross profit. Before: 1,000 × $8 = $8,000. After: 880 × ($22 − $12) = 880 × $10 = $8,800. Gross profit rose $800. Check: ḡ = ($21 − $12) ÷ $21 = 0.4286, so 940 × $2 × (1 − 1.340 × 0.4286) = $1,880 × 0.4255 = +$800.
This is the case that trips up anyone who works from revenue. Demand was elastic, revenue fell, and the price rise was still clearly the right decision: $800 more gross profit on 120 fewer units, with less stock to buy, ship and warehouse.
Two more figures complete the picture. The break-even volume at $22 is the old gross profit divided by the new unit margin: $8,000 ÷ $10 = 800 units. You sold 880, clearing the bar by 80 units, and you could have lost up to 200 units of volume before the price rise cost you anything. The profit-neutral elasticity is 1 ÷ 0.4286 = 2.333: demand would have had to be nearly twice as elastic as it turned out to be for this price rise to hurt.
How to read the coefficient, and what a normal value looks like
Start with the sign. A negative coefficient is what you expect. A positive one means units and price moved together, and that is almost never a demand curve sloping the wrong way — it is a confounded measurement. A seasonal upswing, a competitor stock-out, a fresh advertising campaign or a distribution win can all raise volume during the same month you raised price, and the calculator has no way to know. Treat a positive result as a signal to find the other variable, not as evidence that customers like paying more.
Then compare |E| against 1 for revenue and against 1 ÷ ḡ for profit. Those are the only two thresholds the arithmetic supports, and the second is the one that pays your bills. Because 1 ÷ ḡ is always at least 1, there is a band between them — between |E| = 1 and |E| = 1 ÷ ḡ — where a price rise reduces revenue and increases gross profit at the same time. The band closes only when variable cost is zero, which makes ḡ = 1 and the two thresholds identical; on any product with a real unit cost the band exists, and the worked example above sits squarely inside it at |E| = 1.340 against a threshold of 2.333.
Absolute magnitudes vary far too much across categories for any single benchmark to be useful, and any figure you see quoted as a universal elasticity should be treated as marketing. What travels reliably is the list of drivers: elasticity rises with the number of close substitutes, with the share of the buyer's budget the item takes, with how easy the price is to compare, with the time buyers have to shop around, and with how discretionary the purchase is. It falls with brand attachment, switching costs, urgency, reimbursement by a third party, and habit.
Finally, be honest about the confidence interval. An elasticity estimated from two months of data on one product carries enormous sampling error, and the estimate is only valid near the prices you observed. If a decision is large, run a proper price test — a genuine holdout with randomised assignment — and size it before you start with the A/B test sample size calculator. Two adjacent months are a hypothesis, not a measurement.
Unit volume increase needed to break even on a price cut
| Starting gross margin | 5% price cut | 10% price cut | 15% price cut | 20% price cut |
|---|---|---|---|---|
| 20% | +33.3% | +100% | +300% | Impossible |
| 30% | +20.0% | +50.0% | +100% | +200% |
| 40% | +14.3% | +33.3% | +60.0% | +100% |
| 50% | +11.1% | +25.0% | +42.9% | +66.7% |
| 60% | +9.1% | +20.0% | +33.3% | +50.0% |
| 70% | +7.7% | +16.7% | +27.3% | +40.0% |
The 20% margin row cut by 20% is marked impossible because the price cut removes the entire unit margin: no volume, however large, restores gross profit when each unit earns nothing. Thin-margin businesses cannot discount their way to profit.
Two adjacent periods are not a controlled experiment
This calculator computes exactly what you give it. It cannot tell whether the volume change was caused by your price. Anything else that moved in the same window is silently attributed to the price change: seasonality, a promotion, a stock-out, a review, a competitor's price, a change in ad spend, a new sales channel.
Three habits make the estimate defensible. Compare like periods — the same number of days, and ideally the same weeks of the year against last year. Hold advertising and distribution steady across the two windows. And where the stakes justify it, split traffic or stores randomly rather than comparing before with after, so the confounders fall on both sides equally.
Mistakes that produce a misleading elasticity
- Dividing by the starting values instead of the midpoints. That gives a different answer in each direction, and the two can straddle 1 — the difference between an elastic and an inelastic verdict on the same data.
- Using list price instead of realised price. If half of the volume moved on promotion, the effective price is not the ticket price. Compute revenue ÷ units for each period and use that.
- Measuring across unequal periods. Four weeks against five weeks builds a 25% volume difference into the numerator before a single customer reacts.
- Reading a revenue-maximising conclusion as a profit-maximising one. The revenue threshold is |E| = 1; the gross-profit threshold is |E| = 1 ÷ margin. On a 50% margin those are 1.0 and 2.0 — far apart enough to reverse a decision.
- Extrapolating a small measured move to a large one. An elasticity fitted between $20 and $22 says nothing dependable about $30, where substitution behaviour changes character.
- Forgetting cross-elasticity within your own range. Raising the price of one size often pushes buyers to another size you also sell. Measure the category, not just the item.
Related measures and when to use one instead
Point elasticity replaces the finite changes with derivatives: E = (dQ/dP)·(P/Q). Use it when you have an estimated demand function rather than two observations, and note that the arc elasticity from this calculator approximates the point elasticity at the midpoint price. The constant-elasticity projection in the results table is exactly that: a curve Q = Q₁·(P/P₁)^E, which has the same elasticity at every price.
Cross-price elasticity divides the percentage change in another product's volume by the percentage change in this product's price. Positive means substitutes, negative means complements. It is the right tool for line pricing and for cannibalisation questions.
Income elasticity and advertising elasticity use the same ratio with a different denominator, and the interpretation carries over unchanged.
Contribution-margin analysis answers the neighbouring question of how much volume a price change must deliver. The threshold from the reference table above is the same arithmetic the contribution margin calculator and the break-even point calculator use, applied to a price change rather than to fixed costs.
Two practical companions complete the toolkit. Before you set a price, solve for the one your margin target requires with the selling price from target margin calculator. Afterwards, watch whether a price move shifted basket composition rather than unit count using the average order value calculator — a price rise that holds units but shrinks the basket is a different problem from one that loses customers.
Key terms
- Arc (midpoint) elasticity
- Elasticity between two observed points, with each percentage change measured against the average of the two values. Symmetric in both directions.
- Elastic demand
- E below −1, so |E| greater than 1. Units respond more than proportionally to price, and total revenue moves opposite to price.
- Inelastic demand
- E between −1 and 0. Units respond less than proportionally, and total revenue moves in the same direction as price.
- Unit elastic
- |E| exactly 1. The percentage changes cancel and total revenue is identical at both prices.
- Profit-neutral elasticity
- 1 ÷ ḡ, the value of |E| at which a small price change leaves gross profit unchanged. Always at least 1, and larger the thinner the margin.
- Confounding
- Any other factor that moved between the two periods and is therefore wrongly credited to the price change.
