# Inventory turnover ratio and GMROI for hardware stores > https://rundoo.ai/insights/inventory-turnover-ratio-and-gmroi-for-hardware-stores/ [Insights](/insights/index.md) /Product Product # Inventory turnover ratio and GMROI for hardware stores How to calculate inventory turnover and GMROI with a worked example, why turns differ so much between fasteners, power tools, and seasonal, and why GMROI is the better lens for a supply store. [![Titus Capilnean](https://pub-5247264bd04e4ebeaecbbedb3bebb9f8.r2.dev/static/images/articles/titus-capilnean.jpeg)](https://www.linkedin.com/in/tituscapilnean/) [Titus Capilnean](https://www.linkedin.com/in/tituscapilnean/), Head of Marketing September 25, 2026 Last updated September 29, 2026 Inventory turnover is your cost of goods sold for a period divided by your average inventory at cost for that same period. That single piece of division tells you how many times a year the money sitting on your shelves comes back through the register, which makes it the cleanest measure of how hard your inventory is working, and its sibling GMROI tells you how much that money earned while it was out. If you have been to a buying market or a co-op meeting in the last twenty years, you have heard "turns" more times than you have heard "freight surcharge," and that is saying something. The trouble is that one storewide turn number hides nearly everything worth knowing, because a supply store is five or six businesses sharing a roof and a coffee pot: fasteners that crawl off the shelf but earn fat margins, power tools that fly out the door on thin ones, a lawn and garden department that looks like a gold mine in May and a ghost town in November, and a plumbing repair wall that exists so the contractor with a burst pipe walks in at 7 a.m. instead of driving to the big box. ## The inventory turnover formula **Inventory turnover = cost of goods sold for the period / average inventory at cost for the same period.** Two details in that sentence matter more than people expect. Use cost, not retail, because mixing retail sales against cost inventory inflates your turns and gives you a number that feels good and means little, and keep the period the same on top and bottom, because annual cost of goods sold against a January snapshot of inventory is not a ratio so much as a guess with extra steps. Say your store did $1,800,000 in cost of goods sold last year. Your inventory at cost was $700,000 on January 1 and $620,000 on December 31, so your average inventory is ($700,000 + $620,000) / 2 = $660,000, and your turns are $1,800,000 / $660,000 = **2.73**. The average dollar you put into stock came back through the till a little under three times in the year. From there you can get days of inventory, sometimes called days on hand: **365 / annual turns**. For this illustrative store that is 365 / 2.73, or **about 134 days**, the average time a product sits between truck day and checkout. For some owners that lands harder than the turn number does, because "we carry 134 days of inventory" sounds like what it is: four and a half months of cash stacked on pallets and peg hooks. ## Measure average inventory correctly Here is where most storewide numbers go sideways. Averaging your January 1 and December 31 inventory works fine if your stock level is steady, but almost nobody's is: you build for spring, you build for the holidays, you build for paint season, and then you run lean in the off months, so two snapshots taken in the quiet season will flatter you like a funhouse mirror. Watch what happens with an illustrative lawn and garden department of fertilizer, grass seed, bagged soil, and hoses. Its cost of goods sold for the year is $117,000, and it holds $10,000 at cost on January 1 and $10,000 again on December 31. The two-point average of $10,000 produces 11.7 turns and a GMROI of 6.3, which would make it the best department in the store, maybe the best department in the state. The department peaks around $60,000 to $64,000 in April and May, though, and that spring build is real money tied up in real pallets. A better average uses 13 snapshots (the start of each month plus the end of the last month, added up and divided by 13), and run that way the average inventory is about $26,000, which gives **4.5 turns and a GMROI of 2.42**. That is still a good department and still worth every square foot, but it is not a miracle, and now you are planning cash flow off a true number instead of a flattering one. ## Why turns differ by department A storewide turn number averages away the only interesting parts. Here is an illustrative store, department by department, with sales, margin, inventory, turns, and GMROI side by side. | Department | Annual sales | Gross margin % | Gross margin $ | COGS | Avg inventory at cost | Turns | GMROI | | --- | --- | --- | --- | --- | --- | --- | --- | | Paint (tinted and sundries) | $300,000 | 45% | $135,000 | $165,000 | $40,000 | 4.1 | 3.38 | | Lawn & garden seasonal | $180,000 | 35% | $63,000 | $117,000 | $26,000 | 4.5 | 2.42 | | Fasteners (bulk bins) | $150,000 | 45% | $67,500 | $82,500 | $30,000 | 2.75 | 2.25 | | Power tools | $240,000 | 28% | $67,200 | $172,800 | $48,000 | 3.6 | 1.40 | | Plumbing repair parts | $200,000 | 42% | $84,000 | $116,000 | $70,000 | 1.66 | 1.20 | Read the power tools row against the fasteners row and the whole argument for department-level measurement makes itself. Power tools turn at 3.6, faster than fasteners at 2.75, so on turns alone the tool aisle looks like the better performer, yet power tools earn $1.40 of gross margin per inventory dollar while fasteners earn $2.25, because bulk fasteners carry a healthy margin and sit there patiently earning it, bin by bin, all year long. The fastener wall is the tortoise that pays the rent. Lawn and garden posts the fastest turns in the store, and even that number depends on measuring average inventory the right way, as the last section showed. Plumbing repair parts come in lowest on both measures, and they are also the reason a homeowner with water coming through the ceiling or a contractor on a rough-in deadline walks through your door instead of someone else's, so for a department like that the right question is depth (how many of each fitting you keep) rather than whether to carry the category at all. Paint deserves a note of its own, because paint inventory is a matrix of bases, sheens, and sizes, and turns by department will not tell you which gallon base is doing the work. We wrote a separate piece on [paint inventory by base, sheen, and size](/insights/paint-inventory-by-base-sheen-size/) for that reason. ## GMROI: the better lens GMROI stands for gross margin return on inventory investment, and the formula is **gross margin dollars / average inventory at cost** (the [Wikipedia entry](https://en.wikipedia.org/wiki/Gross_margin_return_on_inventory_investment) covers the background). It reads as dollars of gross margin earned per dollar of inventory, per year, so a GMROI of 2.25 means every dollar tied up in that inventory brought back $2.25 in gross margin over the year, before labor, rent, and the rest of the bills. The useful way to think about it is the old merchant's phrase "turn and earn," because GMROI also equals **gross margin % x (sales / average inventory at cost)**. Those two routes to the same number explain why fasteners and power tools can both be legitimate businesses: you can earn your return with fat margins on slow movers or thin margins on fast ones. Check it against the paint row, where 45% x ($300,000 / $40,000) = 3.38, the same answer by a different path, and it shows you the two levers you have to work with, price and velocity. This is why chasing turns alone is dangerous. The fastest way to raise a turn number is to stop carrying the slow stuff, and the slow stuff in a supply store is usually the high-margin, high-trust stuff: the odd plumbing fitting, the full fastener selection, the specialty item nobody else in town stocks. Cut those and your turns look better right up until your contractors notice you have become a store that never has what they need. Turns tell you how fast the money comes back and GMROI tells you how much it earned while it was out, and if you only get to watch one at the department level, watch GMROI. ## What the benchmarks say The benchmark worth comparing against is the North American Hardware and Paint Association's annual [Cost of Doing Business Study](https://yournhpa.org/research/cost-of-doing-business-study/), which publishes financial ratios, including inventory turnover and GMROI, broken out for independent hardware stores, home centers, lumber and building material outlets, and paint and decorating outlets. It is a paid report rather than a free download, and the breakout by store type is the whole point, because a paint and decorating outlet and a lumberyard are running different races on the same track. The recent public headlines from the study are worth knowing. In Hardware Retailing's highlights of the 2025 study (September 30, 2025), home centers posted inventory turnover of 2.0 and sales per inventory of 2.9, [the lowest levels ever recorded](https://hardwareretailing.com/staying-on-par-highlights-from-the-2025-cost-of-doing-business-study/). The year before, the 2024 study highlights (September 16, 2024) reported that for home centers, inventory turnover, sales to inventory, and GMROI were [all the lowest since 2013](https://hardwareretailing.com/you-need-this-tool-2024-cost-of-doing-business-study/). Those figures describe home centers rather than every store type, so if your own turns have drifted down, treat them as context rather than comfort. Compare yourself fairly, though. Match against your own store type rather than the industry as a whole, because a store carrying lumber priced by the thousand board feet or running a big seasonal program will look nothing like a pure hardware mix, and remember that the most useful comparison of all is your own departments against themselves, year over year, measured the same way each time. ## Using the numbers without gutting the store Once you have turns and GMROI by department, the moves that raise GMROI fall into a short list. Buy closer to need so average inventory drops while sales hold, and fix pricing on low-margin fast movers, where a point or two of margin changes the GMROI math more than any buying trick. Trim depth on slow, high-margin lines while keeping breadth, so the contractor still finds the oddball fitting but you stop stocking six of it, and flag the true dead lines, the ones with no turns and no strategic reason to exist. Each of those is a craft of its own, so we will hand you off rather than teach them here. Clearing [dead stock](/insights/dead-stock-how-to-find-and-clear-it/index.md) has its own playbook, order timing is covered in the [reorder point and safety stock formula](/insights/reorder-point-and-safety-stock-formula/index.md) article, and none of the numbers in this piece are better than the counts underneath them, which is where a steady [cycle counting](/insights/cycle-counting-for-retail-stores/index.md) habit comes in. Shrink and sloppy receiving quietly wreck both formulas, since bad inventory data produces bad turns with great confidence. ## How Rundoo handles it In Rundoo, every product's detail page shows units sold, margin, and stock turns right above its transaction history, so the math in this article is visible at the item level without exporting anything. Custom reports include an Inventory dataset with columns like on-hand value, annual turns, last sale date, and annual units sold, which you can group by location, department, and vendor and save for the next time you want it. [Dooey](/product/save-time-effort-with-ai/index.md), the AI on every screen, answers questions from your store's own numbers in plain language, so asking "What is my inventory value by department?" or asking for margin by vendor gets you the two inputs to GMROI without a spreadsheet detour, and the division is yours to do. Because receiving a purchase order updates stock and costs as it happens, the counter, the buyer, and the owner all work from the same real-time inventory, and when it is time to reorder, Dooey can draft a purchase order from actual inventory turns and your real sales history. The [pricing and purchasing](/product/manage-pricing-purchasing/index.md) page covers that side of the system. Share Topics [Product](/insights/index.md#product) [← All insights](/insights/index.md) ## Frequently asked questions What is a good inventory turnover ratio for a hardware store? There is no single good number, because hardware stores, home centers, lumber and building material outlets, and paint and decorating stores run different mixes and post different ratios. The NHPA [Cost of Doing Business Study](https://yournhpa.org/research/cost-of-doing-business-study/) publishes turnover and GMROI benchmarks broken out by store type, which is the comparison that means something, and your own departments measured the same way year over year will tell you more than any industry average. Should I calculate inventory turnover at cost or at retail? Use cost for the inventory side of both formulas, every time. Cost of goods sold is already at cost, so a cost-based inventory figure keeps the ratio honest, while an inventory valued at retail inflates your turns and tells you a story you will enjoy hearing and regret believing. What is the difference between inventory turnover and GMROI? Turnover measures speed, meaning how many times your inventory investment cycles through in a year. GMROI measures return, meaning how many gross margin dollars each inventory dollar earned while it was out, so a department can turn slowly and still be a strong performer if its margins are fat, which is why you want both numbers on the same page. How often should I measure turns and GMROI? Annually at minimum, using 13 monthly inventory snapshots for the average rather than two year-end points, especially if you carry a seasonal program. Quarterly or monthly reads help you spot a department drifting, but judge the trend on full-year numbers so seasonality does not send you chasing ghosts. ## Find out what Rundoo can do for your business Learn how Rundoo can help you save time, money and hassle running your business. [Book a demo](/signup/index.md) ! ## See Rundoo in action [Product ### Tour the platform POS, inventory, payments, and AI for independent supply stores, in one system.](/product/index.md) [Customers ### Read customer stories See how real paint, hardware, farm, garden, and lumber stores run on Rundoo.](/clients/index.md) ## Keep reading [![The best POS systems for lumber yards in 2026](https://pub-5247264bd04e4ebeaecbbedb3bebb9f8.r2.dev/static/images/articles/best-pos-for-lumber-yards-thumb.png) Product ### The best POS systems for lumber yards in 2026 A buyer's guide to lumber yard POS systems in 2026, from Epicor BisTrack, ECI Spruce, and DMSi Agility to Flitch, GenetiQ, and Rundoo, with a plain answer on which kind of yard each one fits.](/insights/best-pos-for-lumber-yards/index.md) [![Board foot calculator: how to calculate board feet](https://pub-5247264bd04e4ebeaecbbedb3bebb9f8.r2.dev/static/images/articles/board-foot-calculator-thumb.png) Product ### Board foot calculator: how to calculate board feet A working board foot calculator plus the formula with examples you can check, the nominal vs actual trap in softwood, the quarter-inch tally in hardwood, and how a lumber counter turns a price per thousand into a price per piece.](/insights/board-foot-calculator/index.md) [![BOPIS for independent stores: buy online, pick up in store](https://pub-5247264bd04e4ebeaecbbedb3bebb9f8.r2.dev/static/images/articles/buy-online-pick-up-in-store-for-independent-retailers-thumb.png) Product ### BOPIS for independent stores: buy online, pick up in store Buy online, pick up in store works for an independent hardware, garden, paint or feed store when the website reads the same live inventory the counter sells from, and the rest (staging, notifications, payment) is will-call process your team already knows.](/insights/buy-online-pick-up-in-store-for-independent-retailers/index.md)