Tutorial: Formula to calculate NPV in Excel

This tutorial covers the formula for calculation of the Net Present Value (“NPV”) in Excel. It assumes the reader is familiar with the concept of net present values and concentrates on how to calculate an NPV in Excel and the relevan formulas and considerations to be aware of when performing this calculation.

The NPV formula can be defined as the sum of present value (PVs) of future cashflows after netting out the initial cashflow / investment made. The NPV is commonly used for capital budgeting and widely throughout many mathematics common in economics and the finance industry. NPV can be formulated as:

What is the best way to calculate an NPV of a set of cashflows?

We will discuss in this tutorial the possible method to calculate the NPV:

  • Calculate from first principles without Excel function
  • Calculate NPV using Excel function NPV()
  • Calculate NPV using (X)NPV
  • Checking the NPV calculation

An excel workbook has been prepared to demonstrate the NPV calculation, it would be best to download the workbook whilst reading this document.

Calculate NPV in Excel from first principles

This approach requires just a small amount more code than using the Excel functions but is more transparent. Calculating the NPV from first principles allows the user to sense check every aspect of NPV calculation.
From the NPV formula written above, we could lay out the calculation in the spreadsheet using following steps.

  • CFi – Bring in the sets of future cash flows to be assessed
  • r – Calculate the discount rate
  • PVi – Calculate the PV of cashflow in each period
  • NPV – Sum up all the PVi, remember to net out any initial cash / investment that has not been accounted in.

Screenshot 1: Manual calculation of NPV

Refer to Screenshot 1. Let us work through an example to calculate NPV of project cashflows in order to calculate the project NPV.

  • CFi (Line 104) – This is the cashflow before funding that we would like to calculate the NPV
  • Annual r (Line 106) – The discount rate used is 10% p.a.
  • Periodic r (Line 107) – The periodic discount rate is calculated as shown above.
  • Discount factor – We would like to discount back the cashflows to the model start date (31-Dec-08), thus calculate the discount factor as shown above.
  • PVi (Line 111) – Calculate the PV of each periodic cashflow in the model by dividing the CFi with the discount factor
  • NPV (Line 112) – Calculate the NPV by summing up the PVi. In this example, the NPV of project cashflows as of model start date is $20.8 million

Using the NPV() function in Excel to calculate Net Present Value

NPV() syntax:

NPV(r, CF1, CF2, …)

We could calculate NPV using Excel function NPV() but it has some limitations:

  • The CFi values in NPV calculation must be equally spaced in time and occur at the end of each period.
  • The CFi must be entered in the correct sequence.
  • The NPV calculation is based on future cash flows. If the first cashflow occurs at the beginning of the first period, the first value must be added to the NPV result.

Using the XNPV() formula in Excel to calculate the NPV

Due to its limitation, the NPV function (without the X) is best avoided. Cashflow models such as in project finance transactions are often presented in more detailed during construction period as opposed to during operations.
For example we often find many project finance models have monthly calculations during construction and perhaps semi-annual / annual during operations.

The more robust function would be XNPV(). It returns the net present value for a schedule of cash flows that are not necessarily periodic. XNPV() is an added-in function in Excel and the syntax is:

XNPV(r, CFi, dates)

Screenshot 2: Using XNPV function

As demonstrated in Screenshot 2, calculate NPV using the Excel XNPV() function yields the same result as manual calculation previous explained in Screenshot 1.

NPV calculation considerations

  • Considerations to be aware of when performing the NPV calculation:
  • Have you got time to do calculate NPV ‘properly’ from first principles?
  • Be aware of the limitations of NPV() function in Excel
  • Be aware of the assumptions when using the XNPV() function
  • Clearly show the units of cashflows and the discount rate in the NPV formula
  • Checking and recheck the NPV calculations at every stage
  • Clearly show if the NPV is pre or post tax
  • Show if the NPV is calculated as real or nominal
  • Select the appropriate discount rate for the risk profile of the project as it is a key variable in the NPV calculation
  • Presenting the NPV results clearly, maybe at a range of discount rates
  • Communicate the shape of the NPV (discount rate) profile, maybe there is more than one root to NPV(x)=0
  • Identify if it is a Project NPV or an Equity NPV (for geared projects)

A substantial benefit of using the XNPV function is that it can be copied and used to calculate the NPV at different discount rates. However this is not a good enough reason for using a black box formula as a quick 1-dimension data table with discount rates as the vertical parameter will provide the same output and can be easily tested.

Screenshot 3: Data table of NPV at various discount rates

Checking the NPV formula and calculation in Excel

NPV is related to the IRR function (internal rate of return). IRR is the rate for which NPV equals zero. We could double-check NPV calculation by firstly calculating the IRR and then feed the IRR back into the NPV calculation as a discount rate.
XNPV(XIRR(…), …) = 0

Screenshot 4: NPV and IRR relationship

Common applications of NPV calculations

Capital budgeting
NPV is an indicator of how much value an investment or project adds. Amongst other factors, theoretically a project with a positive NPV should probably be accepted. Or in financial theory, if there is a choice between two mutually exclusive projects then the one has the higher NPV should be selected.

Calculate project’s Loan Life Cover Ratio (LLCR) using the NPV
LLCR is one of the most commonly used debt metrics in project finance. It provides a measure of the number of times the NPV of projected cashflows over life of the loan can repay the outstanding debt balance.
LLCR = NPV (CFADS over loan life) / Debt balance b/f

Determine debt capacity of certain project
Related to LLCR above, the borrowing capacity is usually worked out by deciding the initial LLCR. For example if the required LLCR is 3.0 to syndicate a loan of a particular project, then the debt capacity of that project is one-third of the NPV of the project’s available cashflows.


You must be logged in to view the Tutorial