Price Optimization in Retail


Price Optimization in Retail

Goals and objectives

Price optimization is a crucial success factor for retail businesses. The following objectives were set to reach this goal:

  1. Extraction of historical sales data (receipts), information about goods and their display in a shop, discounts, promotional offers, and advertising campaigns.
  2. Calculation of the price elasticity of demand for goods and groups of goods given direct and indirect effects for different segments of customers, and the net promoter score.
  3. Management of business rules in pricing (minimum margin, maximum price change, package size, competitive prices, private brand, etc.)
  4. Sales projection given different scenarios that depend on a season, emerging trends and promotional offers.
  5. Performance of all-inclusive optimization to achieve target margin, revenue, amount of goods and competitive prices considering different types of business rules, such as corporate, category, and trade rules.


The solution to achieve set goals and objectives is to make a consumption model of high projection accuracy. The solution performs the following functions:

  1. Store sections / goods categories optimization.
  2. Using different business rules in optimization.
  3. Interactive, real-time calculations.
  4. Taking into account customer segmentation.
  5. Specifying the model through regular upload of sales information.
  6. Taking into account the impact of stock markets.
  7. Taking into account mutual influence within categories (including market cannibalization).
  8. Taking into account the influence of seasons and calendars.


The solution allows making high accuracy projections about the following economic indicators:

  1. Revenue, margin
  2. Physical sales volume (items, kilograms, etc.)

High accuracy of projections makes interaction with suppliers of goods, business competition, and plans for retail chain expansion more efficient.

The solution saves human resources and eliminates subjective evaluation along with loss (undercount) of data that are important for calculation goals.

Technology stack

  • Python
  • Java
  • Scala
  • Spark