ADI and CV2 Demand Classification Calculator (Smooth, Erratic, Intermittent, Lumpy)
Not every item should be forecast the same way. The ADI and CV2 scheme sorts items into four demand classes using how often demand occurs and how variable the order sizes are. This calculator gives the class from a few counts you can pull from any ERP.
Your numbers
Count of months or weeks in the history you are classifying.
Number of those periods where demand was above zero.
Average quantity in the periods that had demand.
Standard deviation of the non-zero demand quantities.
Your results
The cut-offs 1.32 and 0.49 come from published work by Syntetos and Boylan and are guidelines. Test the suggested method against a naive forecast on your own data.
ADI as demand periods increase (36 period history)
Sweeps Periods with demand from 1 to 36, holding your other inputs fixed.
Classify every item automatically
Want ADI and CV2 computed for all items from your ERP history? Ask for an optional expert review.
Optional. The tool and every export work without this. No spam.
How to use the calculator
For each item, count the periods in the history and the periods with demand above zero. Then take the mean and standard deviation of the demand quantity in only those non-zero periods. Enter the four numbers. The class code tells you which family of methods fits. Repeat per item in a spreadsheet using the same formulas, or ask your planning team to add the class as an item attribute.
The method and cut-offs
ADI is total periods divided by periods with demand. CV2 is the squared ratio of the standard deviation to the mean of non-zero sizes. Using the Syntetos-Boylan cut-offs, ADI below 1.32 and CV2 below 0.49 is smooth, ADI below 1.32 with higher CV2 is erratic, ADI above 1.32 with CV2 below 0.49 is intermittent, and both high is lumpy.
- Smooth: SES, Holt, Holt-Winters
- Erratic: robust smoothing and larger safety stock
- Intermittent: Croston or SBA
- Lumpy: TSB, judgment, order-driven stocking
Worked example
A part has demand in 12 of 36 months. ADI is 36 divided by 12, which is 3.0. Non-zero sizes have a mean of 8 and a standard deviation of 5, so CV is 0.625 and CV2 is about 0.39. ADI is above 1.32 and CV2 is below 0.49, so the item is intermittent. Croston or SBA is the right family, and ordinary monthly smoothing is not.
Common mistakes
The most common error is computing the standard deviation over all periods including zeros, which mixes occurrence with size. Use only non-zero periods. Another is classifying on too short a history. With fewer than about 20 periods, a single order can flip the class. Reclassify each quarter, because items move between classes.
Frequently Asked Questions
What does ADI mean in forecasting?
ADI is the average demand interval: total periods divided by the number of periods with demand. A value of 1 means demand every period, and a value of 3 means demand roughly every third period.
What is CV2 and why squared?
CV2 is the squared coefficient of variation of the non-zero demand sizes. Squaring is how the published classification scheme defines its cut-off of 0.49, which corresponds to a coefficient of variation of 0.7.
Which forecast method suits lumpy demand?
Lumpy demand is hard for any statistical method. TSB, judgment based on known customers and contracts, and stocking policies based on service levels and order history usually work better than a point forecast.
How often should I reclassify items?
Quarterly is a sensible cycle. Reclassify sooner after a customer win or loss or a product change, because the occurrence pattern and order size can shift quickly.
If you need this class stored on every item and refreshed from live demand history, Netray can build it on your ERP data and keep it current.
Related Tools
Statistical Forecast Methods Reference Guide
A searchable table of forecast methods with the demand pattern each suits, the data needed, key parameters and typical pitfalls.
Supply Chain & InventoryForecast Error Metrics Reference (MAPE, WMAPE, RMSE and more)
A searchable lookup of the common forecast accuracy and bias metrics, their formulas, how to read them and where each one misleads.
Developer ToolsSQL Monthly Demand History Query Generator
Generate SQL that turns order or shipment lines into a clean monthly demand history per item, with gap months filled with zero.
Developer ToolsPython Holt-Winters Forecast Script Generator
Generate a short Python script that fits Holt-Winters to monthly demand, tests it on a holdout against a naive baseline and writes the forecast to CSV.
More Supply Chain & Inventory tools
See all- Oracle Fusion Inventory Turns and Carrying Cost Calculator
- Distribution ERP Fill Rate Calculator
- Distributor Rebate Tracking Worksheet
- Branch Transfer Planning Worksheet
- Distributor Slow-Moving Inventory Review Worksheet
- Distributor Vendor Performance Scorecard Worksheet
- Distributor GMROI Calculator
- Distributor Backorder Cost and Fill Rate Calculator
- EOQ with Vendor Minimum Order Calculator