# Inventory reports

Three reports for a location: theoretical COGS against your sales, what your stock is worth and how many days it lasts, and actual vs theoretical usage.

For: Admins, Managers · On: Web · [Help Center](https://www.mays.app/help) › [Inventory](https://www.mays.app/help/inventory) · Last updated October 13, 2026 · Mays Team

Three reports for a location: theoretical COGS against your sales, what your stock is worth and how many days it lasts, and actual vs theoretical usage.

**Who:** admins, and managers at their own locations, on the web.

1. Pick the location in the sidebar.
2. Go to **Inventory → Reports** (the page is **Inventory Reports**).
3. Pick a report with the tabs at the top: **COGS**, **Actual vs theoretical** or **On-hand value**.
4. For **COGS**, set the two dates. They start at the last 30 days.

## COGS

What your recipes say the food you sold cost, against what you sold:

- **Theoretical COGS:** the cost of the ingredients your mapped recipes took out of stock for the sales between the two dates.
- **Net sales:** your POS net sales for those dates, leaving out cancelled orders.
- **COGS %:** COGS divided by net sales. It's red above 32%.

The table lists each item's **Used** amount and its **Cost**, biggest cost first.

![The COGS report for 08/25/2026 to 09/24/2026: Theoretical COGS $4,569.56, Net sales $18,426.91 and COGS % 24.8%, then Espresso beans 88.32 lb $1,095.08, Oat milk 194.28 carton $757.68, Croissants 549.55 each $686.94, Avocados 459.86 each $556.30 and Whole milk 100.44 gallon $446.99](https://mays-uploads.s3.us-east-2.amazonaws.com/site/help__inventory-reports__01-cogs.604824af1d.png)

It needs your POS items mapped to recipes. With nothing mapped it says *No depletion in this range — map POS items and run depletion.* See [POS mapping and automatic depletion](https://www.mays.app/help/inventory/pos-mapping-and-depletion). If you brought in usage from Craftable, that counts too. See [Importing from Craftable](https://www.mays.app/help/inventory/import-from-craftable).

**What's not in it:** waste and transfers. COGS assumes every plate was made exactly to its recipe; what really left the shelves shows up only when you compare with your counts.

## On-hand value

What the location's stock is worth now:

- **Inventory on hand:** the total value.
- **SKUs in stock:** how many items have stock at this location, including any at zero or below.

For each item: **On hand**, **Unit cost**, **Value** (on hand × unit cost) and **Days left**: on hand divided by the average a day your sales used over the last 30 days. Items your sales don't use show —.

![The On-hand value report: Inventory on hand $278.27 and 9 SKUs in stock, then Espresso beans 9 lb at $12.40, $111.60, 3.1 days left; Oat milk 14 carton at $3.75, $52.50, 2.2 days; Croissants 22 each at $1.25, $27.50, 1.2 days; and six more items down to 16 oz lids](https://mays-uploads.s3.us-east-2.amazonaws.com/site/help__inventory-reports__02-on-hand-value.1d1e2de72b.png)

**Unit cost** here is the lowest current price any vendor charges for the item, per count unit, whichever location the price is for. It can be lower than the cost your recipes use, which takes this location's own price first, and an item with only an imported cost and no vendor price shows $0.00.

## Actual vs theoretical

This report compares what you actually used between your two most recent approved counts with what your recipes say you used. Counts can't be approved yet, so it shows *Need two approved counts to measure usage variance.* To compare by hand, see [Theoretical vs actual usage](https://www.mays.app/help/inventory/theoretical-vs-actual-usage).

![The Inventory Reports page on the Actual vs theoretical tab, showing Need two approved counts to measure usage variance](https://mays-uploads.s3.us-east-2.amazonaws.com/site/help__theoretical-vs-actual-usage__02-variance-report.209aef8f6f.png)

## Good to know

- **Dates follow the location's time zone,** so late-evening sales count on the day they were made.
- **Costs are set when sales are processed** each night, at that day's prices. Changing a recipe changes the last three days, which are processed again each night.
- **For food and labor cost together,** see [Prime cost](https://www.mays.app/help/reports-insights/prime-cost).
- The reports show one location at a time, and there's no export.

## Related articles

- Inventory: [Theoretical vs actual usage](https://www.mays.app/help/inventory/theoretical-vs-actual-usage) — Compare what your sales say you used with what you actually used. The Theoretical page shows each ingredient's deliveries, waste, transfers and recipe use.
- Inventory: [POS mapping and automatic depletion](https://www.mays.app/help/inventory/pos-mapping-and-depletion) — Map each item you sell in Square or Union to a recipe, and every night Mays takes that recipe's ingredients out of stock for what you sold.
- Inventory: [Stock on hand](https://www.mays.app/help/inventory/stock-on-hand) — See what a location has on hand right now, set each item's par level and spot what's below par. Counts, deliveries, waste, sales and transfers keep it current.
- Reports & insights: [Prime cost](https://www.mays.app/help/reports-insights/prime-cost) — Prime Cost puts each day's sales next to its labor cost and theoretical food cost, and shows the share of sales each one takes. Web app, admins by default.
- Inventory: [Running stock counts](https://www.mays.app/help/inventory/stock-counts) — A count records what's on your shelves. Submitting it sets each counted item's stock on hand and shows how far it was from what Mays expected.
- Inventory: [Recipes and plate costing](https://www.mays.app/help/inventory/recipes-and-costing) — A recipe lists what goes into one menu item. Mays prices each ingredient from your vendor prices and shows the plate's cost, cost % and margin.
- Inventory: [Inventory at a glance](https://www.mays.app/help/inventory/inventory-overview) — Inventory tracks what you stock, what it costs and what you use, from items and vendors to counts, orders, invoices and waste. It's part of the Pro plan.

## Still need help?

Send us a support request and a real person on the Mays team will get back to you.

[Contact support](https://www.mays.app/contact?topic=support) · [Call +1 (561) 286-3939](tel:+15612863939)

Canonical: https://www.mays.app/help/inventory/inventory-reports
