Revalue COGS (single, bulk & the COGS report)
A revaluation changes the unit cost recorded on a single FIFO layer — the cost the product was received at — and propagates that new cost down to every sale that has already consumed the layer. Use it to fix one layer that was costed wrong (a late landed cost, a keying error, a market write-down) without disturbing the rest of the product's history. Each revaluation writes one dated row to an audit ledger, so your books stay reconcilable.
This guide covers revaluing one layer, revaluing many at once, the per-product Revaluation Tool that finds outliers, the Inventory Revaluations ledger, and the drill-down tabs behind View Details.
- Revalue (this guide) — you set a specific layer to a specific cost, on a date, with a reason. It's a deliberate, audited edit.
- Rebuild — SKU.io re-derives every layer's cost from its original source documents. See Rebuild COGS & the SKU COGS Health dashboard.
- Recalculate — a lighter refresh of a single product's layers.
Which one to reach for is explained in Correcting COGS: revalue vs rebuild vs recalculate.
Before you begin
| Requirement | Why it's needed |
|---|---|
| Inventory read/write access | Every revaluation action is gated by the inventory scope. |
| At least one FIFO layer | You revalue a layer, so the product must have received stock. Browse layers in Browse & manage FIFO layers. |
| A reason | Every revaluation records a reason (Market Value Adjustment, System Error, or Other) so the ledger explains itself. |
The per-product report and its median exclude consigned (supplier-owned) layers — that stock isn't your inventory to revalue. Owned layers are all that appear.
Revalue a single FIFO layer
You reach the single-layer editor from a layer's detail page (Inventory → FIFO Layers, open a layer, then the Revalue tab) or by clicking Revalue on a row in the Revaluation Tool below.
- Open the layer's Revalue COGS screen. The left panel, FIFO Layer Details, shows the layer ID, its Source (the receipt, adjustment, transfer, or stock take that created it), warehouse, original and remaining quantity, Current COGS, and Median COGS for the product.
- In Suggested COGS Values, pick the cost you want:
- A document-backed source — for example Purchase Order Value or Assembly Line Value — sets the cost from the original document. You can't type over it.
- Manual COGS Value lets you enter any figure in New COGS Value. Use it for market write-downs.
- Product Median COGS sets the layer to the product's median layer cost.
- For layers created by an adjustment or stock take, a Best Available COGS option offers the top of the cost hierarchy, with the runner-up sources listed beneath it.
- Review the Impact Summary: Current Valuation, New Valuation, and the Adjustment Amount (green when the value goes up, red when it goes down).
- Set the Revaluation Reason and, if you need to, an Effective date and Notes.
- Click Apply Revaluation.
What you'll see: the layer's cost updates, the new cost flows through to any sales that already consumed the layer, and a row is written to the Inventory Revaluations ledger. The New COGS Value and Revaluation Reason fields enable or disable themselves based on the source you chose — a document-backed source fixes both, while Manual unlocks them.
Each positive inventory event permits only certain COGS sources. Manual is always allowed.
| Layer created by | Allowed COGS sources |
|---|---|
| Purchase order receipt | Purchase Order Value, Manual |
| Warehouse transfer receipt | Transfer shipment weighted-average cost, Manual |
| Assembly | Assembly Line Value, Manual |
| Return receipt | Any source |
| Adjustment | Any source (best-available hierarchy) |
| Stock take | Any source (best-available hierarchy) |
Choosing a source the layer doesn't allow is rejected with a 422 COGS sourcing error naming the layer. The UI only offers valid sources, so you'll usually meet this only when calling the API directly.
- No change is a no-op. If the cost you apply rounds to the same value the layer already has (to the cent), nothing is recorded and no ledger row is written — the action still reports success.
- Locked periods are protected. If your effective date falls in a locked accounting period, the revaluation lands on the first open day after the lock date instead — locked books are never rewritten. See Correcting COGS.
Bulk revalue many layers
When you've loaded a product's layers in the Revaluation Tool, select several with their checkboxes to open the Bulk COGS Revaluation bar.
- In the layers table, tick the layers you want to revalue. The bulk bar shows the Selected Layers count and the running Total Impact ($).
- Each selected layer gets its own cogs source and new unit cost (defaulting to its suggested value); the Will Change count tells you how many will actually move.
- Set a shared Revaluation Reason, Notes, and Effective date for the whole batch.
- Apply the batch.
What you'll see: each layer is revalued exactly as if you'd done it one at a time — the same source validation, no-op skipping, and locked-period handling apply per layer, and one ledger row is written per changed layer. The shared reason, notes, and effective date carry to every item unless an individual layer overrides the effective date. If any layer fails validation, the batch surfaces a 422 and names the problem.
Find and revalue outliers (the Revaluation Tool)
The per-product Revaluation Tool — the Revaluation tab on a product's COGS page (Products → open a product → COGS → Revaluation) — analyses one product's layers so you can spot and fix costs that drift from the median.
- Optionally filter by Warehouse and a Date Range.
- Expand Outlier Detection Settings and set the COGS Outlier Threshold slider — any layer whose cost differs from the median by more than this percentage (above or below) is flagged. The slider runs from ±5% to ±50% in 5-point steps.
- Click Load COGS Layers.
What you'll see:
- A summary of On Hand, Total Value, Median COGS, active vs total layer counts, and the outlier count and percentage.
- A COGS Distribution histogram of how many layers sit at each cost, with the median and threshold band marked.
- A layers table where outliers are flagged. Each row shows its accounting impact — the first date it touched your books, whether that period is locked, and whether the layer is fully consumed.
From here, click Revalue on a single row to open the single-layer editor, or select rows to bulk revalue.
If the product (in the chosen warehouse and date range) has no layers, the tool shows No COGS layers found rather than an empty grid. Widen the filters or confirm the product has received stock.
Product COGS detail tabs (View Details)
The View Details link on the SKU COGS Health table opens a product's COGS page at Products → (product) → COGS, with five tabs:
| Tab | What it shows |
|---|---|
| Dashboard | Headline cost metrics for the product — cost statistics, variation, on-hand value, and active layer count. |
| Value Sources | The cost basis behind each layer — which document or source set the cost. |
| Layer Overview | The product's FIFO layers grouped by warehouse, with received/available quantities and values. |
| Revaluation | The Revaluation Tool described above. |
| Inventory Timeline | The layers as a time-ordered feed, each expandable to its per-layer consumptions (the sales and movements that drew the layer down). |
For a product held in Amazon FBA, warehouse and Amazon costs are tracked on separate ledgers — Amazon stock appears as a clearly labelled secondary card rather than blended into the warehouse metrics.
Browse the revaluation ledger
Every dated cost change lands in the Inventory Revaluations ledger at Inventory → Inventory Revaluations — the audit trail that backs GL reconciliation.
Each row records:
| Column | Meaning |
|---|---|
| Effective | The date the change takes effect (in an open period). |
| FIFO Layer | The layer that was revalued — links to its detail page. |
| Product / Warehouse | The product and warehouse the layer belongs to. |
| Old Cost → New Cost | The unit cost before and after. |
| Δ | The per-unit change, coloured green (up) or red (down). |
| Reason | The reason chip — Landed Cost Added, Vendor Invoice Correction, Market Value Adjustment, System Error, or Other. |
| Source | The COGS source used (Manual, Purchase Order Line, Assembly Line, Oldest Open Layer, and more). |
| Notes | Free-text notes recorded with the change. |
| Recorded By | The user who made the change. |
| Posted / Recorded | When the row was posted to the books and when it was created. |
Search by ID, FIFO layer, SKU, product name, warehouse, or notes; filter by Reason and Source; sort by effective date, cost, reason, source, product, or warehouse. The ledger is chained — each row's old cost equals the previous row's new cost for that layer — which is what makes the point-in-time valuation and per-period reconciliation reliable.
The variation-by-product report
A companion aggregate report lists products whose layer costs are spread too widely — where the gap between a product's cheapest and most-expensive layer exceeds a threshold (default 5%). For each product it returns the variation percentage, the min, max, average, and median layer cost, and the active-vs-total layer counts, capped at the top 500 products by variation. Only products with more than one layer qualify, and archived layers are excluded.
You see the same per-product variation % on the SKU COGS Health table, where the Min Variation % / Max Variation % filters isolate the products worth investigating. A high variation is the cue to open the product's Revaluation Tool and reconcile its outliers.
Next steps
- Rebuild COGS & the SKU COGS Health dashboard — re-derive costs from source documents across many products.
- Correcting COGS: revalue vs rebuild vs recalculate — choose the right tool and understand locked periods.
- Browse & manage FIFO layers — find the layer you need to revalue.
- FIFO layers & how COGS is realized — the model behind layers and cost.
- FIFO layer fields, statuses & enums — every field and enum, including COGS sources and revaluation reasons.
- View & filter the inventory movement ledger — the movement audit trail that sits alongside revaluations.