Home » Knowledgebase » Here

EOQ is the purchase order quantity for replenishment that minimizes total inventory costs. The purchase order is triggered when the inventory level hits the reorder point. The EOQ is calculated in order to

The historical formula assumes that the cost of the

Thus, we propose here an EOQ formula variant that

- $Z$ be the lead demand.
- $H$ be the
*carrying cost*per unit for the duration of the lead time (1). - $\delta$ be the delta inventory quantity needed to reach the reorder point (2).
- $\mathcal{P}$ be the per unit purchase price, a function that depends on the order quantity $q$.

(1) The

(2) The delta quantity needs to take into account both the stock on hand $q_{hand}$ and the stock on order $q_{order}$, which gives the relationship $\delta = R - q_{hand} - q_{order}$ where $R$ is the reorder point. Intuitively, $\delta+1$ is the minimal quantity to be ordered in order to maintain the desired service level.

Then, the

Then, the inventory level is varying all the time, but if we consider strict minimal reorders (i.e. $q=\delta+1$) then, the average stock level over time is equal to $R$ the reorder point. Then, since we are precisely considering order quantity greater than $\delta+1$, those extra ordered quantities are shifting upward the average inventory level (and also postponing the time when the next reorder point will be hit).

The $(q-\delta-1)/2$ represents the inventory shift caused by the reorder assuming that the lead demand is evenly distributed for the duration of the lead time. The factor 1/2 is justified because an increased order quantity of N is only increasing the average inventory level of N/2.

A simple minimization for $C^*(q)$ consists of a (naive)

However, in practice, this computation can be vastly accelerated if we assume that $\mathcal{P}(q)$ is a

In practice, unit price rarely increases with quantities, yet, some local

In the Excel sheet attached here above, we are assuming the unit price to be strictly decreasing with the quantity. If it is not the case, then edit the macro *EoqVD()* to revert back to a naive range exploration.

- The ordering cost is flat.
- The rate of demand is known, and spread evenly throughout the year.
- The lead time is fixed.
- The purchase unit price is constant i.e. no discount is available.

Let's introduce the follow variables:

- $D_y$ be the annual demand quantity
- $S$ be the fixed
*flat*cost per order (not a*per unit*cost, but the cost associated to the operation of ordering and shipping). - $H_y$ the
*annual*holding cost.

Under those assumptions, the Wilson optimal EOQ is: $$Q=\sqrt{\frac{2D_yS}{H_y}}$$ In practice, we suggest to use a more

Get optimized sales forecasts with our inventory forecasting technology. Lokad specializes in inventory optimization through demand forecasting. Optimized replenishments - and much more - are native features of our forecasting engine.

- ABC analysis
- Backorders
- Business Drivers
- Container shipments
- Economic order quantity
- Fill Rate
- Financial impact of accuracy
- Inventory accuracy
- Inventory control
- Inventory costs (carrying costs)
- Inventory turnover
- Lead time
- Lead demand
- Min/Max Planning
- Minimal Order Quantities (MOQ)
- Multichannel Order Management
- Optimal service level formula
- Perpetual Inventory
- Phantom Inventory
- Prioritized Ordering
- Product life-cycle
- Reorder point
- Replenishment
- Safety stock
- Service level
- Stock-keeping unit (SKU)
- Stock Reward Function

- Backtesting
- Continous Ranked Probability Score
- Data preparation
- Forecasting accuracy
- Forecasting methods
- Obfuscation
- Overfitting
- Pinball loss function
- Probabilistic forecasting
- Quantile regression
- Seasonality
- Time-series

- Bundle Pricing
- Competitive Pricing
- Cost-Plus Pricing
- Decoy Pricing
- Long-term maintenance agreement pricing
- Long-term pricing strategies
- Odd Pricing
- Penetration Pricing
- Price Elasticity of Demand
- Price Skimming
- Repricing software (Repricer)
- Styling Prices for Retail