Gross margin return on investment (GMROI) measures how much gross profit a retailer earns for every dollar invested in its inventory. The formula is: GMROI = Gross profit ÷ Average inventory cost
For example, a GMROI of 2 means the business earns $2 in gross margin for every $1 invested in inventory. It’s a helpful metric when retail profitability is a top priority. A Shopify survey from the fourth quarter of 2025 found 42% of store owners cited ensuring profitability as their top business goal.
This guide explains how to calculate GMROI and how to use it to make better inventory decisions.
What is GMROI?
GMROI shows how much gross profit a retailer earns against the cost of acquiring its inventory, holding it, and fulfilling orders. To calculate GMROI, divide gross profit by average inventory cost. Since inventory can be a large share of a retailer’s assets, GMROI helps show whether those products are generating enough profit.
By connecting inventory costs to sales performance, store owners can evaluate the profitability of their stock. For example, a slow-moving product may have a lower GMROI if it ties up inventory dollars without producing enough profit.
GMROI formula
GMROI is a calculation of how much gross profit a retailer earns for every dollar invested in its inventory. The formula is:
GMROI = Gross profit / Average inventory cost
Here’s a breakdown of each part of the formula.
Gross profit
Gross profit is calculated by subtracting the cost of goods (COGS) sold from revenue. The formula is:
Gross profit = Revenue - Cost of goods sold
COGS includes the direct costs tied to producing or purchasing the products sold.
Tracking gross performance numbers isn’t always standard practice. In Shopify’s fourth-quarter 2025 survey, less than half of store owners reported tracking profit margin, traffic, average order value, or conversion rate.
Average inventory cost
Average inventory cost is the value of inventory held over specific periods of time, measured at cost. It’s calculated by adding current inventory cost and previous inventory costs, then dividing by the number of periods. The formula is:
Average inventory cost = (Current inventory cost + Previous inventory costs) / Number of periods
For a full-year calculation, retailers can add the inventory costs at the beginning of each month, plus the ending inventory cost for December, then divide by 13.
See your entire product catalog’s gross profit, beginning and ending inventory cost, and more by viewing the gross profit by product report in Shopify admin.
How to calculate GMROI
Two common ways to calculate GMROI are the period-based method and annual method. Both use the same GMROI formula, but they calculate average inventory cost differently.
| Approach | Formula | When to use it |
|---|---|---|
| Period-based | Gross profit / [(Current inventory cost + Previous inventory costs) / Number of periods] |
|
| Annual | Gross profit / [(Beginning inventory cost for each month + Ending inventory cost for December) / 13) |
|
The period-based method gives a quick read based on the inventory values for a specific time frame. The annual method gives a fuller view by using monthly inventory values, which can include different buying cycles, seasonal demand, and changes in stock levels.
GMROI calculation example
Let’s say Sarah’s Family Clothing is calculating GMROI for the year using the following figures:
- Annual revenue: $400,000
- COGS: $75,000
- Total inventory cost for the year: $1,561,520
| Step | Formula | Calculation | Result |
|---|---|---|---|
| 1. Find gross profit | Revenue - COGS | $400,000 - $75,000 | $325,000 |
| 2. Find average inventory cost | Total inventory cost / 13 | $1,561,520 / 13 | $120,117 |
| 3. Find GMROI | Gross profit / Average inventory cost | $325,000 / $120,117 | $2.71 |
Sarah’s Family Clothing has a GMROI of $2.70. This means the business earns $2.70 in gross profit for every $1 invested in inventory.
Calculating GMROI in Excel and Google Sheets
GMROI can be calculated in Excel or Google Sheets with the same spreadsheet setup.
Using the period-based method, the gross profit formula subtracts COGS from revenue. The average inventory cost formula averages the current and previous inventory costs. The GMROI formula divides gross profit by average inventory cost.
| Cell | Input or calculation | Example value or formula |
|---|---|---|
| A1 | Revenue | $400,000 |
| A2 | COGS | $75,000 |
| A3 | Current inventory cost | $110,000 |
| A4 | Previous inventory costs | $130,000 |
| A5 | Number of periods | 2 |
| A6 | Gross profit | =A1-A2 |
| A7 | Average inventory cost | =(A3+A4)/A5 |
| A8 | GMROI | =A6/A7 |
For an annual GMROI calculation, use monthly inventory values instead of only current and previous inventory values. Add the beginning inventory cost for each month, plus the ending inventory cost for December, then divide by 13.
| Cell range | Input or calculation | Example formula |
|---|---|---|
| B2:B13 | Beginning inventory cost for each month | — |
| B14 | Ending inventory cost for December | — |
| B15 | Annual average inventory cost | =SUM(B2:B14)/13 |
| B16 | Annual GMROI | =Gross profit cell/B15 |
Why GMROI matters so much to retailers
Gross profit shows how much money remains after the cost of goods. GMROI adds inventory cost to that view. It helps retailers see how much gross profit their inventory is producing.
Understand profits on inventory
A storewide GMROI can hide differences by product or category. Sarah’s Family Clothing may have a total GMROI of $2.70, while T-shirts may have a GMROI of 92¢. That means the category earns 92¢ in gross profit for every $1 invested in inventory.
Sarah could review the unit cost first. She could also compare the retail price with demand. From there, she could reduce future inventory, adjust pricing, or create a sell-through plan.
Informed product decisions
IHL Group reported in 2025 that inventory distortion costs retailers around the globe $1.7 trillion annually. Inventory distortion is the combined cost of out-of-stocks and overstocks.
GMROI can help stores compare which products deserve more inventory dollars and which need a sell-through plan:
- A higher GMROI can support reordering or expanding a product.
- A lower GMROI can suggest smaller purchase orders, pricing changes, or markdowns are needed.
Compare GMROI by store, category, SKU, or variant. This shows which parts of the business generate the most gross profit for each dollar invested in inventory, and which may need pricing, purchasing, or merchandising changes.
What is a good GMROI for retail?
A GMROI above 1 means inventory generated more than $1 of gross margin for every $1 of average inventory at cost. For example, a GMROI of 2 means the business earned $2 in gross margin for every $1 invested in inventory.
What’s considered a good GMROI can depend on the type of retail business. A convenience store, clothing store, hardware store, and luxury retailer may all have different target ranges because they carry different products and sell through inventory at different rates.
Recent public company filings show how much GMROI can vary across retail models. The figures below are calculated as gross profit divided by average inventory, using fiscal-year inventory balances from original SEC filings.
| Retailer | Retail category | Gross profit | Average inventory | Calculated GMROI |
|---|---|---|---|---|
| Abercrombie & Fitch | Apparel | $3.17 billion | $522.2 million | 6.08 |
| FIGS | Health care apparel | $419.8 million | $121.9 million | 3.45 |
| Ulta Beauty | Beauty | $4.39 billion | $1.86 billion | 2.36 |
| The Home Depot | Home improvement | $54.87 billion | $24.63 billion | 2.23 |
| Best Buy | Consumer electronics | $9.37 billion | $5.16 billion | 1.82 |
GMROI needs context to be considered good. A higher GMROI may reflect stronger margins, faster inventory turnover, tighter inventory levels, or some combination of the three.
A lower GMROI may still be reasonable for a retailer with slower-moving products, larger seasonal buys, or a different selling model.
GMROI benchmarks and caveats
A good GMROI can depend on the type of products a retailer sells and how quickly those products move. Fast-moving categories may carry less inventory for each dollar of sales. Seasonal or slower-moving categories may carry more.
The US Census Bureau’s March 2026 Manufacturing and Trade Inventories and Sales report shows this difference through the inventories/sales ratio. This ratio compares inventory on hand with monthly sales.
Here’s how these ratios compared during that period.
| Retail category | March 2026 inventories/sales ratio |
|---|---|
| Food and beverage stores | 0.76 |
| General merchandise stores | 1.23 |
| Furniture, home furnishings, electronics, and appliance stores | 1.59 |
| Motor vehicle and parts dealers | 1.88 |
| Building materials, garden equipment, and supplies | 2.09 |
| Clothing and clothing accessories stores | 2.09 |
| Department stores | 2.61 |
These ratios show why GMROI should be compared against similar retail categories, not a universal retail target.
GMROI compares gross profit with average inventory at cost. If one category carries more inventory relative to sales than another, its GMROI target may look different, too.
Use peer data as a reference point, then compare GMROI against your own historical results.
How to improve GMROI
Improving GMROI helps retailers get more from the inventory they pay for. This is important for store owners that use profits to fund growth.
A Shopify survey in the fourth quarter of 2025 found 79% of store owners said they use profits to self-fund growth. Improving inventory profitability can give retailers more room to reinvest from business earnings.
Use these strategies to improve GMROI:
- Reduce inventory costs
- Adjust pricing and margins
- Use sales data to plan inventory
- Reduce returns, shrink, and deadstock
Reduce inventory costs
Inventory costs affect GMROI because they increase the amount of money tied up in stock.
Netstock’s 2025 supply chain planning benchmark report found that 55% of SMBs hold at least 20% excess stock. It also found that 46% say 5% or more of their inventory is dead stock, and 17% carry more than 10% dead stock.
To reduce inventory costs, start with these steps:
- Forecast demand before buying. Use past sales, seasonal patterns, and recent product performance to estimate how much inventory you need.
- Time inventory purchases carefully. Buying too early can increase storage costs and leave you with more stock than demand supports. Review sales trends before placing larger orders.
Shopify POS and inventory reports show which products are moving and which are slowing down. For more specific forecasting questions, you can use ShopifyQL to compare sales by product, location, or season.
Sidekick can help generate those ShopifyQL reports from plain-language prompts, such as asking which products sold fastest last month or which variants may need reordering soon.
Adjust pricing and margins
Pricing changes can affect GMROI because they can impact gross profit. A higher price can improve revenue if customers continue to buy at that price.
For example, Sarah’s Family Clothing sells a polo shirt for $35. After a well-known celebrity wears a similar style, Sarah tests a higher price on new stock because demand has changed.
If the shirt keeps selling, the higher gross profit can improve GMROI. If sales slow down, the extra inventory can tie up cash and weaken the return.
Test pricing decisions before applying them across your product line. Intelligems, for example, lets Shopify store owners A/B test product prices, offers, and shipping rates so they can compare how changes affect conversion and revenue.
Use sales data to plan inventory
Sales data can help determine which products are worth reordering, which items need less shelf space, and how inventory should be split across locations.
For example, one store may be close to selling out of a bestselling size or color, while another location has more than it needs. With that information, you can transfer inventory before placing a new order. You can also buy more of what sells quickly and cut back on products that keep tying up cash.
Shopify POS gives retailers real-time inventory visibility across sales channels and fulfillment nodes. With a current view of stock levels, teams can reorder best sellers and reduce slow-moving inventory to balance out GMROI.
Reduce returns, shrink, and dead stock
Returns, shrink, and dead stock all lower GMROI because they reduce the value you get from inventory. The National Retail Federation (NRF) and Happy Returns reported that retailers expected 15.8% of annual sales to be returned in 2025, totaling $849.9 billion.
Before choosing a clearance strategy, review the product’s sales history, margin, and age. Sales of a newer item with steady demand may improve with better placement or a sales promotion. Older inventory with weak sales may need a deeper markdown.
Use the same approach for retail returns and shrink. Track which products are returned most often, where losses happen, and whether certain items have quality issues. The idea is to recover value where possible and keep the same inventory problems from repeating.
Read more
- How to Calculate Your Sell-Through Rate (+ 5 Tips to Improve It)
- Open To Buy Definition + Formula for Retail Planning
- Foot Traffic: The Ultimate Guide to Bringing More People Into Your Retail Store
- The Complete Guide to Purchasing Product Samples
- Inventory Reporting 101: A Retailer's Guide to Reporting on Inventory
- A Simple Guide to Cycle Counting in Retail (+ Best Practices & Benefits)
- Inventory Accuracy: How to Identify & Solve Discrepancies in Stock Levels
- 10 Ways On-Demand Manufacturing Can Help Retailers Streamline Their Operations
- How to Reconcile Your Retail Store's Inventory
- 4 Inventory Valuation Methods for Retailers (+ How to Choose One)
GMROI formula FAQ
What is a high GMROI?
A high GMROI is one that’s above a retailer’s benchmark for its category, product mix, and margin profile. A GMROI above 1 means $1 is earned for every $1 of inventory investment.
What is the difference between ROI and GMROI?
ROI measures return on an investment. GMROI focuses on inventory and measures gross profit against the money tied up in stock.
How do I calculate GMROI in Excel?
In Excel, subtract COGS from revenue to find gross profit. Then divide gross profit by average inventory cost using this formula: =Gross profit cell/Average inventory cost cell.
What is a good GMROI number?
A good GMROI depends on the retail category and how quickly inventory sells. As a baseline, a GMROI above 1 means more gross profit than its average inventory cost.
What is the formula for GMROI in retail?
The GMROI formula is gross profit divided by average inventory cost. Written as a formula: GMROI = Gross profit / Average inventory cost.






