CalcOpenly

NPV and IRR calculator (with MIRR and payback)

Calculate NPV, IRR, modified IRR, payback and discounted payback for a series of periodic cash flows, with the NPV profile across rates.

Updated Checked against 6 worked examples

One amount per period, separated by spaces, new lines or a comma and a space; 10,000 reads as ten thousand. Outflows are negative.
%
More options
%
Rate paid on the money used to fund the outflows.
%
Rate earned when the inflows are reinvested.
Try
Net present value
$
Net present value: $1,307.29
Shown to 2 decimal places, half-even
Internal rate of return
16.34%
Modified IRR
15.15%
Payback period
2.41periods
Discounted payback period
2.74periods
Profitability index
1.1307

The project is worth $1,307.29 more than it costs in today's money at a 10% discount rate. Its IRR is 16.34% and it pays back after 2.41 periods.

NPV profile

$0$2,000$4,0000%5%10%15%20%Discount rateNPVNPV = 0Discount rateIRR 16.34%

Cumulative cash flow

−$10K−$5,000$00123Period
Cumulative (payback 2.41)Cumulative present value (payback 2.74)
Cash flows and discounting (4 rows)
PeriodCash flowDiscount factorPresent valueCumulativeCumulative PV
0−$10,000.001−$10,000.00−$10,000.00−$10,000.00
1$3,000.000.9091$2,727.27−$7,000.00−$7,272.73
2$4,200.000.8264$3,471.07−$2,800.00−$3,801.65
3$6,800.000.7513$5,108.94$4,000.00$1,307.29
How it's calculated S
  1. Discount every flow to period 0

    NPV=−10,000(1+0.1)0+3,000(1+0.1)1+4,200(1+0.1)2+6,800(1+0.1)3=1,307.29NPV = \frac{-10{,}000}{(1+0.1)^{0}} + \frac{3{,}000}{(1+0.1)^{1}} + \frac{4{,}200}{(1+0.1)^{2}} + \frac{6{,}800}{(1+0.1)^{3}} = 1{,}307.29

    CF₀ sits at t = 0 and is not discounted. Excel's NPV() treats its first value as arriving at t = 1, so Excel returns this NPV divided by (1 + r).

  2. Internal rate of return

    ∑t=03CFt(1+IRR)t=0  ⇒  IRR=16.340560%\sum_{t=0}^{3} \frac{CF_t}{(1+IRR)^t} = 0 \;\Rightarrow\; IRR = 16.340560\%

    Bracketed on a rate grid, narrowed by bisection, then refined with Newton's method: 16 steps, |NPV| = 8 × 10⁻⁴⁶ at the root.

  3. Modified IRR

    FVin=∑CFt>0CFt(1+0.12)3−t=15,267.20,PVout=∑CFt<0CFt(1+0.1)t=−10,000.00FV_{\text{in}} = \sum_{CF_t>0} CF_t(1+0.12)^{3-t} = 15{,}267.20,\quad PV_{\text{out}} = \sum_{CF_t<0} \frac{CF_t}{(1+0.1)^t} = -10{,}000.00
  4. MIRR

    MIRR=(15,267.2010,000.00)1/3−1=15.1471%MIRR = \left(\frac{15{,}267.20}{10{,}000.00}\right)^{1/3} - 1 = 15.1471\%
  5. Payback

    Cumulative cash turns non-negative after 2.4118 periods, and cumulative present value after 2.7441.

    Within the crossing period, cash is assumed to arrive evenly (linear interpolation).

About the NPV and IRR calculator

NPV discounts each period's cash flow back to the start and adds them up: NPV = Σ CF_t ÷ (1 + r)^t, with the first flow at period 0. IRR is the discount rate at which NPV is exactly zero. MIRR instead assumes outflows are funded at a finance rate and inflows reinvested at a reinvestment rate. Payback counts the periods until cumulative cash turns positive, and discounted payback does the same with present values.

With the defaults, an outlay of 10,000 followed by 3,000, 4,200 and 6,800, discounted at 10%, the NPV is 1,307.29 and the IRR is 16.34%. The money comes back after 2.41 periods, or 2.74 periods counting the time value of money. MIRR, at a 10% finance rate and 12% reinvestment rate, is 15.15%.

A period can be a year, a quarter or a month, as long as the rate is for the same period. Flows that change sign more than once can have several IRRs; the result then warns you and MIRR is the better guide.

Worked examples

Four-year project at 10%

Cash flows, period 0 first
-10000, 3000, 4200, 6800
Discount rate (per period)
10%
Finance rate for MIRR
10%
Reinvestment rate for MIRR
12%
Net present value
1,307.29
Internal rate of return
16.34056%
Modified IRR
15.147134%
Payback period
2.41 periods
Discounted payback period
2.74 periods

Checked against: Python decimal (prec 50) script: textbook NPV, IRR by 300-step bisection, Excel MIRR definition. Microsoft's NPV example gives 1,188.44 for these flows with the first at t = 1; ×1.1 = 1,307.28

Microsoft MIRR example, five years

Cash flows, period 0 first
-120000 39000 30000 21000 37000 46000
Discount rate (per period)
10%
Finance rate for MIRR
10%
Reinvestment rate for MIRR
12%
Modified IRR
12.609413%
Internal rate of return
13.073554%
Payback period
3.81 periods

Checked against: Microsoft MIRR documentation: 12.61% (five years); Python decimal gives 12.6094130366 and IRR 13.0735539471

Microsoft MIRR example, three years

Cash flows, period 0 first
-120000 39000 30000 21000
Discount rate (per period)
10%
Finance rate for MIRR
10%
Reinvestment rate for MIRR
12%
Modified IRR
-4.804466%
Internal rate of return
-14.405951%

Checked against: Microsoft MIRR documentation: −4.80% after three years; Python decimal gives −4.8044655250

Microsoft IRR example, five years

Cash flows, period 0 first
-70000 12000 15000 18000 21000 26000
Discount rate (per period)
10%
Finance rate for MIRR
10%
Reinvestment rate for MIRR
12%
Internal rate of return
8.663095%
Net present value
-2,683.31

Checked against: Microsoft IRR documentation: 8.7% after five years; Python decimal bisection gives 8.6630948037

Questions

How do you calculate NPV?

Divide each cash flow by (1 + r)^t, where t is its period, and add the results, counting the initial outlay at t = 0. At 10%, the flows −10,000, 3,000, 4,200 and 6,800 are worth −10,000 + 2,727.27 + 3,471.07 + 5,108.94 = 1,307.29. A positive NPV means the project earns more than the discount rate.

Why does Excel's NPV function give a different answer?

Excel's NPV treats the first value in its range as arriving at the end of period 1, not at period 0. Putting all four default flows into =NPV(10%, …) returns 1,188.44, which is 1,307.29 ÷ 1.1. To get the usual NPV, leave the initial outlay out of the function and add it separately: =NPV(10%, 3000, 4200, 6800) − 10000.

How is IRR calculated?

IRR is the rate that makes NPV zero, and it has to be found by trial: there is no general formula beyond four periods. For the default flows it is 16.34%. Excel's IRR starts from a 10% guess and returns #NUM! if it has not converged after 20 tries; here the search scans rates from −99.9% to 1,000% and then refines the root.

What is the difference between IRR and MIRR?

IRR implicitly assumes every inflow is reinvested at the IRR itself; MIRR uses a stated reinvestment rate and finance rate, and it always has a single answer. In Microsoft's example, −120,000 followed by 39,000, 30,000, 21,000, 37,000 and 46,000 has an IRR of 13.07% but an MIRR of 12.61% at a 10% finance rate and 12% reinvestment rate.

What is the difference between payback and discounted payback?

Payback counts plain cash; discounted payback counts present values, so it is always longer when the rate is positive. For the default flows, cumulative cash is −2,800 after two periods and the third period's 6,800 covers it in 0.41 of a period, a payback of 2.41. At 10% the discounted payback is 2.74 periods. Neither measure counts cash after the payback point.

How accurate is the NPV and IRR calculator?

Accuracy depends on your inputs and the method's assumptions. Decimal arithmetic uses 50 significant digits, but estimates, numerical methods and source data can be less precise; the displayed rounding does not remove those limits. It is checked against 6 worked examples whose answers come from independent sources; for example, “Four-year project at 10%” is checked against Python decimal (prec 50) script: textbook NPV, IRR by 300-step bisection, Excel MIRR definition. Microsoft's NPV example gives 1,188.44 for these flows with the first at t = 1; ×1.1 = 1,307.28.

Where does the method come from?

Microsoft Excel IRR function; Microsoft Excel MIRR function; Microsoft Excel NPV function; Brealey, Myers & Allen — Principles of Corporate Finance, ch. 5 (NPV and other investment criteria).

About this calculator

NPV=∑t=0nCFt(1+r)t,∑t=0nCFt(1+IRR)t=0,MIRR=(FVinflows−PVoutflows)1/n−1NPV = \sum_{t=0}^{n} \frac{CF_t}{(1+r)^t},\qquad \sum_{t=0}^{n} \frac{CF_t}{(1+IRR)^t} = 0,\qquad MIRR = \left(\frac{FV_{\text{inflows}}}{-PV_{\text{outflows}}}\right)^{1/n} - 1

Sources

  1. Microsoft Excel IRR function
  2. Microsoft Excel MIRR function
  3. Microsoft Excel NPV function
  4. Brealey, Myers & Allen — Principles of Corporate Finance, ch. 5 (NPV and other investment criteria)

For planning only. Lenders, tax authorities and markets apply their own rounding, fees and rules; confirm figures with them before you commit.

Checked against references

6 worked examples with independently sourced answers ship with this calculator. They run in the test suite; you can run them here too.

Related calculators

Allow optional Google Analytics to measure page visits? Calculators work either way. Privacy and choices

Optional analytics: off.