In short
Inventory control decides how much to order or make and when, so that material is available without locking up excess working capital. It splits into two worlds: independent demand items (finished goods, spares, consumables) handled by statistical models such as EOQ, reorder point and safety stock; and dependent demand items (components, sub-assemblies, raw material) handled by Material Requirements Planning (MRP), which explodes a bill of materials against a master production schedule. The topic carries heavy marks in GATE (Industrial Engineering section), university Industrial Engineering papers and in placement tests for Maruti Suzuki, Tata Motors, Bosch, Ashok Leyland, L&T, BHEL, Hindustan Unilever, Flipkart/Amazon supply-chain roles and every ERP implementation job. Inventory is also typically the largest current asset on an Indian manufacturer's balance sheet, so planners are judged on turnover ratio and stock-out rate together.
Explained
Why inventory exists, and its costs
- Functions: decouple successive stages, absorb demand and lead-time variability, allow economic lot sizes, buffer against supply disruption, exploit price discounts, and hold seasonal/pipeline stock.
- Types by function: cycle (lot-size) stock, safety (buffer) stock, pipeline/in-transit stock, anticipation stock, decoupling stock, dead stock.
- Types by stage: raw material, bought-out components, work-in-process (WIP), finished goods, spares, consumables and tooling.
- Four cost heads:
- Purchase/production cost (C per unit) - relevant only if price varies with quantity.
- Ordering/setup cost (Co per order or setup) - requisition, follow-up, inspection, paperwork; for in-house items it is the set-up cost.
- Carrying/holding cost (Ch per unit per year) = interest on capital + storage + insurance + obsolescence + handling; usually taken as Ch = i × C, with i about 15-25% per year in Indian industry.
- Shortage/stock-out cost (Cs) - lost contribution, expediting, line stoppage, penalty; hardest to measure, so it is often replaced by a service level target.
- Cycle stock cost rises with lot size, ordering cost falls with lot size - EOQ is the balance point.
Selective inventory control (classification)
No firm can control 20,000 items equally tightly; classification decides where effort goes.
| Scheme | Basis | Classes |
|---|---|---|
| ABC | Annual consumption value | A: ~10% items, ~70% value; B: ~20%/~20%; C: ~70%/~10% |
| VED | Criticality to production | Vital, Essential, Desirable |
| FSN | Movement rate | Fast, Slow, Non-moving |
| HML | Unit price | High, Medium, Low |
| SDE | Availability of supply | Scarce, Difficult, Easy |
| XYZ | Value of stock lying in store | X (high), Y, Z |
| SOS | Seasonality | Seasonal, Off-seasonal |
| GOLF | Source of supply | Government, Ordinary, Local, Foreign |
- Policy: A items - tight control, frequent small orders, perpetual records, low safety stock, continuous review; C items - bulk orders, two-bin or periodic review, loose control.
- Combinations are what Indian stores actually use: an A-V item (costly and vital, e.g. a turbine rotor spare) is never stocked out; a C-D item is ordered once a year. Non-moving (N) and dead stock are reviewed for disposal.
- ABC is drawn as a Pareto / distribution-by-value curve: items sorted by descending annual value, cumulative value plotted against cumulative item count.
Deterministic inventory models
- Assumptions of basic EOQ (Wilson/Harris model): constant and known demand, constant lead time, instantaneous replenishment of the whole lot, no shortages, fixed price, infinite horizon, single item. Stock profile is a sawtooth.
- Derivation outline: TC(Q) = DC + (D/Q)Co + (Q/2)Ch. Set dTC/dQ = 0 → −DCo/Q² + Ch/2 = 0 → Q\* = √(2DCo/Ch). At the optimum, annual ordering cost = annual carrying cost, and TC is flat near the optimum (a ±20% error in Q raises variable cost by only about 2% - 1.7% at +20%, 2.5% at −20%) - the model's most useful practical property.
- EBQ / finite replenishment rate (manufacturing model): production p > demand d, stock builds at (p − d) during the run. Lot size is inflated by 1/√(1 − d/p).
- EOQ with planned shortages (back-ordering): optimal lot and maximum shortage follow from the ratio Cs/(Ch + Cs); allowing shortages raises the lot size.
- Quantity discounts: all-units discount is solved by computing EOQ at each price, replacing infeasible EOQs by the nearest feasible price-break quantity, then comparing total cost including material cost for each candidate. Never compare only the variable costs.
- Limitations: real demand is lumpy and uncertain, lead times vary, Co and Ch are estimates, multi-item budget and space constraints are ignored (handled by Lagrange multipliers), and for dependent demand the whole premise of smooth independent demand fails - which is why MRP exists.
Probabilistic models: reorder point and safety stock
- Reorder level (ROL/ROP): stock level at which a replenishment is triggered = expected demand during lead time + safety stock.
- Safety stock covers only the variability during the lead time, not the whole cycle. Higher service level → higher z → higher SS, with sharply diminishing returns above 95%.
- Service level definitions: *cycle service level* = probability of no stock-out in a cycle (used with z); *fill rate* = fraction of demand met from stock. They are not equal.
- Review systems:
- Q-system (continuous review, fixed order quantity): order a fixed Q whenever stock falls to ROL. Needs perpetual records; lower safety stock; suits A items.
- P-system (periodic review, fixed interval): review every T; order up to a target level. Order quantity varies; safety stock must cover T + L, hence larger; convenient for grouped ordering from one supplier.
- Two-bin system: the second bin is the ROL - when it is opened, you order. Cheap, visual, used for C items, fasteners and consumables.
- s-S (min-max) and base-stock (S, one-for-one) systems for spares.
- Inventory valuation (Indian practice): Ind AS 2 / AS 2 require inventories at the lower of cost and net realisable value; cost by FIFO or weighted average - LIFO is not permitted. Physical verification and discrepancies are reported under CARO. Government stores follow the General Financial Rules (GFR) 2017 and GeM procurement; Indian Railways uses its own Stores Code with ABC/VED-type classification. (Thresholds and rules here are revised from time to time - verify the current version before quoting.)
MRP: inputs, logic and outputs
- Core idea: demand for components is dependent - it is *calculated* from the schedule of parent items, not forecast. MRP answers what to order, how much, and when to release it.
- Three inputs:
- Master Production Schedule (MPS) - what end items are to be completed, in what quantity, in which period (time bucket, usually a week).
- Bill of Materials (BOM) - the product structure tree with quantity-per and levels; low-level coding assigns each part the lowest level at which it appears, so all its requirements are netted at once.
- Inventory records file - on-hand stock, scheduled receipts (open orders), lead time, lot-size rule, safety stock, scrap allowance.
- MRP computation per item, per period:
- Gross requirement = demand from all parents (plus any independent/service demand).
- Projected available = on hand at start + scheduled receipts − gross requirement.
- Net requirement = gross requirement − on hand − scheduled receipts + safety stock (zero if negative).
- Planned order receipt = net requirement adjusted to the lot-size rule.
- Planned order release = receipt offset backwards by the lead time (time phasing).
- Explode the planned releases into the children, level by level, top-down.
- Lot-sizing rules: lot-for-lot (exact net requirement - minimum inventory, maximum set-ups, used for costly/JIT items), EOQ, Periodic Order Quantity / POQ (cover a fixed number of periods), fixed order quantity / multiples, least unit cost, least total cost / part-period balancing, Silver-Meal heuristic, and Wagner-Whitin (dynamic programming, optimal but rarely used in practice).
- Outputs: planned order releases (the primary output), purchase and shop order schedules, rescheduling/exception notices, pegging reports (which parent caused a requirement), inventory projections and performance reports.
- Key refinements: regenerative (full recomputation, typically weekly) vs net-change MRP (only affected items); firm planned orders and planning time fences to stop system nervousness (small MPS changes causing large lower-level churn); safety lead time instead of safety stock for purchased items; phantom assemblies and planning BOMs for options.
- Extensions: Closed-loop MRP adds capacity feedback; CRP (Capacity Requirements Planning) converts planned orders into load on work centres; MRP II adds the financial and business plan, making one integrated plan in units and rupees; ERP (SAP, Oracle, Infor, Zoho/Tally at smaller scale) extends it across the whole enterprise; DRP applies the same logic to distribution warehouses.
- Advantages: valid priorities and realistic delivery promises, lower WIP, visibility of future needs, systematic rescheduling, supports engineering changes.
- Limitations: needs very accurate BOM and stock records (above ~98-99%; cycle counting is essential), assumes fixed lead times and infinite capacity in basic MRP, computationally heavy, nervous to MPS changes, and gives a "push" plan - whereas a pull/kanban system reacts to actual consumption. Most Indian plants use MRP for purchased and long-lead items and kanban for repetitive high-volume feeding.
Key points
- Independent demand - forecast (finished goods, spares); dependent demand - calculated from parents by MRP.
- EOQ - the lot size where annual ordering cost equals annual carrying cost; cost curve is flat near it.
- Carrying cost - usually i × unit cost, i ≈ 15-25%/yr in India, covering interest, storage, insurance and obsolescence.
- EBQ - EOQ for in-house production, inflated by 1/√(1 − d/p) because stock builds gradually.
- Reorder level - demand during lead time plus safety stock; it triggers the order, it does not fix its size.
- Safety stock - covers lead-time variability only; SS = z × σ over lead time.
- σ over lead time = σd√L when only demand varies; use √(Lσd² + d²σL²) when lead time also varies.
- Q-system - fixed quantity, continuous review, less safety stock; P-system - fixed interval, variable quantity, more safety stock.
- Two-bin system - visual ROL control for cheap C items.
- ABC - by annual consumption value; VED - by criticality; FSN - by movement; use them in combination.
- Quantity discounts - compare total cost *including* material cost at each feasible candidate quantity.
- MRP inputs - MPS, BOM, inventory records file; output - time-phased planned order releases.
- Net requirement = gross − on hand − scheduled receipts + safety stock, floored at zero.
- Time phasing / lead-time offsetting - a receipt required in week t is released in week t − L.
- Low-level coding - net a part only at the lowest level it appears, so all parents are counted once.
- MRP II - closed-loop MRP plus capacity and finance; ERP extends it enterprise-wide.
- Inventory turnover = annual cost of goods sold / average inventory; higher is leaner, but check the stock-out rate with it.
- Ind AS 2 - inventory at lower of cost and NRV; FIFO or weighted average; LIFO not allowed.
Formulas and examples
Total annual cost: TC = D·C + (D/Q)·Co + (Q/2)·Ch; minimum variable cost = √(2 D Co Ch) (₹/yr)
Number of orders N = D/Q\*; cycle time t = Q\*/D (years) = 365 Q\*/D (days)
EBQ (finite production rate p, demand d, same units): Q\* = √[2 D Co / (Ch (1 − d/p))]; Max inventory = Q\*(1 − d/p); Run time = Q\*/p
EOQ with back-orders: Q\* = √(2 D Co / Ch) × √[(Ch + Cs)/Cs]; max shortage = Q\*·Ch/(Ch + Cs)
Reorder level: ROL = d̄ × L + SS, where d̄ = average demand rate, L = lead time (same time unit)
Safety stock: SS = z × σL; σL = σd √L (demand varies only); σL = √(L σd² + d̄² σL,time²) (both vary)
z: 1.28 (90%), 1.645 (95%), 2.05 (98%), 2.33 (99%) cycle service level
P-system order quantity: Q = d̄ (T + L) + SS − (stock on hand + on order)
Average inventory = Q/2 + SS; Inventory turnover = annual COGS / average inventory value; Days of supply = 365/turnover
MRP: Net req = Gross req − On hand − Scheduled receipts + Safety stock (≥ 0); Order release period = required receipt period − lead time
Example 1 - EOQ and total cost. A pump maker buys a casting: D = 10,000/yr, Co = ₹400/order, C = ₹50/unit, i = 20%/yr.
- Ch = 0.20 × 50 = ₹10 per unit per year.
- Q\* = √(2 × 10,000 × 400 / 10) = √800,000 = 894 units.
- Orders per year = 10,000/894.4 = 11.18; cycle = 365/11.18 ≈ 32.6 days.
- Ordering cost = 11.18 × 400 = ₹4,472; carrying = (894.4/2) × 10 = ₹4,472 (equal, as expected).
- Minimum variable cost = √(2 × 10,000 × 400 × 10) = ₹8,944/yr; with material, TC = 5,00,000 + 8,944 = ₹5,08,944/yr.
- If the buyer insists on ordering 1,200: TC(var) = (10,000/1,200)×400 + 600×10 = 3,333 + 6,000 = ₹9,333 - only 4.3% worse, showing the flatness of the curve.
Example 2 - Economic batch quantity. A gear is machined in-house: D = 24,000/yr over 240 working days (d = 100/day), p = 200/day, set-up cost ₹1,500, Ch = ₹20/unit/yr.
- 1 − d/p = 1 − 100/200 = 0.5.
- Q\* = √(2 × 24,000 × 1,500 / (20 × 0.5)) = √(72,000,000/10) = √7,200,000 = 2,683 units.
- Run time = 2,683/200 = 13.4 days; cycle = 2,683/100 = 26.8 days; set-ups = 24,000/2,683 = 8.94/yr.
- Max inventory = 2,683 × 0.5 = 1,342; average = 671 → carrying = ₹13,416; set-up = 8.94 × 1,500 = ₹13,416; total ₹26,833/yr.
- Plain EOQ would give √(2×24,000×1,500/20) = 1,897 units - using it here understates the lot by 29%.
Example 3 - Reorder level and safety stock. Average demand 500 units/week, σ of weekly demand 80, lead time 3 weeks (constant), Ch = ₹50/unit/yr.
- σL = 80 × √3 = 138.6 units.
- At 95% service level: SS = 1.645 × 138.6 = 228 units; ROL = 500 × 3 + 228 = 1,728 units.
- At 99%: SS = 2.33 × 138.6 = 323 units; ROL = 1,823 units. The last 4 percentage points of service cost (323 − 228) × 50 = ₹4,750/yr extra carrying.
Example 4 - Quantity discount (all-units). D = 5,000/yr, Co = ₹500/order, i = 25%/yr. Price: ₹100 for Q < 1,000; ₹98 for 1,000 ≤ Q < 2,500; ₹95 for Q ≥ 2,500.
| Price ₹ | Ch = 0.25C | EOQ | Feasible Q used | Material ₹ | Ordering ₹ | Carrying ₹ | Total ₹ |
|---|---|---|---|---|---|---|---|
| 100 | 25.00 | 447 | 447 | 5,00,000 | 5,590 | 5,590 | 5,11,180 |
| 98 | 24.50 | 452 (infeasible) | 1,000 | 4,90,000 | 2,500 | 12,250 | 5,04,750 |
| 95 | 23.75 | 459 (infeasible) | 2,500 | 4,75,000 | 1,000 | 29,688 | 5,05,688 |
- Order 1,000 units at ₹98 - the deepest discount is *not* optimal: moving from 1,000 to 2,500 adds ₹17,438 of carrying cost while saving only ₹15,000 on material and ₹1,500 on ordering, a net ₹938 worse.
Example 5 - MRP explosion. Product A = 2 B + 1 C; each B = 3 D. Lead times: A 1 week, B 2 weeks, D 1 week. On hand: A 20, B 50, D 100. No scheduled receipts, no safety stock. Lot rules: A and D lot-for-lot; B in multiples of 200. MPS for A: 100 in week 6, 150 in week 8.
| Item (LT, rule) | Row | W2 | W3 | W4 | W5 | W6 | W7 | W8 |
|---|---|---|---|---|---|---|---|---|
| A (1, L4L) | Gross req | 100 | 150 | |||||
| Projected available 20 | 20 | 20 | 20 | 20 | 0 | 0 | 0 | |
| Net req | 80 | 150 | ||||||
| Planned receipt | 80 | 150 | ||||||
| Planned release | 80 | 150 | ||||||
| B (2, ×200) | Gross req (2 × A release) | 160 | 300 | |||||
| Projected available 50 | 50 | 50 | 50 | 90 | 90 | 190 | 190 | |
| Net req | 110 | 210 | ||||||
| Planned receipt | 200 | 400 | ||||||
| Planned release | 200 | 400 | ||||||
| D (1, L4L) | Gross req (3 × B release) | 600 | 1,200 | |||||
| Projected available 100 | 100 | 0 | 0 | 0 | 0 | 0 | 0 | |
| Net req | 500 | 1,200 | ||||||
| Planned receipt | 500 | 1,200 | ||||||
| Planned release | 500 | 1,200 |
- Week-5 B stock = 50 + 200 − 160 = 90; week-7 = 90 + 400 − 300 = 190. Carrying 190 spare B is the price of the 200-multiple rule.
| EOQ / reorder point | MRP | |
|---|---|---|
| Demand type | Independent, smooth | Dependent, lumpy |
| Trigger | Stock falls to ROL | Parent schedule (future need) |
| Horizon | Implicit, continuous | Explicit time buckets |
| Data needed | D, Co, Ch, σ, L | MPS, BOM, inventory records |
| Typical items | Spares, consumables, finished goods | Components, sub-assemblies |
Where it is used
- Automotive and auto components: Maruti Suzuki, Tata Motors, Bajaj, Bosch and their tier-1 suppliers run MRP/ERP for purchased parts with kanban and milk-run supply for high-volume feeding; vendor-managed and consignment stock at the plant gate.
- Capital goods, power and process plants: BHEL, L&T, NTPC and refineries use ABC-VED spares policies - vital insurance spares are stocked regardless of slow movement, while C-class hardware goes on two-bin or rate contracts.
- Public procurement and railways: Indian Railways stores depots, defence and hospital drug stores classify by ABC, VED and FSN; purchases follow GFR 2017 and the GeM portal.
- Retail, FMCG and e-commerce: HUL, ITC, DMart, Flipkart and Amazon India use periodic review and DRP across distribution centres, with service-level-driven safety stock per SKU-location.
- Job roles: materials/stores manager, production planner, PPC engineer, supply-chain analyst, SAP MM/PP consultant, demand planner; interview focus is EOQ arithmetic, ABC policy and MRP explosion.
- Performance measures used on the job: inventory turnover, days of inventory, fill rate, stock-out frequency, non-moving and obsolete stock value, inventory accuracy from cycle counting.
Interview questions
- Q: At EOQ, what is the relation between ordering and carrying cost? A: They are equal, and the total variable cost equals √(2DCoCh); the total-cost curve is flat near the optimum, so modest deviations cost little.
- Q: If the ordering cost halves, what happens to EOQ? A: EOQ falls by a factor of √2, that is to about 70.7% of its earlier value, since Q\* varies as √Co.
- Q: Why is the EBQ larger than the EOQ for the same data? A: Because production and consumption overlap, average stock is only (1 − d/p)Q/2, so carrying cost per unit lot is lower and the economic lot grows by 1/√(1 − d/p).
- Q: Does safety stock depend on the order quantity? A: No - it depends on demand and lead-time variability and the chosen service level; the order quantity sets the cycle stock, not the buffer.
- Q: Difference between reorder level and order quantity? A: ROL is the stock level that triggers replenishment (lead-time demand plus safety stock); the order quantity is how much is then bought, typically the EOQ.
- Q: ABC versus VED - can an item be C and V at the same time? A: Yes; a cheap O-ring can stop a compressor. Low value, high criticality - stock it generously but with simple control.
- Q: Why can't you forecast demand for a gearbox shaft in an MRP system? A: Its demand is dependent - it is derived exactly from the parent gearbox schedule through BOM explosion; forecasting it would double-count uncertainty.
- Q: What are the three inputs to MRP and which error hurts most? A: MPS, BOM and the inventory records file; inaccurate BOM or stock records destroy the whole plan, because MRP trusts them absolutely.
- Q: What is MRP system nervousness and how is it controlled? A: Small changes in the MPS cascade into large rescheduling at lower levels; controlled by planning time fences, firm planned orders, frozen near-term schedule and net-change processing.
- Q: MRP II versus ERP? A: MRP II is closed-loop MRP plus capacity planning and a financial plan for manufacturing; ERP extends the same integrated database to finance, sales, HR and the whole enterprise.
- Q: In a quantity-discount problem, why must purchase cost be included? A: Because the price itself changes between candidates; comparing only ordering and carrying costs would always favour the smallest lot and miss the material saving.
- Q: Would you use MRP or kanban for a high-volume fastener from a local supplier? A: Kanban or a two-bin pull system - demand is steady and lead time short, so consumption-triggered replenishment is simpler than time-phased planning.
Common mistakes
- Using inconsistent time units - monthly demand with annual carrying cost, or daily demand with weekly lead time - in EOQ and ROL.
- Taking carrying cost as the interest rate instead of i × C, or forgetting that Ch changes with the price in discount problems.
- Comparing only variable costs across price breaks, and so wrongly choosing the largest discount quantity.
- Applying plain EOQ to an in-house manufactured batch instead of EBQ with the (1 − d/p) factor.
- Computing safety stock from σ of demand over a *year* or a *cycle* rather than over the lead time (missing the √L).
- In MRP, forgetting to subtract scheduled receipts, forgetting to offset the release by lead time, or netting a common part at two different levels instead of its low-level code.
- Treating the MRP planned *receipt* date as the *release* date, which makes every lower-level order late by one lead time.
Related topics
Production planning and control · Operations research basics · Lean manufacturing and Six Sigma · Engineering economics and costing · Supply chain and logistics management · Forecasting techniques