Net Present Value (NPV)

Excel Formulas › Financial

All versionsNPV

NPV tells you what a stream of future cash flows is worth in today’s money, given a discount rate — the core test for whether an investment pays off. The one gotcha: NPV discounts every value you give it, so the initial outlay is handled separately.


Quick formula: for a discount rate in B1, future cash flows in B3:B7, and an initial cost in B2:
=NPV(B1, B3:B7) + B2
NPV discounts the future flows to today; you then add the initial investment (entered as a negative number in B2).

Functions used (tap for the full reference guide):

The example

Invest $1,000 today; receive $300/year for 4 years; discount at 8%.

AB
1Discount rate8%
2Initial (today)-$1,000
3Year 1-4 each$300
4NPV-$6.04

The formula

The project’s NPV (a hair negative — just misses an 8% return):

=NPV(B1, B3:B6) + B2 // discount four $300 flows, then add -$1,000

How it works

The key is what NPV discounts and what it doesn’t:

  1. NPV(B1, B3:B6) discounts each future cash flow back to today at 8% and sums them — here, ~$993.96.
  2. NPV assumes the first value arrives one period in the future, so the initial investment (which happens now, at time 0) must be excluded from the NPV call.
  3. Add it back separately: + B2, where B2 is -1000. Result: 993.96 - 1000 = -6.04.
  4. A positive NPV means the investment beats the discount rate; negative means it falls short.

The #1 NPV mistake: including the time-0 investment inside the NPV range. That wrongly discounts it by one period. Keep it outside and just add it.

Try it: interactive demo

Live demo

Adjust the discount rate and annual cash flow.

NPV:

Variations

Find the break-even rate (IRR)

IRR is the discount rate where NPV = 0. List the flows with the negative initial first:

=IRR(B2:B6)

Irregular dates? Use XNPV

When cash flows aren’t evenly spaced, XNPV takes a dates column:

=XNPV(B1, values, dates)

Initial flow already in the range

If you must include time 0 inside, discount the rest and add it raw — simplest to keep it outside NPV.

Pitfalls & errors

Discounting the initial investment. Putting the time-0 cost inside the NPV range understates NPV. Exclude it and add it with +.

NPV assumes equal periods. Each value is one period apart. For real, irregular dates use XNPV.

Rate must match the period. Annual flows need an annual rate; monthly flows need a monthly rate.

Practice workbook

📊
Download the free Net Present Value (NPV) practice workbook
The project cash flows with live NPV (initial added outside), plus IRR and an XNPV note, and 4 challenges with answers. No sign-up required.

Frequently asked questions

How do I calculate NPV in Excel?
Use =NPV(rate, future_flows) + initial_investment, where the initial (time-0) amount is negative and kept outside the NPV range, e.g. =NPV(8%, B3:B6) + B2.
Why shouldn't I include the initial investment in the NPV range?
NPV assumes the first value is one period in the future, so an initial outlay placed inside gets discounted by a period it shouldn't be. Add it separately at full value.
What if my cash flows are on irregular dates?
Use XNPV, which takes a values range and a matching dates range: =XNPV(rate, values, dates).

Stop fighting formulas. Learn them in a day.

This recipe is one of hundreds of real-world formulas we teach. Our Excel Formulas & Functions class covers lookups, logic, text, and dynamic arrays hands-on — live in Dallas–Fort Worth, Houston, Austin, Oklahoma City, Denver, or online.

See the Formulas & Functions Class

Related formulas: Future value of savings · Compound interest · CAGR

Function references: NPV · IRR