Industrial Engineering & Operations Research

Inventory Turnover & DSI Calculator

Calculate your inventory turnover ratio, average stock holding, and Days Sales of Inventory (DSI / DIO) to optimize cash flow and warehouse efficiency.

Inventory Rotation Cycle

Working capital flow from inventory holding to cost realization and replacement

Beginning Stock$180,000Average Inventory$200,000DSI: 60.8 DaysEnding Stock$220,000Annual Velocity: 6.00 Turns / Period

Financial & Stock Inputs

Enter accounting values for the analyzed duration.

$

Total manufacturing or wholesale purchasing cost.

$

Stock value at the start of the timeframe.

$

Stock value at the end of the timeframe.

days

Days in the accounting period.

days

Maximum acceptable days to hold inventory.

Operations Tip

Always use COGS rather than total sales revenue. Total sales include retail markup, which artificially inflates turnover calculations.

Inventory Turnover Ratio

6.00turns / period

Days Sales of Inventory (DSI)

60.8 days

Average Inventory

$200,000

SLOW ROTATION — Holding days exceed target benchmark

Current inventory takes 60.8 days to rotate versus your operational target of 60 days.

Governing Mathematical Formulas

Turnover Ratio = COGS / ((Beginning Inv + Ending Inv) / 2)
DSI (DIO) = (Average Inventory / COGS) × Period Days
Turnover Ratioturns

Number of times inventory is sold/replaced

DSI / DIOdays

Average days required to clear inventory

COGS$

Cost of Goods Sold (Direct Costs)

Avg Inventory$

Mean capital tied in warehouse stock

Period Daysdays

Days in analyzed cycle (365, 90, 30)

Analysis Assumptions

  • Consistent inventory valuation (e.g., FIFO)
  • Cost of Goods Sold reflects true costs
  • Non-negative ending inventory
  • Stable seasonal fluctuations
  • Representative beginning/ending snapshots
  • Uniform distribution across period days

Operations & Analytics Code

Automate turnover analysis in your data pipeline or ERP reporting.

Python
def calculate_inventory_turnover(cogs, beg_inv, end_inv, days=365):
    """
    Calculate Inventory Turnover Ratio and Days Sales of Inventory (DSI).
    """
    avg_inventory = (beg_inv + end_inv) / 2.0
    if avg_inventory <= 0:
        raise ValueError("Average inventory must be greater than zero.")
        
    turnover_ratio = cogs / avg_inventory
    dsi = (avg_inventory / cogs) * days
    
    return turnover_ratio, dsi, avg_inventory

# Inputs
COGS = 1200000
Beginning_Inv = 180000
Ending_Inv = 220000
Period_Days = 365

turns, dsi_days, avg_inv = calculate_inventory_turnover(COGS, Beginning_Inv, Ending_Inv, Period_Days)

print(f"Average Inventory: ${avg_inv:,.2f}")
print(f"Inventory Turnover: {turns:.2f} turns")
print(f"Days Sales of Inventory (DSI): {dsi_days:.1f} days")
MATLAB
function [turnover_ratio, dsi, avg_inventory] = calculate_inventory_turnover(cogs, beg_inv, end_inv, days)
    % Calculate Inventory Turnover & DSI
    avg_inventory = (beg_inv + end_inv) / 2;
    turnover_ratio = cogs / avg_inventory;
    dsi = (avg_inventory / cogs) * days;
end

% Example
COGS = 1200000;
Beginning_Inv = 180000;
Ending_Inv = 220000;
Period_Days = 365;

[turns, dsi_days, avg_inv] = calculate_inventory_turnover(COGS, Beginning_Inv, Ending_Inv, Period_Days);
fprintf('Inventory Turnover: %.2f turns\n', turns);
fprintf('DSI: %.1f days\n', dsi_days);
Excel Formula
=COGS / ((Beg_Inv + End_Inv) / 2)

Example Calculation

A manufacturing company reports an annual COGS of $1,200,000. Their inventory was valued at $180,000 at the start of the year and $220,000 at year-end across a 365-day period:

Average Inventory = ($180,000 + $220,000) / 2 = $200,000
Turnover Ratio = $1,200,000 / $200,000 = 6.00 turns/year
DSI (Days to Sell) = 365 / 6.00 = 60.83 Days

Technical Explanation: Inventory Velocity & Cash Conversion

Inventory turnover is a fundamental operational KPI that measures how many times an organization sells and replaces its stock over a defined timeframe. A higher turnover implies robust sales, efficient procurement, and minimal capital trapped in dead stock.

Complementing the turnover ratio, Days Sales of Inventory (DSI)—also known as Days Inventory Outstanding (DIO)—converts this velocity into the direct time required to deplete current warehouse holdings.

How to Use This Calculator

  1. Cost of Goods Sold (COGS): Enter total direct material, labor, and allocated overhead costs for the period.
  2. Beginning Inventory: Stock valuation at the start of the timeframe.
  3. Ending Inventory: Stock valuation at the conclusion of the timeframe.
  4. Period Length: Choose 365 days (annual), 90 days (quarterly), 30 days (monthly), or enter custom days.
  5. Benchmark Comparison: Compare your DSI to industry target metrics to evaluate working capital health.

High vs. Low Turnover: Finding the Equilibrium

While high turnover typically signifies lean operations, excessively high turnover might indicate inadequate safety stock, risking stockouts and lost revenue. Conversely, low turnover indicates excessive carrying costs, risk of component obsolescence, and tied-up liquidity.

Real-World Engineering Cases

Zara (Inditex) Fast-Fashion Agile Inventory

Inditex pioneered ultra-fast inventory cycles, achieving an inventory turnover ratio exceeding 12x per year (DSI ~30 days), compared to the traditional retail apparel average of 3x to 4x (DSI ~90-120 days).

Engineering Lesson

Frequent small-batch production drastically reduces unsold markdown losses and minimizes working capital requirements, proving that high turnover directly correlates with corporate profitability.

Post-Pandemic Retail Bullwhip & Inventory Glut (2022)

Major global retailers over-ordered durable goods during shipping delays. When consumer habits rapidly shifted, inventory turnover dropped by more than 35%, causing warehouse capacity crises and forced deep-discount liquidations.

Engineering Lesson

Monitoring turnover on monthly rolling periods rather than annual retrospective reviews enables early detection of demand slowdowns before holding costs erode operating margins.

Frequently Asked Questions

What is the formula for Inventory Turnover?

Turnover Ratio = COGS / Average Inventory. Where Average Inventory = (Beginning Inventory + Ending Inventory) / 2.

What does Days Sales of Inventory (DSI / DIO) tell you?

DSI indicates how many days on average your company takes to turn inventory into completed sales. Lower DSI means faster cash recovery.

Can I calculate turnover for a single quarter or month?

Yes. Simply input the COGS and inventory numbers for that specific timeframe, and adjust the period days setting to 90 (quarter) or 30 (month).

What is the difference between DSI and Cash Conversion Cycle (CCC)?

DSI is one component of the CCC. CCC combines DSI (Days Inventory Outstanding) + DSO (Days Sales Outstanding) - DPO (Days Payables Outstanding) to measure the complete cash cycle.

Inventory metrics are sensitive to inventory valuation methods (FIFO, LIFO, Weighted Average). Ensure consistent accounting valuation standards when tracking turnover trends over successive periods.