Cellwise Start free

Excel guide · 5 min read

How to calculate inventory turnover in Excel

Quick answerInventory turnover is cost of goods sold divided by average inventory for the same period: =D2/AVERAGE(B2:C2), where B2 and C2 are the inventory at the start and end of the year at cost and D2 is the year's COGS. To turn it into days of inventory, divide the days in the period by the ratio: =H1/(D2/AVERAGE(B2:C2)), with 365 in H1.

Sample data

Every result on this page was calculated from this sheet by the same spreadsheet engine the Cellwise app uses.

ABCDEFGHIJK
1CategoryInventory Jan 1Inventory Dec 31COGS (year)Net salesDays in period365Quarter endInventory at cost
2Cookware4800052000210000365000Target turnover3Dec 31, 2024192000
3Knives220002600054000118000Mar 31, 2025176000
4Tableware350003100099000178000Jun 30, 2025188000
5Small appliances6000074000402000560000Sep 30, 2025310000
6Linens18000240003780081000Dec 31, 2025210000
7Gift sets9000300066000132000

Download this sheet as an Excel practice file (.xlsx)

The turnover formula: COGS / average inventory

Turnover answers "how many times did we sell through our average stock this year?". The top of the fraction is cost of goods sold, the bottom is the stock you were carrying, both valued at cost. The data here is a kitchenware shop's year by category: inventory on January 1 and December 31, the year's COGS and the year's net sales.

The simplest average inventory is the opening and closing balance added and halved, which is what AVERAGE(B2:C2) does. Cookware started at 48,000, ended at 52,000, so it carried 50,000 on average and sold 210,000 at cost through it.

=D2/AVERAGE(B2:C2)

Result: 4.2

4.2: cookware turned over 4.2 times. Filled down, knives turn 2.25, tableware 3, small appliances 6, linens 1.8 and gift sets 11.

Days of inventory (DIO)

Most people find days easier to act on than a ratio. Days inventory outstanding is the period's days divided by turnover, or the same thing written the other way round: average inventory divided by COGS, times the days.

Keep the number of days in an input cell (H1 here) rather than typing 365 into every formula. For a quarter, put that quarter's COGS, its opening and closing stock and its day count (90 to 92) in the same places, and every formula still works. Some companies use 360 days by convention; whatever you pick, use it every time so periods compare.

Knives come out at 162.2 days and linens at 202.8 days: the stock you buy today sits on the shelf for roughly five to seven months before it sells.

=ROUND(AVERAGE(B2:C2)/D2*$H$1,1)

Result: 86.9

86.9 days: cookware stock lasts just under three months on average.

Turnover for the whole store: sum first, then divide

For the total, add up COGS and the inventory balances, then divide. Do not average the six category ratios. AVERAGE(D2:D7/((B2:B7+C2:C7)/2)) gives 4.71, because the tiny gift-set line with its turnover of 11 counts as much as small appliances, which carry a third of the stock.

The correct figure weights each category by how much inventory it actually holds. The store as a whole works out to 84.4 days of inventory.

=SUM(D2:D7)/AVERAGE(SUM(B2:B7),SUM(C2:C7))

Result: 4.3223880597

4.32: total COGS of 868,800 over average inventory of 201,000.

Seasonal stock: average more than two balances

Opening plus closing, halved, is fine when stock levels are steady. A shop that builds stock before the holidays is not steady. Here the total stock jumped to 310,000 at the end of September, a peak that the January and December balances never see.

If you have month-end or quarter-end balances, average all of them. J2:K6 holds the five quarter-end totals, from the 2024 year-end through the 2025 year-end. Including both year-ends keeps the start and the end of the period in the average. Using only K2 and K6 gives back the 4.32 from the two-point method.

The result is lower, and the days rise from 84.4 to 90.4. That is the more honest figure: for part of the year you were carrying far more stock than the year-end snapshots show.

=SUM(D2:D7)/AVERAGE(K2:K6)

Result: 4.0371747212

About 4.04 turns, against 4.32 from the two year-end balances alone.

Flag slow movers against your own target

A "good" turnover depends entirely on what you sell, so there is no number to hard-code. Put your target in an input cell (H2 holds 3 here, an example, not a benchmark) and compare each line to it. Then you change one cell to rerun the whole review.

To list every slow category at once in Excel 365 or 2021, =FILTER(A2:A7,D2:D7/((B2:B7+C2:C7)/2)<$H$2) spills Knives and Linens, and =SUMPRODUCT(--(D2:D7/((B2:B7+C2:C7)/2)<$H$2)) counts them: 2.

Read a very high ratio with care too. Gift sets turn 11 times, but their stock fell from 9,000 to 3,000. A high turnover from running the shelf nearly empty can mean lost sales, not efficiency.

=IF(D3/AVERAGE(B3:C3)<$H$2,"Slow","OK")

Result: Slow

"Slow": knives turned 2.25 times, below the target of 3 in H2.

Which version to use

One product or category over a stable year: COGS over the average of opening and closing stock. Seasonal business or a big change in stock mid-year: average month-end or quarter-end balances. A total across categories: sum COGS and the balances first, never average the ratios. Talking to a buyer or planner: show days of inventory alongside the ratio, since "160 days" lands faster than "2.25".

For days of cover on individual SKUs from recent sales (how long current stock will last at today's sell rate), see the inventory formulas guide. That is a forward-looking figure; turnover and DIO look back over a whole period.

Common mistakes

Dividing sales by inventory

Sales include your margin, inventory is at cost. =E2/AVERAGE(B2:C2) gives 7.3 for cookware instead of 4.2. Use COGS, or if you must use sales, value inventory at retail too and say so.

Averaging each item's turnover for the total

That treats a small line the same as a big one. Sum COGS and inventory across the range first, then divide.

Mixing periods

A quarter's COGS divided by inventory and labeled annual understates turnover by about four times. Keep COGS, balances and the day count for the same period.

A #DIV/0! for a line with no stock

If both balances are 0, the average is 0 and Excel returns #DIV/0!. Wrap the formula in IFERROR(...,"No stock") or leave the line out of the review.

FAQ

What is the formula for inventory turnover in Excel?

=COGS/AVERAGE(opening,closing), for example =D2/AVERAGE(B2:C2). Both COGS and inventory should be at cost and cover the same period.

How do I calculate days in inventory in Excel?

Divide the days in the period by the turnover: =365/(D2/AVERAGE(B2:C2)). Keep 365 in an input cell so you can switch to a quarter or a 360-day convention.

What is a good inventory turnover ratio?

There is no universal number. Fresh food turns far faster than furniture or spare parts. Compare each line with its own history and with a target you set in an input cell, and watch for very high ratios caused by stockouts.

Can I calculate inventory turnover in units?

Yes: units sold divided by average units on hand. It avoids cost changes distorting the ratio, but you cannot add units of different products together for a store total, so use cost for totals.

How do I calculate monthly inventory turnover?

Use that month's COGS and the average of the month's opening and closing stock, and set days in period to the month's days. A monthly ratio is much smaller than an annual one, so do not compare the two directly.

Functions used

Related guides

Updated