Skip to content
Price IntelligencePrice Intelligence home

Metrics

The price elasticity of demand formula, worked end to end

The price elasticity of demand formula is the percentage change in quantity divided by the percentage change in price. Using midpoint percentages, a move from $199 to $179 that lifts units from 420 to 520 gives an elasticity of about -2.0, meaning demand is elastic: units move proportionally more than price.

Ashesh DhakalFounder7 min read
Start free trialOpen the live demo14 days, no credit card, cancel in one click.

Price elasticity of demand is the percentage change in units sold divided by the percentage change in price. It is almost always negative, because raising a price usually reduces volume, and what matters is its size. Below -1 and demand is elastic, meaning units respond more than proportionally. Between 0 and -1 it is inelastic. The number is easy to compute and hard to compute honestly, because almost every price change in a real business happened for a reason that also moved demand.

The price elasticity of demand formula

                     percentage change in quantity demanded
  Price elasticity =  ----------------------------------------
                          percentage change in price


  Simple (point) method, using the starting values as the base:

      % change in Q = (Q1 - Q0) / Q0
      % change in P = (P1 - P0) / P0


  Midpoint (arc) method, using the average of start and end as the base:

      % change in Q = (Q1 - Q0) / ((Q1 + Q0) / 2)
      % change in P = (P1 - P0) / ((P1 + P0) / 2)

Use the midpoint method. It matters more than it looks. The simple method gives a different answer depending on which end you start from, so a cut from $199 to $179 and a rise from $179 back to $199 produce two different elasticities for the same pair of observations. The midpoint method divides by the average, so the direction of travel cancels out and one price pair gives one number.

A full worked example, with the arithmetic

A retailer sells a cordless drill kit at $199.00 and moves 420 units in a four-week window. The price drops to $179.00 and units reach 520 in the next comparable four weeks. These are illustrative numbers chosen to make the arithmetic clear.

  Observed
    P0 = $199.00    Q0 = 420 units (four weeks)
    P1 = $179.00    Q1 = 520 units (next four weeks)

  Midpoint percentages
    average quantity = (420 + 520) / 2 = 470
    % change in Q    = (520 - 420) / 470  =  100 / 470  = +0.21277  = +21.28%

    average price    = (199 + 179) / 2 = 189
    % change in P    = (179 - 199) / 189  =  -20 / 189  = -0.10582  = -10.58%

  Elasticity
    E = +21.28% / -10.58% = -2.011   ->   -2.01


  The same data with the simple method, from the starting values
    % change in Q = 100 / 420 = +23.81%
    % change in P = -20 / 199 = -10.05%
    E = +23.81% / -10.05% = -2.37

  Two methods, one dataset, a difference of 0.36. Pick one and never mix them.

An elasticity of -2.01 says demand is elastic: a one percent price reduction bought roughly two percent more units. In most presentations that is where the analysis stops, and it is exactly where it should not, because the revenue and margin outcomes point in opposite directions.

The same price cut, read three ways
MeasureAt $199.00, 420 unitsAt $179.00, 520 unitsChange
Revenue$83,580$93,080+$9,500, or +11.4 percent
Contribution per unit (cost $130.00)$69.00$49.00-$20.00 per unit
Total contribution$28,980$25,480-$3,500, or -12.1 percent

420 x 199 = 83,580 and 520 x 179 = 93,080. 420 x 69 = 28,980 and 520 x 49 = 25,480. Revenue rose 11.4 percent while contribution fell 12.1 percent. Elastic demand is not the same thing as a profitable price cut.

That table is the single most useful thing on this page. Demand was elastic. Volume rose sharply. Revenue rose by $9,500. And the business made $3,500 less than it did before, because each of those extra units carried $20 less contribution. Any pricing conversation that stops at revenue will approve this decision.

Where a repricing rule is allowed to move a priceA vertical price scale showing the bands a repricing rule operates within. Below the cost floor and the margin floor the rule may never go. Above the MAP floor and below MSRP is the permitted zone. A maximum daily change limits how far a price can move in one run, and every proposed change outside the permitted zone is blocked rather than applied.A RULE THAT CAN BREACH ITS OWN FLOOR WILL EVENTUALLY BREACH ITNever — below cost or below margin floorcost $128.00 · 22% margin floor $164.10Permitted zone$164.10 – $229.00max change 6% per day, so today the rule may reach $187.06Above MSRP $229.00 — held$229.00 MSRP$199.00 current$164.10 floor$128.00 costBlocked today3 of 12 proposedchanges would havecrossed the floor
Elasticity tells you whether volume responds. This tells you the band a price may move within once contribution per unit is accounted for.

Elastic, inelastic, and how to read the number

The dividing line is -1.0. Below it, meaning larger in magnitude, quantity responds proportionally more than price and demand is elastic. Between -1.0 and 0, quantity barely responds and demand is inelastic. At exactly -1.0 the two changes offset, which is the textbook definition of unit elasticity.

Reading an elasticity value: effect of a 10 percent price cut
ElasticityInterpretationUnit changeRevenue changeWhat it usually means for a cut
0.0Perfectly inelastic0 percent-10.0 percentThe cut is pure margin donation
-0.5Inelastic+5 percent-5.5 percentRevenue falls; a cut is hard to justify
-1.0Unit elastic+10 percent-1.0 percentRoughly revenue-neutral, margin still falls
-1.5Elastic+15 percent+3.5 percentRevenue rises; check margin before celebrating
-2.0Elastic+20 percent+8.0 percentRevenue clearly rises; margin depends on your CM
-3.0Highly elastic+30 percent+17.0 percentThe case for a cut is strongest here

Revenue change is computed with discrete percentages: at -1.0 the factor is 0.90 x 1.10 = 0.99, so revenue dips 1 percent rather than staying exactly flat. Unit elasticity is precisely revenue-neutral only for infinitesimally small changes, which real price changes are not.

Two limits are worth stating plainly. Elasticity is local, not global: a value measured between $179 and $199 tells you nothing reliable about $129, because demand curves bend and price thresholds are real. And elasticity says nothing about profit on its own. That requires the contribution margin, which is the next section.

There is a second elasticity worth naming, because retailers meet it constantly and rarely separate it from the first. Own-price elasticity is how your units respond to your own price. Cross-price elasticity is how your units respond to somebody else's price, and for substitutable products it is normally positive: a competitor cutting their price reduces your volume. Anything you compute from a period when a competitor also moved is a blend of the two. That is not a technicality. It is the most common reason an elasticity estimate produced during a competitive promotion looks nothing like the one produced a month later.

Break-even volume: the calculation that should decide a price change

Before asking what elasticity is, ask what it would have to be. The break-even volume calculation answers that, it needs no historical data at all, and it takes thirty seconds. It is the single highest-value piece of pricing arithmetic most teams do not run.

  Contribution margin per unit, before   CM0 = P0 - variable cost
  Contribution margin per unit, after    CM1 = CM0 + (P1 - P0)

  Units needed to hold total contribution flat:

      Q_breakeven = Q0 x (CM0 / CM1)

  Required percentage change in volume:

      = (CM0 / CM1) - 1        which is the same as       -(P1 - P0) / CM1


  Worked on the example above, variable cost $130.00 per unit:

      CM0 = 199 - 130 = $69.00
      CM1 = 179 - 130 = $49.00

      Q_breakeven       = 420 x (69 / 49) = 420 x 1.40816 = 591.4 -> 592 units
      Required increase = 1.40816 - 1 = +40.8%

      Actually achieved = 520 units, an increase of +23.8%
      Shortfall         = 72 units

  Break-even elasticity for this cut:
      +40.8% / -10.05% = -4.06

  The cut needed demand around -4.06 and demand was -2.37. It was never
  going to pay, and the arithmetic said so before a single unit shipped.

Run that calculation before the price change, not after. It converts an argument about whether customers are price sensitive into a specific, falsifiable claim: we need 40.8 percent more units. Nobody in the room has to guess an elasticity. They only have to decide whether a forty percent volume lift is plausible, and that is a question merchandising can answer.

Break-even volume for a 10 percent price change, by contribution margin
Contribution marginUnits needed after a 10 percent cutElasticity required to break evenUnits you can lose after a 10 percent riseElasticity at which the rise breaks even
20 percent+100.0 percent-10.0-33.3 percent-3.33
30 percent+50.0 percent-5.0-25.0 percent-2.50
40 percent+33.3 percent-3.33-20.0 percent-2.00
50 percent+25.0 percent-2.50-16.7 percent-1.67
60 percent+20.0 percent-2.00-14.3 percent-1.43

Computed on a $100.00 price. At a 30 percent margin the CM is $30.00 and a 10 percent cut leaves $20.00, so you need 30/20 = 1.50 times the units. Thin margins make price cuts brutal and price rises forgiving: at 20 percent margin a cut needs double the volume, while a rise survives losing a third of it.

The asymmetry in that table is the practical lesson. On thin margins, price increases are far more forgiving than price cuts, and the intuition most teams carry is the opposite. If you want to run these numbers against your own costs, the price elasticity calculator does the elasticity and break-even arithmetic together, and the margin calculator handles the landed-cost side.

Cadence 200 Bookshelf Speakers (pair) — Sand — 60-day price history

$317.10$372.88$428.65$484.43$540.21May 25Jun 9Jun 24Jul 8Jul 23
Northline SupplyVoltbayHarborlinePrimeDeckCasa & KinBelmont Direct
Attribution needs dated series. A price change is only interpretable against what your own price and the market were doing on the same days, which is what an append-only history provides.

Estimating elasticity from observed data, without an experiment

Most teams do not run randomised price tests, so they try to read elasticity from history they already have. That is legitimate, and it produces a number worth having as long as everyone treats it as an order of magnitude rather than a measurement.

The standard approach is a constant-elasticity regression. Take the natural log of units and the natural log of price for each period, fit a straight line, and the slope is the elasticity directly. That is convenient enough to be worth knowing on its own.

  ln(Q) = a + b x ln(P)        b is the elasticity

  Minimum viable data before the number means anything:

    - at least 3 to 4 genuinely distinct price levels, not two
    - several periods held at each level, so a level is not one week
    - enough units per period that weekly variance is small next to the effect
    - a record of what else changed: promotions, placement, competitor prices,
      stock outages, marketing spend, season

  Pool across similar SKUs when a single product is too thin. A category-level
  elasticity from 40 comparable products is usually more trustworthy than a
  SKU-level one from 12 noisy weeks.

Three cheaper approaches are worth knowing because they need less data and lie less often. Historical promotions are natural experiments if the promotion was price-only, with no email, no placement change and no paid support, which is rarer than anyone expects. Staggered regional or channel pricing gives you a comparison group at the same moment in time, which removes seasonality entirely. And a deliberate small test on twenty SKUs with a matched holdout costs one quarter and produces something you can actually defend, which is the same rollout discipline described in the dynamic pricing guide.

The confounders that ruin naive estimates

Here is the core problem with observational elasticity, stated once. Your historical price changes were not random. You cut prices when demand was weak, when stock was heavy, when a competitor moved, or when marketing had a campaign to support. Every one of those reasons also moved demand. The regression cannot tell your price change apart from the reason for it, so it attributes both to price.

Confounders, what they do to the estimate, and the cheapest fix
ConfounderEffect on the estimateCheapest mitigation
Reverse causality: prices were cut because demand was already fallingPushes elasticity toward zero, and can flip the signExclude price changes that were triggered by weak sell-through, and record the trigger at the time
Promotion bundling: the cut arrived with email, homepage placement and paid spendOverstates elasticity, often severely. You measured the campaignUse only price-only changes, or model the promotional support explicitly as a separate variable
Competitor moves during the windowUnpredictable direction. A cut against a deeper competitor cut looks inelasticOverlay competitor price series on the same dates and drop contaminated windows
Seasonality and calendar eventsWhichever direction the season ran. Holiday weeks dominate everythingCompare against the same weeks last year, or use a same-period control group
Stockouts during the low-price periodUnderstates elasticity, because demand was truncated by supplyFlag any period with an availability gap and exclude it rather than adjusting it
Forward buying and pantry loadingOverstates the sustained effect. Units were pulled from future weeksMeasure over a window long enough to include the payback dip that follows
Cannibalisation across your own rangeOverstates elasticity at SKU level. The units came from your own shelfMeasure at category level as well as SKU level and compare the two
Search ranking and placement changesOverstates elasticity. Visibility rose at the same time as price fellTrack impressions or sessions per SKU alongside units, not just units
Thin data: a handful of units per weekProduces a confident number that is mostly noisePool across comparable SKUs, or accept that this product cannot be measured
Price thresholds and price endingsBreaks the constant-elasticity assumption. $99 and $101 are not two points on a smooth curveTest across thresholds deliberately rather than fitting through them

None of this makes elasticity useless. It makes it a prior rather than a measurement. Use it to rank which categories are worth testing, use the break-even calculation to decide whether a specific change could possibly pay, and use a holdout test to find out whether it did. That ordering is much more reliable than trying to extract a precise elasticity from data that was never generated to answer the question.

The competitor half of the picture matters too. A price change made while three competitors were also moving is not a clean observation of your own demand curve, which is why dated competitor series are a prerequisite for any of this, and why the rules described in repricing strategies mostly avoid depending on an elasticity estimate at all.

Work your own numbers

Run elasticity and the break-even volume calculation on your own price, cost and unit data, or see how dated competitor price history makes a price change interpretable in the first place.

Frequently asked questions

What is the price elasticity of demand formula?

Price elasticity of demand equals the percentage change in quantity demanded divided by the percentage change in price. The midpoint version divides each change by the average of the start and end values, so a price rise and the equivalent price fall give the same answer. The result is normally negative, and its magnitude is what matters.

How do you calculate price elasticity with an example?

Price falls from $199 to $179 and units rise from 420 to 520. Using midpoints, the quantity change is 100 divided by 470, or +21.28 percent. The price change is -20 divided by 189, or -10.58 percent. Dividing gives -2.01. Demand is elastic, because the magnitude exceeds 1.0.

What is the difference between elastic and inelastic demand?

Demand is elastic when the elasticity magnitude exceeds 1.0, meaning units move proportionally more than price, so a price cut raises revenue. Demand is inelastic between 0 and -1.0, meaning units barely respond and a price cut reduces revenue. At exactly -1.0 demand is unit elastic and the two changes roughly offset.

Does elastic demand mean a price cut is profitable?

No. Elasticity determines revenue, not profit. In the worked example, elasticity of -2.01 lifted revenue by $9,500 while total contribution fell $3,500, because each additional unit carried $20 less margin. Always pair the elasticity with the break-even volume calculation, which uses contribution margin and answers the profit question directly.

How do you calculate break-even volume for a price change?

Divide the old contribution margin per unit by the new one. At a $199 price, $130 cost and a cut to $179, the margin falls from $69 to $49, so you need 69 divided by 49, or 1.408 times the units: a 40.8 percent volume increase just to hold contribution flat. Run this before changing a price.

Can you estimate price elasticity without running a test?

Yes, usually by regressing the log of units on the log of price so the slope is the elasticity directly. You need three or four distinct price levels, several periods at each, and a record of what else changed. Treat the result as an order of magnitude, because historical price changes were made for reasons that also moved demand.

Why are elasticity estimates from historical sales data unreliable?

Because past price changes were not random. Prices were cut when demand was weak, when stock was heavy, when a competitor moved, or alongside a marketing campaign. Each of those also moved volume, and a regression credits all of it to price. Stockouts, forward buying, seasonality and cannibalisation add further bias in both directions.

Start monitoring in the next ten minutes

Connect your store, match your catalogue and get your first competitor comparison in the same session.

14 days, no credit card, cancel in one click.