Skip to main content

How to Use: Inventory Report

Looking for cost of goods sold or what your stock is worth? This report isn't built for either. See Inventory, COGS or Snapshot: Which Report Do I Need?


What This Report Tells You

The Inventory Report covers the movement and margin of every item you stock — ship's store goods, fuel, parts, anything flagged as an inventory item in Dockwa.

It answers two questions at once: what do I have, and what am I making on it?

For each item you get quantity on hand, how much sold in the period, what you paid, what you charged, and the resulting markup and margin. Behind that, a full transaction log of every sale, return, and delivery.

Every item with Track inventory for this item turned on appears, even if nothing happened to it in the period. Services and non-stocked items are excluded by design.


How to Run It

  1. Go to Reports and select Inventory.

  2. Choose your start and end dates. It defaults to last calendar month.

  3. Click Export.


The Two Tabs

Summary — one row per item, with SKU, Category, Current retail price and, if you've set up GL codes, the GL Code (revenue) the item maps to. A totals row at the bottom covers the quantity columns. This is your stock and margin overview.

Detail — one row per transaction, in chronological order, covering four event types:

  • Sale and Return — items sold to and returned by customers

  • Receive inventory and Return inventory — stock coming in from a vendor, or going back to them

The Detail tab carries vendor, reference number, and notes on receiving events, so you can tie a delivery back to a purchase order or packing slip. Sales and returns also carry Subtotal before discount, Discount, Subtotal before tax, Tax and Total, so you can see exactly what each sale collected.


Things Worth Knowing Before You Read It

Sales show as negative quantities.

The Detail tab is written from the stock's point of view, so anything leaving the shelf is a negative number and anything arriving is positive. On the Summary tab, "Quantity sold" is a plain positive count — the sign flip only lives in the detail.

Quantity on hand is as of your end date, not today.

The column header states the date so there's no ambiguity. Run the report through the end of last month and you'll see what was on the shelf then, not what's there this morning.

Average purchase price falls back to your history.

Dockwa first looks at priced deliveries inside your date range and weights them by quantity. If you didn't receive that item during the period, it uses the weighted average of every priced delivery up to your end date instead — so the column stays populated and margin still calculates on slow-moving stock.

Deliveries entered without a price don't contribute to this figure. A delivery entered at $0 does count, and pulls the average down, so enter the real cost. If an item's purchase price, markup, and margin are all blank, no priced delivery is usually the reason.

Average retail price is the price items were rung up at, before discounts.

It's weighted across the sales in the period, so price changes made at the register pull it down. Discounts don't; they're recorded separately in the Detail tab's Discount column. Compare it against "Current retail price" — the item's price right now — to see how often items are rung up below today's price.

Markup and margin are different numbers. Markup measures profit against what you paid; margin measures it against what you charged. An item bought at $10 and sold at $15 carries a 50% markup and a 33% margin. Both are here because vendors and buyers tend to talk in markup while accountants think in margin. Both are calculated before discounts.

Some items draw from another item's stock. If you sell singles out of a case, or a dispensed product tied to a bulk item, those sales roll up into the parent item's quantities rather than being counted separately.

A GL Code column appears only if you've set up GL codes.

It shows the revenue code the item is mapped to — the same mapping your accounting integration uses — so you can check that items are pointed at the right account before anything syncs.

SKUs and reference numbers keep every digit.

They export as text, so Excel keeps leading zeros and long numbers intact.


When to Use It

Set reorder points.

Quantity sold over a known period against quantity on hand is your reorder math. Run the same month across two years for anything seasonal.

Find your low-margin items.

Sort the Summary by margin, ascending. Low-margin items that move slowly are candidates to drop; low-margin items that move fast are candidates for a price increase or a better vendor.

Check your fuel margin.

Fuel moves in volume where small per-gallon differences add up. Average purchase price against average retail price, at four decimals, is the cleanest read you'll get on whether your pricing is keeping pace with your deliveries.

Measure price changes and discounting.

A gap between average retail price and current retail price shows items rung up below today's price. For discounts, total the Discount column on the Detail tab.

Investigate shrinkage.

Compare the expected quantity change against a physical count. Gaps point to theft, breakage, or receiving that never got entered.

Reconcile vendor deliveries.

The Detail tab's vendor, reference number, and notes let you tie receiving events back to invoices and packing slips when something doesn't match.

Check your deliveries before you close.

Make sure every delivery in the period is entered with a price. Then run the Cost of Goods Sold report for your COGS entry and Inventory Snapshot for month-end inventory value.

Audit your GL mappings.

If you're running an accounting integration, scan the GL Code column for items mapped to the wrong revenue account before the sync compounds the error.


Common Questions

Can I use this report for COGS?

No. It only costs deliveries received in the period and doesn't account for stock you already had. Use the Cost of Goods Sold report.

Why is an item missing?

It isn't tracked as inventory. Open the item on the Items page and check Track inventory for this item.

Why are purchase price, markup, and margin blank?

No priced delivery has ever been entered for that item. Enter a price when receiving inventory and the figures will populate.

Why doesn't quantity on hand match what's on the shelf?

It reflects your end date rather than today, and it only counts movement Dockwa knows about. Stock that left without being rung up won't be reflected.

Did this answer your question?