Dynamic Pricing Optimisation
Pricing that moves on measured elasticity rather than on instinct, inside guardrails you set, tested by controlled experiment before a single price changes at scale.
Pricing is the highest-leverage number in most businesses and the one most often set by habit. It is also the area where an unconstrained model can do the most damage fastest, because a pricing error is visible to every customer simultaneously and, in some markets, to a regulator.
Dynamic pricing optimisation is the systematic setting of prices using measured demand response, inventory position, competitive context and business constraints, delivered through a model that recommends or sets prices within explicit guardrails and is validated by controlled experiment rather than by simulation alone.
Elasticity has to be measured, not assumed
The central quantity is how demand responds to price, and it cannot be reliably read from historical data alone. Your past prices were not random: you discounted when demand was weak and held firm when it was strong, which makes naive elasticity estimates systematically wrong, often with the sign reversed.
Getting this right requires either historical price variation that was genuinely independent of demand, or deliberate experimentation. We assess which you have in the first fortnight, and where the answer is neither, the first milestone is a structured price test rather than a model.
Cannibalisation and cross-effects are where margin leaks
Changing one product's price moves demand for its substitutes and complements. Optimising items independently produces a set of individually sensible prices that damage the basket. Cross-price effects are modelled explicitly, and they are the reason category-level thinking beats item-level optimisation.
Guardrails come before optimisation
Before any model recommends a price, the constraints are agreed in writing and enforced in code:
- Floors and ceilings per product, absolute and relative to cost.
- Maximum change per period, so prices move at a rate customers can absorb.
- Relative consistency across pack sizes, bundles and channels, so the range still makes sense to a shopper.
- Contractual commitments, most-favoured-nation clauses and promotional pricing already advertised.
- Regulatory and fairness limits, including any category where price variation between customers is prohibited or reputationally unacceptable.
These constraints are not obstacles to the optimisation; they are part of its definition, and a system that treats them as post-processing will eventually breach one.
How we build it
Elasticity by segment and context
Response differs by product, channel, customer segment, season and inventory position. We estimate at the level the data supports and pool where it does not, rather than producing confident per-item elasticities from three observations.
Optimise for the objective you can defend
Revenue, margin, volume or sell-through by a date are different objectives producing different prices. Most businesses want a blend with constraints, and making the weights explicit is a commercial decision we facilitate rather than assume.
Recommend before you automate
The first release proposes prices to a commercial team who accept, adjust or reject with a reason. Those decisions are the fastest route to a system people trust, and they surface constraints nobody had written down. Automation follows for the categories where agreement is consistently high.
Test in controlled experiments
Matched stores, regions or product groups, with a holdout, run long enough to see the effect on the whole basket rather than on the changed item alone. Simulation informs the design; the experiment decides whether it ships.
Watch for the failure modes
Monitoring for oscillation, for competitor-following loops, for prices that drift toward a boundary and sit there, and for any customer-visible inconsistency across channels. Pricing systems fail publicly, so the alerting is tuned to catch anomalies within a pricing cycle rather than at the month-end review.
Competition law and fairness
This is the area where we most often recommend involving your legal team from week one rather than at the end:
- Algorithmic pricing that responds to competitors' prices can raise competition concerns in some markets, particularly where signalling or tacit coordination could be inferred.
- Personalised pricing between individual consumers is restricted or prohibited in several jurisdictions and is reputationally hazardous almost everywhere.
- Essential goods, regulated sectors and periods of shortage attract specific rules and considerable public attention.
- Pricing that correlates with a protected characteristic, even unintentionally through a proxy, is a discrimination risk and needs testing.
We design so that the reasoning behind every price is recorded and reviewable, which is what makes any of these questions answerable later.
How the engagement runs
Guardrails and legal review come first, elasticity is measured, and experiments decide what ships.
Data, guardrails and legal review
Price and transaction history assessed for usable variation, constraints written down, legal and fairness boundaries agreed.
Elasticity estimation
Demand response estimated by segment and context, cross-price and cannibalisation effects modelled, uncertainty reported.
Optimisation and recommendations
Objective and weights agreed, optimiser built inside the guardrails, recommendations surfaced to the commercial team with reasoning.
Controlled experiment
Matched groups with a holdout, run to a conclusion on basket-level effect rather than item-level uplift.
Rollout and handover
Graduated rollout by category, monitoring for oscillation and boundary drift, handover with the price decision log.
What you receive
Prices you can defend commercially and legally, with the experiment that justifies them.
Elasticity estimates
Demand response by product, segment and context, with confidence and the method behind it.
Guardrail specification
Floors, ceilings, change limits, consistency rules and regulatory constraints, enforced in code.
Pricing engine
Optimiser producing recommendations or prices within the guardrails, deployed as code.
Experiment results
Controlled test design and outcome measured on basket-level revenue and margin.
Decision log
Every recommendation, the reasoning, and whether it was accepted, adjusted or rejected.
Monitoring
Oscillation, boundary drift, competitor-following and cross-channel consistency alerts.
Is this the right engagement?
Worth being direct. Dynamic Pricing Optimisation is the wrong spend in some situations, and those are listed rather than buried.
Good fit if
- Prices are set by habit or by a spreadsheet and rarely revisited.
- You have price and transaction history with some genuine variation, or can run tests.
- Commercial owners will review recommendations before automation.
- Legal can engage early on competition and fairness constraints.
- You can run a controlled experiment across stores, regions or product groups.
Choose something else if
- Prices are contractually fixed or centrally regulated.
- There is no price variation in history and no appetite to test.
- The category is one where price variation between customers is unacceptable.
- Nobody will own the commercial trade-offs the optimiser exposes.
Frequently asked questions
Marked up with FAQPage schema so these answers can surface directly in search results and inside AI assistant responses.
How do you measure price elasticity if our prices rarely change?
Either from historical variation that was genuinely independent of demand, which is rarer than teams assume, or from deliberate experiments. Where neither exists, the first milestone is a structured price test rather than a model, because an elasticity estimate from confounded history is frequently wrong in sign as well as magnitude.
Is dynamic pricing legal?
Varying prices over time by demand and inventory is normal commercial practice in most markets. Personalised pricing between individual consumers is restricted in several jurisdictions, and algorithmic responses to competitors' prices can raise competition concerns. We involve your legal team in week one and record the reasoning behind every price so the questions are answerable later.
Will the model set prices automatically?
Not at first. The initial release recommends prices to a commercial team who accept, adjust or reject with a reason, which builds trust and surfaces constraints nobody had written down. Automation follows for categories where agreement is consistently high, still inside the guardrails.
How do you stop it damaging the wider basket?
By modelling cross-price and cannibalisation effects explicitly and by measuring experiments on basket-level revenue and margin rather than on the changed item. Independently optimised items produce individually sensible prices that can reduce category profit.
How long before we see results?
Ten to sixteen weeks, of which several are a controlled experiment run long enough to reach a defensible conclusion. Pricing is the wrong area in which to accept a simulated result, because the cost of being wrong is visible to every customer at once.
Often paired with this
Most clients combine two or three engagements from the Machine Learning & Predictive Analytics pillar. These are the ones that most often run immediately before or after.
Demand and Sales Forecasting
SKU and location level forecasts with promotions, seasonality and hierarchy handled, measured where error costs money.
Read more →Optimisation and Operations Research
Scheduling, routing and allocation solved against your real constraints, with solutions planners will actually run.
Read more →Recommendation Engine Development
Recommenders tuned to a business objective, with cold start, diversity and rules handled, proven by A/B test.
Read more →Is this the right engagement?
Tell us what you are trying to build. If a different service fits better, or if you do not need us at all, we will say so.