The closing stock figure, and the stock it leaves out

Shopify does give you a closing stock figure at cost, it is free, and most merchants never find it. The problem is what the report leaves out without saying so — exactly the dead stock a physical count picks up, which is why your count and your valuation disagree.

Your accountant wants one number. What was the stock worth, at cost, on the last day of the year.

Shopify gives you that number, it is free, and it is in a report most merchants have never opened. So the first half of this page is where to find it. The second half is what the report leaves out without telling you — starting with the reason your physical count and Shopify's figure will not agree.

The report that already does it

It is called Month-end inventory value, and Shopify's own definition of the column your accountant wants is exact:

Total inventory value: The cost per item multiplied by the ending quantity amount for each product variant option. The sum of these values displays in the Summary row.

That summary row is closing stock at cost. Set the period to end on your year end, export it, and the summary row is the figure your accountant is asking for.

Two things about the ingredients, because they decide whether the figure is right. The quantity is "The trackable On hand inventory quantity of a product variant at the end of the last day of the selected time period", and the report "totals the current amount of On hand inventory on products with a cost per item value assigned at the time of sale." Which means a product with no cost recorded against it is absent from the total rather than counted at zero — the subject of keeping cost per item right when your buying price moves.

The sentence that explains why your count disagrees

Here is the one worth printing out. In the same documentation, describing which products the report covers:

This report includes product variants that have been adjusted or ordered in the last three years.

Read what that means on a stocktake morning. Your team counts the shelves. The shelves contain the four boxes at the back that nobody has sold, ordered, received or adjusted since 2022 — and on a long-tail catalogue that is not four boxes, it is a section of the warehouse. Those variants are in your count and they are not in Shopify's total.

Nothing on the screen says so. The report does not warn you, the summary row does not flag it, and the difference presents itself as an unexplained gap between two numbers that ought to be the same one. If you have ever had an accountant ask why the valuation is lower than the count and ended up blaming the cost field, this may be the real answer.

The practical test is quick: export the report, export your product list, and compare the number of rows. If the report is short, the missing rows are your dead stock.

Count and report disagree at year end? Describe the figure your accountant asks for →

What else to know before you promise anybody a figure

Whether it lands anywhere but a month end is genuinely unclear, and we are not going to pretend otherwise. The report is called Month-end inventory value, and its sibling snapshot is documented as showing what you had "at the end of each month". But the column definition above says "the selected time period", which reads as though any end date works. Shopify documents neither — we checked the page end to end, and it says nothing about how the period is chosen.

So if your year ends on 5 April, or on a 52-week retail calendar, settle it in your own admin before you promise anybody a figure: open the report, set the end date to your real year end, and see whether the ending quantities move when you shift it by a day either side. If they do not, you are reading a month end whatever the picker says — and that is worth knowing in February rather than in April.

History starts on 1 October 2023. In Shopify's words, "Historical data for inventory-based metrics go back only to October 1, 2023." So a valuation for an earlier year end does not exist to be recovered. This is the one genuinely unsolvable part of the subject, and it is worth being blunt about it: no app can reconstruct a stock position from before anything was recording it. If you need a figure for a past date, the only honest source is whatever you exported at the time.

And a 2026 year end sits on a different basis from its 2025 comparative. From 1 October 2026 the inventory reports measure On hand rather than Available, with earlier data left as it was. Worth one sentence to your accountant before they ask, and the detail of it belongs to what a stocktake discrepancy actually cost you.

What merchants ask for

Is there a way to get a report of what I had in inventory at year end?

— community thread, 5 April 2021

The answer that thread settled on is the method above: set the date, export, total it in a spreadsheet because the report did not give a total at the time. It does now.

The sharper request is from 2024, and it is not about the number at all — it is about the procedure:

a step by step instructional helpfile (not currently available) that tells the retailer how to properly initiate a year end inventory count stock take

— feature request opened 22 October 2024, still drawing replies in June 2025

That request names something worth knowing if you are about to count: it asks for the instructions to cover "all Shopify platform parts affecting inventory, such as draft orders with reserved items" — and that is exactly what the report does with them. On hand includes "Committed inventory for orders pending fulfillment, units reserved in a draft order, and units in a transfer marked as ready to ship", and excludes "Incoming units that are a part of a transfer". So a quote you have held as a draft order is in the valuation, and a container on the water is not.

And in the same period, a merchant asking for the two halves together: "cost of goods and retail value along with the difference in the value from Shopify reported on-hand stock and your counted stock". That difference is the thing Shopify does not reconcile for you, partly because of the three-year window above.

The app route, and its honest boundary

If what you need is a reliable dated figure every month without remembering to export anything, this is a cheap problem to solve. Merchbees Inventory Value (4.9 from 47 reviews) is the one built for it: "By taking weekly & monthly snapshots, you can get historical and year-end inventory reports for accounting." It has a free tier up to 500 SKUs, and $4.99 a month up to 8,000.

Two things to read carefully on its own tier list before you buy. Monthly historical snapshots are on the $11.99 tier, with weekly above that — so the cheap tiers give you the current value rather than the history. And a snapshot can only start the day it is installed, so an app bought in November does not give you last year's year end. Two smaller listings sit alongside it, named from the search results rather than their own pages: Stock Value at $3 a month, and #InventoryValue at $10.

What you need Where it comes from
Closing stock at cost, at a month end Native — Month-end inventory value, free
The same figure captured every month without you An app, from under $5 a month
The same figure on a date that is not a month end Undocumented — test it in your own admin
The dead stock your count finds and the report omits Neither
A valuation before October 2023 Nobody — the data was never kept

Financial year that does not end on the 31st? Describe your financial year and what it needs →

What Shopivibe does

You describe the statement your accountant signs off, and it arrives in that shape. "On the last day of our financial year, which is 5 April, I need the stock value at cost, every line included even the ones that have not moved in years, and the difference against what we actually counted."

What you get is the part the native report leaves you doing by hand: your period rather than Shopify's, every line rather than the recently active ones, the count set beside the valuation with the gap explained rather than left as a mystery, and the same pack produced the same way next year so the two are comparable. Built on the cost figures you already keep, which stay yours.

Shopivibe solves the problem in your store and keeps what it adds maintained, including when Shopify changes something underneath. If the app cannot complete your request on the spot, somebody at Shopivibe takes it on straight away and has it working in your store within 24 hours, included in the plan at no extra charge. Shopivibe is free during early access, with 3,500 credits included. Credits beyond the included 3,500 cost $0.06 each.

Ready to hand over a figure you can defend? Describe your year-end pack in your own words →

Checked against Shopify's documentation and the App Store on 15 October 2026.