Price Elasticity Modelling: How Much Can You Raise Prices
Last updated:
The question behind every price rise
Costs went up, margins shrank and somebody has to decide whether to raise prices by 4% or 9%. The fear is always volume: raise too far and customers leave, too little and the margin problem stays.
Most businesses answer this by gut feel and by watching competitors. Price elasticity modelling tries to answer it from your own data. Sometimes it can. Often the honest answer is that your history does not contain the information needed, and a different approach is safer.
What price elasticity means in practice
Elasticity is the percentage change in quantity sold for a one percent change in price. An elasticity of -0.5 means a 10% price rise reduces volume by about 5%, so revenue goes up. An elasticity of -2 means the same rise cuts volume by about 20%, and revenue falls.
What matters for a business is profit, not revenue. A product with healthy margin can lose some volume to a price rise and still make more money. A worked illustration: a product sells 1,000 units a month at 20 pounds with an 8 pound margin, making 8,000 pounds. Raise the price 10% to 22 pounds and the margin becomes 10 pounds. Even if elasticity of -1.5 cuts volume by 15% to 850 units, profit rises to 8,500 pounds. That arithmetic is the whole point of the exercise, and many businesses never do it.
Why history is a weak teacher for pricing
The tempting approach is to feed two years of sales and prices into a model and read off the elasticity. It usually misleads, for predictable reasons.
- Prices rarely moved. If a product sat at one price for 18 months, there is nothing to learn from.
- Prices moved for a reason. Discounts ran when demand was weak and prices rose when costs rose. The model confuses the cause with the effect.
- Promotions dominate. A 30% promotion with in-store display and email support measures the campaign, not the price.
- Competitors moved too. Your price rise alongside everyone else's tells you little about a rise on your own.
- Stock-outs. Lost sales during stock-outs look like price sensitivity if they coincide with price changes.
Statistical techniques exist to deal with some of this, and a good model will control for seasonality, promotions and competitor prices where that data exists. But no technique creates information that was never there. We say this bluntly because vendors of dynamic pricing tools do not always.
When a model can be trusted
| Situation | Model reliability |
|---|---|
| Online retailer with frequent, varied price changes across many SKUs | Good, especially across similar products |
| Business that ran deliberate regional or channel price differences | Good for the tested range |
| B2B with negotiated prices per customer | Moderate, if discount levels vary and win or loss is recorded |
| Stable price list with an annual rise across everything | Poor, too little variation |
| Brand-new product | Not possible from its own data |
Pooling helps. Individual products may have little variation, but a model estimating elasticity for a whole category, adjusted by product attributes, can learn from price moves across hundreds of lines. That is where machine learning is genuinely useful in pricing work.
The alternative: test instead of model
For most SMEs, a controlled price test gives a cleaner answer than any model on historic data.
- Choose a group of products, regions or new customers large enough to measure
- Randomly split them: some get the new price, a comparable group keeps the old one
- Run the test for long enough to cover a normal buying cycle, not just the first week
- Measure units, revenue, margin and, for repeat businesses, retention or reorder rates
- Roll out, adjust or reverse based on the result
Tests have limits. Customers talk, marketplaces show prices publicly and in some sectors differential pricing creates legal or reputational problems, so design matters. Where testing is possible, though, it answers the causal question directly. Our post on making pricing changes without churn covers the customer communication side.
What a price elasticity project looks like
At SpiderHunts we start by checking whether the history contains usable price variation. That takes a few days and sometimes ends the project, which is a fine outcome. If it does, the next step is a category-level elasticity model controlling for promotion, season and stock, back-tested against past price changes that the model did not see.
The deliverable is a simple tool: pick a product or category, enter a proposed price, see the expected change in volume and profit with a range. Our machine learning team puts as much effort into that range as the central estimate, because false precision in pricing is expensive.
Where businesses get it wrong
The biggest mistake is ignoring the long-term effect. Elasticity measured over four weeks misses customers who quietly move a share of their spending to a competitor over six months, which is common in subscription and B2B supply. The second is treating one elasticity as fixed; sensitivity changes with economic conditions, season and what competitors are doing. Refresh the estimate, and treat every price change as another data point rather than a final answer.
Frequently asked questions
How do you calculate price elasticity of demand from sales data?
Can machine learning set our prices automatically?
How much data do you need for price elasticity modelling?
Is price elasticity the same for all customers?
Planning a price rise and nervous about volume?
Send us your sales and price history for the products in question. We will tell you whether there is enough price variation in it to estimate elasticity, or whether a test is the safer route.