Quantity-discount EOQ: all-units and incremental
When a supplier offers price breaks, EOQ extends by adding the purchase cost DC to the total-cost function and re-evaluating at each tier. The optimal Q is the feasible tier breakpoint or per-tier Q* that minimises total annual cost including purchase[1].
All-units discount
Every unit in the order is priced at the tier rate determined by the order size. The algorithm: compute the unconstrained Q* at the lowest-tier price; if it is feasible within that tier’s quantity range, that is the answer. If not, push up to the tier breakpoint and evaluate total cost there. Compare against the per-tier Q* at any higher tier whose Q* falls within its quantity range. Pick the lowest total cost.
Incremental discount
Only the units above each breakpoint get the lower price. The per-unit average cost is a weighted blend and is no longer a step function. The derivation runs the same shape but with C(Q) computed as a marginal-cost average rather than a flat tier rate.
The stepwise algorithm
- Sort tiers from lowest to highest price.
- For each tier, compute Q* = sqrt(2DS / (i * C_tier)).
- If Q* falls within the tier’s quantity range, that is a candidate.
- If Q* falls below the tier’s minimum quantity, set candidate Q to the tier breakpoint.
- Evaluate TC at each candidate. Pick the minimum.