NPV Calculator

Net present value of a series of cash flows at a discount rate, with the present value of each period.

%

Separate with commas or new lines. Use a negative number for the initial investment.

Net present value

$22,614.27

Present value of inflows
$122,614.27
Present value of outflows
$100,000.00
Undiscounted net cash flow
$50,000.00
Profitability index
1.23
IRR
17.09%

A positive NPV means the investment earns more than the discount rate.

Discounted cash flows5 rows
PeriodCash flowDiscount factorPresent valueCumulative PV
0-$100,000.001-$100,000.00-$100,000.00
1$30,000.000.9259$27,777.78-$72,222.22
2$35,000.000.8573$30,006.86-$42,215.36
3$40,000.000.7938$31,753.29-$10,462.07
4$45,000.000.735$33,076.34$22,614.27

How it works

Net present value converts every future cash flow into today's dollars using a discount rate, then adds them up. A dollar received in five years is worth less than a dollar today because today's dollar could be invested in the meantime.

Enter the initial investment as a negative number in period 0, followed by the expected cash flow for each later period. The discount rate is usually your cost of capital or the return you could earn on an investment of similar risk.

If NPV is positive, the project returns more than the discount rate and adds value. When comparing projects of similar size, the higher NPV is generally the better choice.

Formula

NPV = Σ Cₜ ÷ (1 + r)ᵗ for t = 0 to n, where Cₜ is the cash flow in period t and r the discount rate.

Questions people ask

How is this different from Excel's NPV function?

Excel's NPV() treats the first value as occurring one period from now. This calculator treats the first value as period 0 (today, undiscounted), which matches the textbook definition. In Excel, use =NPV(rate, C1:Cn) + C0.

What discount rate should I use?

Use your weighted average cost of capital (WACC) or a required rate of return that reflects the project's risk. Riskier projects warrant higher rates.

Can I use monthly cash flows?

Yes, as long as the discount rate matches the period. Convert an annual rate to monthly with (1 + annual)^(1/12) − 1.