Updated: Jul 23, 2026 • 2 min read
Automate ecommerce inventory aging and dead stock alerts
Stockout alerts protect revenue, but they do not address the opposite problem: inventory that is not moving. An inventory aging Agent identifies slow sellers, excess cover, and cash tied up by SKU, variant, and location.
Why dead stock stays hidden
Inventory usually gets reviewed through total units or total value. Those totals can look acceptable while a small group of variants accumulates most of the risk.
Shopify's product analytics documentation includes sell-through rate, days of inventory remaining, and ABC inventory analysis. These metrics become more actionable when they are combined with product age, margin, purchase orders, returns, and current marketing plans.
Manual reporting often fails because:
- Sell-through is not compared with the buying plan.
- New products are treated like mature products.
- Variants hide behind product-level averages.
- Incoming purchase orders are excluded.
- Markdown recommendations ignore contribution margin.
Data to connect
Use read-only access to:
- Shopify inventory by SKU, variant, and location
- Orders, returns, discounts, and product cost
- Purchase orders and inbound inventory
- Product launch date and lifecycle status
- Marketing calendar and active campaigns
Define when inventory becomes "aging" for each category. A seasonal item, replenishment product, and evergreen spare part should not use the same threshold.
Metrics and signals
Calculate:
- Inventory units and value on hand
- Sell-through rate
- Days or weeks of cover
- Units sold in the last 30, 60, and 90 days
- Days since last sale
- Inventory age
- Incoming units
- Return-adjusted net sales
- Gross margin before and after proposed discounts
Create separate watchlists for excess inventory, no-sale inventory, and products with weak sell-through but high inbound commitments.
Example Agent instruction
"Every Monday, identify inventory risk by SKU and location. Show units on hand, inventory value, 30-day and 90-day sell-through, days of cover, days since last sale, incoming purchase orders, return-adjusted sales, and gross margin. Apply category-specific aging thresholds. Flag variants with excess cover, no sales, or inbound stock that would materially increase risk. Do not recommend a markdown without showing the estimated margin effect."
What the Agent should produce
A useful weekly report contains:
- Cash tied up in aging inventory
- Top risk SKUs and variants
- Risk created by inbound purchase orders
- Products that need merchandising review
- Products suitable for bundling, transfer, or controlled markdown testing
- Data conflicts and missing product costs
The Agent should prepare options, not automatically change prices or cancel purchase orders.
Implementation workflow
- Define category-specific aging and cover thresholds.
- Connect Shopify and purchasing data through Connectors.
- Reconcile units and inventory value at one location.
- Add inbound purchase orders and product lifecycle tags.
- Schedule the weekly watchlist in a Document.
- Route recommendations to merchandising and finance for approval.
- Use Logs to trace missing SKUs and source failures.
Review checklist
- Variants are not hidden by product averages.
- Inventory value uses the approved cost basis.
- Incoming inventory is included.
- New products receive an appropriate grace period.
- Seasonal and evergreen items use different thresholds.
- Any price recommendation shows expected margin impact.
How to measure success
Track aging inventory value, weeks of cover, no-sale SKU count, markdown margin, inventory write-offs, and time from alert to merchandising decision.
Next step
Start with one category and one location. Validate inventory value, sell-through, and inbound units before using the report for buying or markdown decisions. Book a demo to design the first watchlist.