All articles

Reports & History

Inventory Aging Report

Active inventory bucketed by how long it's been sitting since purchase. Click any bucket to drill into the specific items. The 365+ days bucket is your write-down candidate list.

The Inventory Aging report shows your active inventory bucketed by how long each piece has been sitting since you purchased it. Old inventory ties up capital, attracts dust, and tends to hide pricing problems — this report surfaces it.

How buckets are computed

Bucket = days between the item’s PurchaseDate and today (the report is always “as of today”):

  • 0–30 days — fresh
  • 31–60 days — normal turn
  • 61–90 days — getting stale
  • 91–180 days — second guess your reorder
  • 181–365 days — markdown candidate
  • 365+ days — write-down territory
  • No purchase date — items missing PurchaseDate (data hygiene catch)

What counts as “active” depends on your Include filter:

  • In-stock + on-memo (default) — anything with QOH > 0 OR QtyOnMemo > 0
  • In-stock only — only QOH > 0

Items marked Returned or Scrapped never appear.

Summary view

One row per bucket showing Items count, Cost (carrying value), and Retail (full-price value). Sorted oldest-first descending so the 365+ row is at the top.

The 365+ and 181–365 buckets get red and amber tints to draw the eye. These are the buckets that matter for write-down decisions.

Drill-down

Click any bucket label in Summary → Detail filtered to items in that bucket. Sorted oldest-first within the bucket.

Detail view

One row per stock item:

  • Stock ID (clickable, links to the appropriate inventory page based on type)
  • Type — colored badge (J / W / D / C / P)
  • Description, Store
  • Purchase Date, Days Old (color-tinted past 180 / 365)
  • Bucket label (hidden when drilled into a single bucket)
  • Cost, Retail

Removable Bucket pill at the top of Detail; click × to see all items across all buckets.

Filtering by item type

The Item Type filter narrows to a single category — Jewelry only, Watches only, Diamonds only, etc. Changing this in Summary or Detail re-runs the report.

For stones, the buckets cross all three sub-types (Diamonds, Colored Stones, Pearls) but the item-type filter is sub-type aware.

What “good” looks like

Different shops weight aging differently, but rules of thumb:

  • More than 20% of inventory cost in 365+ — significant aged-inventory problem. Aggressive markdowns and an honest reorder review.
  • 365+ in money-tier categories — premium watches or large stones aging out usually means the price is wrong, not the demand. Check the Pricing Realization report on those items.
  • Heavy 181–365 with thin 0–30 — slowing turnover. Either inventory levels are too high or buying patterns have drifted.

Tips

  • Quarterly write-down review — Detail view, filter to Bucket = 365+, sort by Cost DESC, work top-down. Each item is either: marked down to move, returned to vendor, or scrapped to write-off.
  • The PurchaseDate isn’t the same as the date you received the item — it’s the original date you bought it (or, for transferred inventory, the original acquisition date). Don’t write down based on a single age number; cross-reference with sales activity.
  • Pair with Inventory Valuation for the same data without the aging dimension — total Cost / Retail / Markup % per type.
  • Stones tracked in carats — the Days Old computation works the same for stones; the item count is a lot count, not a per-piece count.