> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vortexiq.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Slow-Moving Inventory (>90d no movement), Microsoft Dynamics 365

> Slow-Moving Inventory (>90d no movement): items with on-hand value > 0 and no sales movement over the velocity window. Direct write-down candidate. How to read it, why it matters, and how to act on it.

**Metrics type:** [Key Metrics](/nerve-centre/overview#metrics-types-explained)  •  **Category:** [Ecommerce Platform](/nerve-centre/connectors#connectors-by-type)

> Items with on-hand value > 0 and zero sales in 180 days. Direct write-down candidate.

## At a glance

> Total dollar value of Items with on-hand inventory > 0 AND zero sales (`Item Ledger Entry.Entry Type = 'Sale'`) in the trailing 180 days. Direct write-down candidate.

|                        |                                                                                                                                                                                                                                                  |
| ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **What it counts**     | `SUM(Item.Inventory × Item.Unit Cost)` filtered to Items where `Inventory > 0` AND `MAX(Item Ledger Entry.Posting Date WHERE Entry Type = 'Sale') < TODAY - 180`. Items never sold but still on-hand are also counted (no Sales entries at all). |
| **Velocity threshold** | 180 days zero sales is the default. Configurable to 90D (fast-moving categories) or 365D (slow-fashion, durables) per workspace.                                                                                                                 |
| **Stock excluded**     | Quarantined, In-Transit (configurable), Reserved (still committed).                                                                                                                                                                              |
| **Currency**           | Multi-Company: each Company's dead stock value translated to Reporting Currency.                                                                                                                                                                 |
| **Manufactured items** | Components in WIP not counted (they are not finished goods). Finished Items with zero sales but Production Order outputs in progress flagged separately.                                                                                         |
| **New launches**       | Items with `Item.Created Date > TODAY - 180` are excluded by default (not enough history to call dead). Configurable.                                                                                                                            |
| **Time window**        | `RT` (real-time snapshot)                                                                                                                                                                                                                        |
| **Alert trigger**      | `>$25k dead` (any Company crossing \$25K total triggers sentiment)                                                                                                                                                                               |
| **Sentiment key**      | `dead_stock`                                                                                                                                                                                                                                     |
| **Roles**              | owner, finance, operations                                                                                                                                                                                                                       |

## Calculation

Calculated automatically from your Microsoft Dynamics 365 data. See the At a glance summary above for what the metric tracks and the worked example below for a typical reading.

## Worked example

A UK omnichannel apparel brand on Business Central. Snapshot 14 Apr 26.

| Metric                                              | Value        |
| --------------------------------------------------- | ------------ |
| Total Inventory Value                               | £2,622,000   |
| Items with on-hand > 0 (SKU count)                  | 4,820        |
| Items with zero sales > 180D AND on-hand > 0 (dead) | 218          |
| **Dead Stock Value (this card)**                    | **£284,400** |
| Dead Stock as % of total inventory                  | 10.8%        |

Five things to notice:

1. **£284K of dead stock is 10.8% of total inventory.** Apparel benchmark is 5 to 8% in healthy operations; 10%+ signals merchandising or buying issues. The Vortex IQ trendline shows this rose from 6.2% to 10.8% over 12 months, suggesting a 2025 over-buy.
2. **218 SKUs is the actionable list.** The Top 10 dead-stock SKUs concentrate £142K (50%). The Vortex IQ drill-down ranks them by value descending so the merchandising team works the largest first.
3. **The cross-platform kill-shot:** of the 218 SKUs, 14 still have active Google Ads or Meta Ads spend. £4,840/month going to advertise products that have not sold in 6 months. See [Dead Stock with Active Ad Spend](/nerve-centre/kpi-cards/microsoft-dynamics/dead-stock-with-active-ad-spend).
4. **Alert (>\$25K) fires.** The Controller flags this in the monthly close meeting.
5. **Action playbook:** (1) pause ads on the 14 paid-traffic offenders, (2) move the 218 SKUs to a clearance section at 30 to 50% off, (3) for the 365D+ slice (£80K), book an Inventory Provision via Inventory Reclassification Journal at fiscal year-end.

## Sibling cards merchants should reference together

| Card                                                                                                          | Why pair it with Dead Stock Value                                  |
| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------ |
| [Inventory Aging](/nerve-centre/kpi-cards/microsoft-dynamics/inventory-aging)                                 | Different lens: receipt-date vs sales-velocity. Heavy overlap.     |
| [Total Inventory Value](/nerve-centre/kpi-cards/microsoft-dynamics/msd-total-inventory-value)                 | The denominator. Dead Stock as % of total is the key ratio.        |
| [Dead Stock with Active Ad Spend](/nerve-centre/kpi-cards/microsoft-dynamics/dead-stock-with-active-ad-spend) | Cross-connector kill-shot: the SKUs you should pause ads on TODAY. |
| [Top SKUs by Inventory Value](/nerve-centre/kpi-cards/microsoft-dynamics/msd-top-skus-value)                  | Identifies which dead SKUs concentrate the value.                  |
| [Dead Stock Threshold Breach](/nerve-centre/kpi-cards/microsoft-dynamics/dead-stock-threshold-breach)         | The alert fired when this card crosses threshold.                  |
| [Margin by SKU](/nerve-centre/kpi-cards/microsoft-dynamics/margin-by-sku)                                     | Dead stock often has compressed margins from past markdowns.       |
| [Inventory Carrying Cost](/nerve-centre/kpi-cards/microsoft-dynamics/msd-inventory-carrying-cost)             | The annual cost of carrying this dead value.                       |

## Reconciling against the vendor's own dashboard

**Where to look in Business Central:**

> **Reports > Inventory > Inventory Aging by Item** (filter to zero-velocity items)
> **Item Statistics page > Last Sale Date column**
> **Power BI > Inventory Performance > Slow Moving Items tile** (if installed)

BC does not have a single "Dead Stock" report. Most merchants build a saved view: filter the Item List to `Inventory > 0` AND `Last Date Modified` (proxy for last sale) older than threshold.

**Why our number may legitimately differ from BC's reports:**

| Reason                        | Direction              | Why                                                                      |
| ----------------------------- | ---------------------- | ------------------------------------------------------------------------ |
| **Velocity threshold**        | Either                 | Default 180D; configurable. BC reports often use 90D or 365D.            |
| **New launch exclusion**      | Card lower             | Card excludes Items created \< 180D ago. BC reports do not.              |
| **Sales vs Sales Returns**    | Either                 | Card uses `Sales` Entry Type only; some reports include both directions. |
| **Multi-Company aggregation** | Card materially higher |                                                                          |

**Cross-connector reconciliation:**

| Card                                                                                                          | Direction             | Notes                                                                           |
| ------------------------------------------------------------------------------------------------------------- | --------------------- | ------------------------------------------------------------------------------- |
| [Dead Stock with Active Ad Spend](/nerve-centre/kpi-cards/microsoft-dynamics/dead-stock-with-active-ad-spend) | Subset cross-platform | The intersection with active paid-ad spend.                                     |
| [shopify.product\_no\_sales\_90d](/nerve-centre/shopify/product_no_sales_90d)                                 | Different lens        | Shopify-side velocity check. Should overlap heavily for SKUs synced to Shopify. |

## Known limitations / merchant FAQs

**Why 180 days as the threshold?**
Industry default for apparel and consumer goods. Fast-fashion uses 90D. Slow-fashion / durables use 365D. Configure per workspace in the field map.

**Are Items in Quarantine counted?**
No. Quarantined inventory is held for QC review, not stuck due to lack of demand. Excluded.

**What about Items with negative inventory?**
Excluded. Negative on-hand indicates a posting error, not dead stock.

**Does the card include WIP?**
No, only finished goods. Components in WIP are tracked separately.

**My BC tenant uses Production Orders. Do they affect this?**
Production Orders create Item Ledger Entry rows of type `Output`. The card uses `Sale` only for the velocity check. So a manufactured Item that had Output but no Sale in 180D is still flagged as dead.

**How does this interact with Inventory Aging?**
Aging asks "when did this stock arrive?". Dead Stock asks "when did this SKU last sell?". An Item that arrived 60 days ago but never sold is in 0-90D aging but is dead-stock. An Item that arrived 240 days ago but sells slowly (last sale 60 days ago) is in 181-365D aging but NOT dead-stock. The two metrics complement each other.

**Multi-Company: what about intercompany transfers?**
A transfer between Companies posts as a Sale on the From-Company and a Purchase on the To-Company. The card sees the From-side as a real Sale, so the From Company's Item is not flagged dead. The To Company's Item just received stock; if it sits there 180D without further sale, it becomes dead.

**Is this for write-down accounting?**
Yes, this card is what auditors will ask for. Combine with the 365D+ slice from [Inventory Aging](/nerve-centre/kpi-cards/microsoft-dynamics/inventory-aging) to support FRS 102 / IFRS / ASC 330 inventory provisions.

**Power BI parity?**
Power BI's Inventory Performance "Slow Moving Items" tile uses a sales-velocity check similar to this card. The threshold defaults differ; align them via field map.

***

### Tracked live in Vortex IQ Nerve Centre

*Dead Stock Value* is one of hundreds of KPI pulses Vortex IQ tracks across Microsoft Dynamics 365 and 70+ other ecommerce connectors. Nerve Centre runs the detection layer; Vortex Mind investigates the cause when something moves; Ask Viq lets you interrogate any number in plain English.

[Start for free](https://app.vortexiq.ai/login) or [book a demo](https://www.vortexiq.ai/contact-us) to see this metric running on your own data.
