Skip to main content
Skip table of contents

NPV

Category: Finance functions

Overview

Description

The Net Present Value (NPV) function calculates the net present value of an investment by using a discount rate and a series of future payments and income. Use when the discount rate is known and you want to calculate the net present value of a cash flow series.

Syntax

NPV('Rate', 'Cashflow' [, "Level"])

Parameters

  • Rate: The rate of the discount over the time of the period.

  • Cashflow: Series of payments or income. Negative values represent outgoing payments and positive values represent incoming payments.

  • Level (optional): The period of time or a sequence over which the calculation is going to be made. If the level is not provided, the lowest time level from 'Cashflow' is selected.

Notes

  • The 'Cashflow' node is the leading input node. A leading input node is a function argument for which we assume the levels to be correct.

  • Rate values are percentages and must be entered and returned as decimals, for example 10% = 0.1.

  • If a "Level" is entered, it should be a level of the 'Cashflow' node. It should also be the lowest level in the dimension that is found in 'Cashflow'.

  • The levels from the 'Rate' input node need to be available in the 'Cashflow' input node.

  • Any level that is in the same dimension as the selected "Level" from the 'Cashflow' node cannot be available in the 'Rate' input node. That also counts for all linked levels in this dimension.

Limitations

The 'Cashflow' data cannot have missing values.


Examples

Discount cash flows by region

This example shows how a rate node and a cashflow node are combined to calculate net present value by region.
The result is aggregated over the year level.

Input node: 'Cashflow'

Year

Region

Value

2025

Asia

+500

2026

Asia

-100

2027

Asia

+200

2025

Europe

-100

2026

Europe

+400

2027

Europe

+500

Input node: 'Rate'

Region

Value

Asia

0.05

Europe

0.1

Formula: NPV('Rate', 'Cashflow') = NPV('Rate', 'Cashflow', "Year")

Region

→ NPV Result

Asia

558,26

Europe

615,33


Related Functions

Function

When to use instead

PV

When you want the present value of an annuity-style payment stream with structured parameters instead.

IRR

When you want the implied discount rate at which NPV = 0 instead of the discounted value itself.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.