Last-time buy calculator
Size a last-time buy from forecast demand, failure returns, safety stock and support years, net of stock in hand, with holding cost and scrap risk.
Cost and businessFree to useHow it worksSourcesWhere it helps
Fills the inputs below with typical figures. Replace any of them with your own.
- Net buy, rounded to MOQ and pack
- 193,500 units
- 193,260 net, 240 added by rounding
- Total cost of the buy, present value
- $1,079,658
- $812,700 purchase and $268,854 holding
- Demand over support
- 174,849 units
- 162,126 production, 12,723 repair
- Safety stock
- 18,310 units
- z = 1.645 on a deviation of 11,132
- Gross requirement
- 198,260 units
- Includes 5,100 for storage loss
- Left on the shelf at end of support
- 19,492 units
- Average value held $434,942
- Redesign route, present value
- $890,921
- Costs $188,737 less than the buy
- Break-even redesign cost
- $538,737
- Above this the last-time buy is cheaper
Check these
- On these figures a redesign or second source costs less than the last-time buy. Weigh risk, requalification time and what happens if demand is higher than forecast.
- Production demand (solid line, circles)
- Repair demand (dashed line, squares)
- Total demand (dotted line, triangles)
- Stock at year end (dash-dot line, diamonds)
Show the data as a table
| Year of support | Production demand | Repair demand | Total demand | Stock at year end |
|---|---|---|---|---|
| 1 | 20,202 | 591 | 20,793 | 177,655 |
| 2 | 19,192 | 797 | 19,989 | 157,515 |
| 3 | 18,232 | 979 | 19,211 | 138,062 |
| 4 | 17,321 | 1,139 | 18,460 | 119,275 |
| 5 | 16,455 | 1,280 | 17,735 | 101,136 |
| 6 | 15,632 | 1,403 | 17,035 | 83,625 |
| 7 | 14,850 | 1,509 | 16,360 | 66,723 |
| 8 | 14,108 | 1,601 | 15,709 | 50,413 |
| 9 | 13,402 | 1,679 | 15,081 | 34,675 |
| 10 | 12,732 | 1,745 | 14,477 | 19,492 |
The same forecast against a smaller or larger buy: purchase, holding and missed units, less salvage on what is left.
- No buy, 0 units$2.58 m
- Half, 96,750 units$1.4 m
- Three quarters, 145,250 units$1.07 mlowest on this forecast
- Recommended, 193,500 units$1.08 m
- A quarter more, 242,000 units$1.39 m
- Half as much again, 290,250 units$1.7 m
- Double, 387,000 units$2.33 m
Show the data as a table
| Item | Total cost (USD) |
|---|---|
| No buy, 0 units | $2.58 m |
| Half, 96,750 units | $1.4 m |
| Three quarters, 145,250 units | $1.07 m |
| Recommended, 193,500 units | $1.08 m |
| A quarter more, 242,000 units | $1.39 m |
| Half as much again, 290,250 units | $1.7 m |
| Double, 387,000 units | $2.33 m |
Sign in to save your inputs and come back to them later.
| Year | Production (parts) | Repair (parts) | Total demand | With storage allowance | Stock at year end | Holding cost, PV |
|---|---|---|---|---|---|---|
| Year 1 | 20,202 | 591 | 20,793 | 20,845 | 177,655 | $60,000 |
| Year 2 | 19,192 | 797 | 19,989 | 20,140 | 157,515 | $50,169 |
| Year 3 | 18,232 | 979 | 19,211 | 19,453 | 138,062 | $40,966 |
| Year 4 | 17,321 | 1,139 | 18,460 | 18,787 | 119,275 | $33,024 |
| Year 5 | 16,455 | 1,280 | 17,735 | 18,139 | 101,136 | $26,190 |
| Year 6 | 15,632 | 1,403 | 17,035 | 17,511 | 83,625 | $20,328 |
| Year 7 | 14,850 | 1,509 | 16,360 | 16,901 | 66,723 | $15,316 |
| Year 8 | 14,108 | 1,601 | 15,709 | 16,311 | 50,413 | $11,049 |
| Year 9 | 13,402 | 1,679 | 15,081 | 15,738 | 34,675 | $7,431 |
| Year 10 | 12,732 | 1,745 | 14,477 | 15,183 | 19,492 | $4,380 |
| Buy | Units | Purchase | Holding, PV | Left over | Overstock written off | Units missed | Shortfall cost, PV | Total, PV |
|---|---|---|---|---|---|---|---|---|
| No buy | 0 | $0 | $0 | 0 | $0 | 174,008 | $2,578,468 | $2,578,468 |
| Half | 96,750 | $406,350 | $75,945 | 0 | $0 | 77,258 | $913,341 | $1,395,636 |
| Three quarters | 145,250 | $610,050 | $160,412 | 0 | $0 | 28,758 | $301,686 | $1,072,148 |
| Recommended | 193,500 | $812,700 | $268,854 | 19,492 | $77,772 | 0 | $0 | $1,079,658 |
| A quarter more | 242,000 | $1,016,400 | $382,491 | 67,992 | $271,287 | 0 | $0 | $1,392,278 |
| Half as much again | 290,250 | $1,219,050 | $495,543 | 116,242 | $463,804 | 0 | $0 | $1,703,286 |
| Double | 387,000 | $1,625,400 | $722,232 | 212,992 | $849,837 | 0 | $0 | $2,326,914 |
How it works
When a supplier announces that a part will be discontinued, you can buy the parts you expect to need for the rest of the product's support life in one last order. This tool sizes that order from the demand forecast, the repair spares the installed base will draw, a safety buffer and the stock you already hold, then prices it with holding cost and tests what a too-small or too-large buy would cost against the price of a redesign.
- Forecast production demand. Time zero is the last-time-buy date. The profile gives the rate at each moment, and each year of the support period takes the quantity that falls inside it. A compound trend steps the rate each year; the other profiles are continuous curves that start at today's run rate. The last year is shortened if the support period is not a whole number of years.
trend: year k = D x (1 + g)^(k − 1) x length; flat: D x length; linear to zero: D x (length − (b^2 − a^2) / (2 S)); exponential: D x (r^a − r^b) / (−ln r), with r = 1 − decline rate - Add parts lost in your own process. A scrap or yield loss in your own build means you must consume more parts than you ship.
parts consumed in production = units shipped / (1 − scrap) - Add repair spares. Units in the field fail and some are repaired with this part. The field base is the installed base plus, if you choose, the units you ship during support, less a yearly retirement of old units. Each year uses the average base for that year.
repair demand in a year = average field base x failure rate x repair yield x length of the year; field base = (installed base + units shipped so far + half this year's shipments) x (1 − retirement)^(mid-year) - Size the safety stock. With a service level, the buffer is a normal quantile times the standard deviation of demand over the period. Each year's demand is taken to vary independently by the coefficient of variation you enter, so the period standard deviation grows with the square root of the sum of squares. With a fixed buffer, the stock is a share of the total demand.
sigma = CV x sqrt(sum of (demand in year k)^2); safety stock = z x sigma, with z = the normal quantile of the service level; or safety stock = buffer % x total demand - Allow for storage loss. Parts that sit in store lose some usable stock each year to moisture, solderability or handling. A part used at time t must have been bought as 1 / (1 − loss)^t parts. Safety stock is held to the end of the period.
gross requirement = sum over years of (demand in year k) / (1 − loss)^(mid-year k) + safety stock / (1 − loss)^S - Net, round and price the buy. Stock on hand and open orders come off the gross requirement. What is left is rounded up to the minimum order quantity and then to a multiple of the pack size.
net buy = max(0, gross requirement − stock on hand − open orders); order = ceiling(max(net buy, MOQ) / pack) x pack; purchase cost = order x unit price - Holding cost and present value. Existing stock is used first, so the new buy sits on the shelf until the old stock runs out. Holding cost is the yearly rate on the average value of the buy on the shelf, discounted to the buy date at the cost of capital. The purchase is paid on day one.
holding cost = sum over years of (holding rate x unit price x average buy on hand x length) / (1 + discount)^(mid-year); total cost of the buy = purchase cost + present value of holding cost - Test the alternative quantities. For quantities from nothing to double the recommendation the tool runs the same demand against the stock and counts what is left over and what is missing. Leftover units are written off at a salvage rate. Units that cannot be covered are bought later at a multiple of the unit price, discounted from the year they are needed.
total cost at a quantity = purchase + holding PV + shortfall units x price x shortfall multiple (discounted) − leftover x price x salvage rate (discounted) - Compare with a redesign. A redesign or second source costs a one-off sum and then buys the same demand, beyond the stock you hold, at the replacement price. The break-even redesign cost is the figure at which both routes cost the same.
redesign route = redesign cost + PV of replacement price x units not covered by existing stock; break-even redesign cost = total cost of the buy − PV of replacement parts
Assumptions
- Time zero is the last-time-buy date; the purchase is paid and delivered then. Open orders count as stock.
- One part per unit shipped and per unit in the field. If a product uses several of the part, scale the demand, the installed base and the stock to parts.
- Existing stock is used before the new buy. Safety stock is a buffer that is still on the shelf at the end of support, so it shows as leftover.
- Storage loss is a steady percentage of the stock per year. Repair spares for units shipped during support are included only when you choose to.
- Yearly demands vary independently by the same coefficient of variation. Real demand is often correlated, so the buffer is a minimum for a volatile product.
- The presets are editorial figures for the product class, not data for your product.
Limits and warnings
- Demand forecasts for discontinued parts are uncertain, and a last-time buy locks them in. Run the quantity table at demand levels you think are possible, not only the expected one.
- Storage life depends on the package, moisture sensitivity level and how the parts are kept. Parts held longer than their rated life may need baking, re-tinning or re-qualification, which this tool does not price.
- Tax, currency, financing terms and write-off rules are not modelled. The cost of capital is a discount rate, not a financing plan.
- Failure rates are taken as constant. Wear-out in a long-life product pushes repair demand up late in life.
- Other options (a buy from a franchised stockist, an aftermarket source, a pin-compatible part) change the shortfall cost; set the shortfall multiple to reflect them.
Sources
The methods and default figures rest on these public sources. The wording here is our own; read the source for its full text.
- DMSMS Lifetime Buy Characterization Via Data Mining of Historical Buys (opens in a new tab), CALCE, University of Maryland (Sandborn, Prabhakar and Feng), DMSMS Conference, Orlando, November 2007. Frames a lifetime buy as stocking enough parts for current and expected demand, and the difficulty of choosing the quantity.
- IEC 62402:2019, Obsolescence management (opens in a new tab), International Electrotechnical Commission, 29 May 2019. The framework for an obsolescence management plan and the choice of resolution (the standard itself is paid; this tool follows only its general approach).
- J-STD-048, Notification Standard for Product Discontinuance (replaces JESD48) (opens in a new tab), IPC, JEDEC and ECIA, Revision A, December 2025. How suppliers must warn customers of a planned discontinuance, which sets the window for a last-time buy. Earlier JESD48 revisions carried the same purpose.
Where it helps
The lifecycle stages this tool serves: 26 stages in 23 lifecycles.
- SoC lifecycle
- FPGA lifecycle
- Automotive lifecycle
- AI accelerator lifecycle
- Process node lifecycle
- Test program lifecycle
- Power and compound lifecycle
- Memory lifecycle
- Space lifecycle
- Photonics lifecycle
- MEMS and sensors lifecycle
- RF lifecycle
- Package technology lifecycle
- Equipment lifecycle
- Industrial lifecycle
- Medical lifecycle
- Avionics lifecycle
- APQP lifecycle
- System lifecycle
- Platform lifecycle
- FPGA chip lifecycle
- Structured ASIC lifecycle
- Product lifecycle
More cost and business tools
- Mask set cost estimator
- Wafer cost model
- Test time and cost estimator
- Die area estimator
- MPW shuttle cost planner
- IP make or buy comparison
- FPGA, structured ASIC or ASIC crossover calculator
- Memory bit cost estimator
- Bill of materials cost roll-up
- Equipment cost of ownership calculator
- Platform reuse savings calculator
Method notev1Formula, ranges, sources and limits
Sizes the final purchase of a discontinued part from the demand forecast, repair spares, safety stock, storage loss, stock on hand and order rules, and prices the buy with holding cost and a comparison with a redesign.
Formula
trend: year k = D x (1 + g)^(k − 1) x length; flat: D x length; linear to zero: D x (length − (b^2 − a^2) / (2 S)); exponential: D x (r^a − r^b) / (−ln r), with r = 1 − decline rate; parts consumed in production = units shipped / (1 − scrap); repair demand in a year = average field base x failure rate x repair yield x length of the year; field base = (installed base + units shipped so far + half this year's shipments) x (1 − retirement)^(mid-year); sigma = CV x sqrt(sum of (demand in year k)^2); safety stock = z x sigma, with z = the normal quantile of the service level; or safety stock = buffer % x total demand; gross requirement = sum over years of (demand in year k) / (1 − loss)^(mid-year k) + safety stock / (1 − loss)^S; net buy = max(0, gross requirement − stock on hand − open orders); order = ceiling(max(net buy, MOQ) / pack) x pack; purchase cost = order x unit price; holding cost = sum over years of (holding rate x unit price x average buy on hand x length) / (1 + discount)^(mid-year); total cost of the buy = purchase cost + present value of holding cost; total cost at a quantity = purchase + holding PV + shortfall units x price x shortfall multiple (discounted) − leftover x price x salvage rate (discounted); redesign route = redesign cost + PV of replacement price x units not covered by existing stock; break-even redesign cost = total cost of the buy − PV of replacement parts
| Input | Unit | Range it holds for | Comes from |
|---|---|---|---|
| Current annual demand | units a year | from 0 | Your figure |
| Demand profile | choice | trend, flat, linear, exponential | Your figure |
| Demand trend | % a year | -100 to 100 | Your figure |
| Exponential decline rate | % a year | 0 to 99 | Your figure |
| Support period | years | 0 to 40 | Your figure |
| Installed base | units | from 0 | Your figure |
| Annual failure or return rate | % a year | 0 to 100 | Your figure |
| Repair yield | % | 0 to 100 | Your figure |
| Field retirement | % a year | 0 to 99 | Your figure |
| Include units shipped during support in the field base | choice | yes, no | Your figure |
| Safety stock method | choice | service, fixed | Your figure |
| Service level | % | 50 to 99.99 | Your figure |
| Demand variability (coefficient of variation) | % of annual demand | 0 to 100 | Your figure |
| Fixed buffer | % of demand | 0 to 100 | Your figure |
| Stock on hand | units | from 0 | Your figure |
| Open orders | units | from 0 | Your figure |
| Scrap in your own process | % | 0 to 50 | Your figure |
| Storage loss | % a year | 0 to 5 | Your figure |
| Storage life of the part | years | from 0 | Your figure |
| Unit price | USD | from 0 | Your figure |
| Holding cost | % of value a year | 0 to 100 | Your figure |
| Cost of capital | % a year | 0 to 100 | Your figure |
| Minimum order quantity | units | from 0 | Your figure |
| Pack multiple | units | from 1 | Your figure |
| Salvage value of leftover stock | % of price | 0 to 100 | Your figure |
| Cost of a missed unit | multiple of price | from 0 | Your figure |
| Redesign or second source cost | USD | from 0 | Your figure |
| Replacement part price | USD | from 0 | Your figure |
Outputs: Demand over the support period (units); Safety stock (units); Gross requirement (units); Net buy, rounded (units); Purchase cost (USD); Total cost of the buy, present value (USD); Break-even redesign cost (USD).
Assumptions
- Time zero is the last-time-buy date; the purchase is paid and delivered then. Open orders count as stock.
- One part per unit shipped and per unit in the field. If a product uses several of the part, scale the demand, the installed base and the stock to parts.
- Existing stock is used before the new buy. Safety stock is a buffer that is still on the shelf at the end of support, so it shows as leftover.
- Storage loss is a steady percentage of the stock per year. Repair spares for units shipped during support are included only when you choose to.
- Yearly demands vary independently by the same coefficient of variation. Real demand is often correlated, so the buffer is a minimum for a volatile product.
- The presets are editorial figures for the product class, not data for your product.
Uncertainty: The arithmetic is exact. The result is as good as the demand forecast, which for a discontinued part is the largest uncertainty. Treat the net buy as the centre of a range and read the alternative-quantity table beside it.
Known limits
- Demand forecasts for discontinued parts are uncertain, and a last-time buy locks them in. Run the quantity table at demand levels you think are possible, not only the expected one.
- Storage life depends on the package, moisture sensitivity level and how the parts are kept. Parts held longer than their rated life may need baking, re-tinning or re-qualification, which this tool does not price.
- Tax, currency, financing terms and write-off rules are not modelled. The cost of capital is a discount rate, not a financing plan.
- Failure rates are taken as constant. Wear-out in a long-life product pushes repair demand up late in life.
- Other options (a buy from a franchised stockist, an aftermarket source, a pin-compatible part) change the shortfall cost; set the shortfall multiple to reflect them.
Where the method comes from
The Hub's own arithmetic for sizing a lifetime buy: forecast, repair spares, a service-level safety stock, storage allowance, rounding and present value. It follows the general framing of obsolescence management in IEC 62402 and the published description of a lifetime buy, and prescribes no published formula.
Reference example, checked by test: Worked example in this method note: 10,000 units a year flat for 5 years, no installed base, 10% fixed buffer, 8,000 on hand plus 2,000 on order, MOQ 1,000 and pack 500, $2 a part, 10% holding cost, no discounting. Demand 50,000, safety 5,000, gross 55,000, net buy 45,000, purchase $90,000, holding $29,000, total $119,000. Demand over the support period 50,000; Safety stock 5,000; Gross requirement 55,000; Net buy, rounded 45,000; Purchase cost 90,000; Total cost of the buy, present value 119,000; Break-even redesign cost 39,000.
Versions
- v1 (2026-10-25): First version, built from the tool idea.
Terms on this page
- Safety stock
- Inventory held above forecast demand to absorb variability in demand or supply.
- Installed base
- The equipment or products already in service with customers.
- Yield
- The share of manufactured units that meet specification, counted at a given step: line yield through the fab, die yield at wafer sort, and assembly and final test yield after packaging.
- MOQ
- The smallest quantity a supplier will accept in one order, set by wafer lot size, test setup or packaging economics.
- Second source
- An alternative qualified supplier of a functionally equivalent part, kept available to protect against supply interruption or price leverage.
- End of support
- The date after which a supplier no longer provides updates, fixes or technical support for a product, software or tool version.
- HTSL
- An unbiased bake, typically 1000 hours at 150 °C or above, that accelerates diffusion driven degradation such as intermetallic growth at wire bonds, stress induced voiding and data retention loss i...
- MSL
- A one to six classification of how long a surface mount plastic package may sit exposed to factory humidity before reflow soldering without risking moisture induced cracking or delamination.
- Pin-compatible
- Having the same package and pin assignment as another part, so a board designed for one can accept the other without layout changes.
Tell us what you're after and leave your email: we'll connect you with the right person on the Hub.