Profitability & COGS

Inventory valuation

See the dollar value of every SKU sitting on your shelves and snapshot month-end totals for accounting.

The valuation page

Open /admin/inventory/valuation to see a table of every SKU with: on-hand quantity, FIFO unit cost (most recent layer), total value (sum of qtyRemaining × unitCost across all open layers), and warehouse breakdown. Totals at the top show overall inventory value, broken out by warehouse. This number is what your CPA wants on the balance sheet under "Inventory, current asset."

How total value is calculated

Crucially, ShipWave does not use the most-recent unit cost as a flat multiplier. It walks every open FIFO layer for each SKU: value = Σ(layer.qtyRemaining × layer.unitCost). If you have 30 units across 3 layers at $40, $42, and $45, the total value is (10×40) + (10×42) + (10×45) = $1,270—not 30×45 = $1,350. This is the accounting-correct FIFO number.

Month-end snapshot

Click the Snapshot for accounting button to lock in the current valuation as the end-of-month figure. Snapshots are stored permanently and never recalculated, even if you later edit a historical FIFO layer. The snapshot includes per-SKU detail, total, and a hash so you can verify integrity later. Download as PDF or CSV from the snapshots list.

Historical drift

On the SKU detail page, the Cost history chart shows the average unit cost over time, weighted by remaining layer quantity. This is how you spot inflation creeping in: if your "Battery Cell" SKU was costing $18 last year and is now $24, you know whether to raise prices or look for a new vendor. The same data drives the margin_declining opportunity in the opportunities engine.

Reconciling with a physical count

If your physical count differs from ShipWave's on-hand, use the manual adjustment flow. When you reduce qty, ShipWave consumes from the oldest layer first (same as a ship). When you add qty, you provide a unit cost and a new layer is created. Either way the valuation stays accurate.

FAQs

How often does the valuation update?
Live. Any inventory movement (ship, receive, adjustment, MO completion) immediately updates the affected SKU's value.
Should I snapshot every month?
Yes—set a recurring reminder for the first of each month. Snapshots are how your CPA reconciles your balance sheet. They also lock in figures so you can't accidentally restate history if you edit a layer later.
What about items in transit (POs not yet received)?
In-transit inventory is not included in the valuation page. It shows up separately on Admin -> Purchase Orders. Standard accounting treats it as a different balance sheet line (Goods in Transit).
Does this include FBA stock?
Yes—FBA on-hand is included if the FBA channel is connected and inventory is syncing. The unit cost is still the FIFO cost from your warehouse layers, not Amazon's.

More in Profitability & COGS

  • FIFO COGS: how ShipWave costs your inventory

    Why First-In-First-Out costing matters for accounting accuracy, how cost layers are built from receipts and adjustments, and how consumption stays atomic at ship time.

  • Marketplace fee ingestion

    How ShipWave pulls real fee data from Amazon, Shopify, eBay, and Walmart so your profitability numbers reflect what each channel actually charges you.

  • The profitability dashboard

    See revenue, COGS, fees, shipping, and overhead stacked together to understand real net margin per order, SKU, channel, and warehouse.

  • Opportunities Found: 8 ways ShipWave spots money on the table

    Heuristics that surface SKUs losing money, declining margins, cheaper suppliers, slow movers, and shipping outliers—capped to a human-reviewable cadence.

  • Overhead allocation

    Spread fixed monthly overhead (rent, utilities, software, salaries) across SKUs so the profitability dashboard shows fully-loaded margin.