NPV (Net Present Value) Calculator

Professional NPV calculator for periodic or dated (XNPV) cash flows. Clear UX, sensitivity table, formulas, worked example, and FAQ.

Full original guide (expanded)

NPV (Net Present Value) Calculator

Compute Net Present Value from periodic or dated (XNPV) cash flows. Includes a sensitivity table and options for timing (end vs beginning of period).

Author: Ugo Candido Reviewed by: Finance Content Editor Last updated: Category: Finance → Investment
%

For periodic NPV, the tool converts to a per-period rate based on frequency; XNPV discounts by Actual/365 days.

Determines the per-period discount rate from the effective annual rate.

Timing of cash flows (periodic)

Beginning-of-period shifts each periodic inflow back by one period.

Period Amount Actions

Enter positive inflows and negative outflows. At least one row is required.

Results

NPV $0.00
PV of inflows $0.00
PV of outflows $0.00
Profitability Index
Per-period rate (periodic)
Mode: Periodic Freq: 1/yr Timing: End Rows: 0

Sensitivity (NPV vs discount rate)

Rate NPV

This professional-grade NPV calculator helps analysts, founders, and students evaluate investments by discounting future cash flows to today’s money. It supports both classic periodic cash flows and date-based XNPV and follows accessibility/performance best practices.

Data Source and Methodology

  • Primary reference: Brealey, Myers, and Allen, Principles of Corporate Finance — DCF chapter. (Publisher page linked in your original.)
  • Function parity: Microsoft’s NPV and XNPV definitions for spreadsheet consistency.

The Formula Explained

Periodic NPV (equal spacing):

\[ \mathrm{NPV} = C_0 + \sum_{t=1}^{N} \frac{C_t}{(1+r_p)^{t-\delta}}, \quad \delta = \begin{cases} 0 & \text{(end)}\\ 1 & \text{(begin)} \end{cases} \]

Per-period rate from effective annual \(r\) and frequency \(f\):

\[ r_p = (1+r)^{1/f} - 1 \]

XNPV (irregular dates, Actual/365):

\[ \mathrm{XNPV} = \sum_{i=0}^{N} \frac{C_i}{(1+r)^{\frac{d_i - d_0}{365}}} \]

How to Use

  1. Enter your discount rate (effective annual). Negative values above −100% are allowed.
  2. Choose Periodic or Dated (XNPV). For periodic, set the frequency and timing.
  3. Enter the initial cash flow at \(t=0\) (usually negative for an investment) and add the cash flows.
  4. Review NPV, PV of inflows/outflows, Profitability Index, and the sensitivity table.

Worked Example

Inputs: \(C_0=-10{,}000\); inflows \(3{,}000, 4{,}000, 4{,}000, 3{,}000\) at the end of years 1–4; \(r=10\%\); \(f=1\).

  1. \(r_p=(1+0.10)^{1/1}-1=0.10\).
  2. PV1 \(=3000/(1.1)^1=2727.27\); PV2 \(=4000/(1.1)^2=3305.79\); PV3 \(=4000/(1.1)^3=3005.26\); PV4 \(=3000/(1.1)^4=2047.10\).
  3. Sum PV(inflows) \(=11{,}085.42\).
  4. NPV \(=-10{,}000+11{,}085.42=\$1{,}085.42\).

Since NPV > 0, the project adds value at a 10% required return.

In-Content Ad Unit

Frequently Asked Questions (FAQ)

When should I use XNPV instead of NPV?

Use XNPV when cash flows occur on irregular dates. It discounts using the actual days between dates divided by 365.

How is the per-period rate determined in periodic mode?

From the effective annual rate \(r\) and frequency \(f\): \(r_p=(1+r)^{1/f}-1\).

What does the “Beginning of period” option do?

It shifts periodic cash flows back one period (annuity due), increasing their PV versus end-of-period timing.

Profitability Index (PI)

\(\mathrm{PI}=\frac{\text{PV(inflows)}}{|\text{Initial investment}|}\). Values above 1 suggest value creation.

Full original guide (expanded)

Your previous content is preserved here (lightly edited for consistency and accessibility) and reflected across the integrated sections above.


Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\\]
','\
Formula (extracted LaTeX)
\[\mathrm{NPV} = C_0 + \sum_{t=1}^{N} \frac{C_t}{(1+r_p)^{t-\delta}}, \quad \delta = \begin{cases} 0 & \text{(end)}\\ 1 & \text{(begin)} \end{cases}\]
\mathrm{NPV} = C_0 + \sum_{t=1}^{N} \frac{C_t}{(1+r_p)^{t-\delta}}, \quad \delta = \begin{cases} 0 & \text{(end)}\\ 1 & \text{(begin)} \end{cases}
Formula (extracted LaTeX)
\[r_p = (1+r)^{1/f} - 1\]
r_p = (1+r)^{1/f} - 1
Formula (extracted LaTeX)
\[\mathrm{XNPV} = \sum_{i=0}^{N} \frac{C_i}{(1+r)^{\frac{d_i - d_0}{365}}}\]
\mathrm{XNPV} = \sum_{i=0}^{N} \frac{C_i}{(1+r)^{\frac{d_i - d_0}{365}}}
Formula (extracted text)
Periodic NPV (equal spacing): \[ \mathrm{NPV} = C_0 + \sum_{t=1}^{N} \frac{C_t}{(1+r_p)^{t-\delta}}, \quad \delta = \begin{cases} 0 & \text{(end)}\\ 1 & \text{(begin)} \end{cases} \] Per-period rate from effective annual \(r\) and frequency \(f\): \[ r_p = (1+r)^{1/f} - 1 \] XNPV (irregular dates, Actual/365): \[ \mathrm{XNPV} = \sum_{i=0}^{N} \frac{C_i}{(1+r)^{\frac{d_i - d_0}{365}}} \]
Variables and units
  • No variables provided in audit spec.
Sources (authoritative):
Changelog
Version: 0.1.0-draft
Last code update: 2026-01-19
0.1.0-draft · 2026-01-19
  • Initial audit spec draft generated from HTML extraction (review required).
  • Verify formulas match the calculator engine and convert any text-only formulas to LaTeX.
  • Confirm sources are authoritative and relevant to the calculator methodology.
Verified by Ugo Candido on 2026-01-19
Profile · LinkedIn

NPV (Net Present Value) Calculator

Compute Net Present Value from periodic or dated (XNPV) cash flows. Includes a sensitivity table and options for timing (end vs beginning of period).

Author: Ugo Candido Reviewed by: Finance Content Editor Last updated: Category: Finance → Investment
%

For periodic NPV, the tool converts to a per-period rate based on frequency; XNPV discounts by Actual/365 days.

Determines the per-period discount rate from the effective annual rate.

Timing of cash flows (periodic)

Beginning-of-period shifts each periodic inflow back by one period.

Period Amount Actions

Enter positive inflows and negative outflows. At least one row is required.

Results

NPV $0.00
PV of inflows $0.00
PV of outflows $0.00
Profitability Index
Per-period rate (periodic)
Mode: Periodic Freq: 1/yr Timing: End Rows: 0

Sensitivity (NPV vs discount rate)

Rate NPV

This professional-grade NPV calculator helps analysts, founders, and students evaluate investments by discounting future cash flows to today’s money. It supports both classic periodic cash flows and date-based XNPV and follows accessibility/performance best practices.

Data Source and Methodology

  • Primary reference: Brealey, Myers, and Allen, Principles of Corporate Finance — DCF chapter. (Publisher page linked in your original.)
  • Function parity: Microsoft’s NPV and XNPV definitions for spreadsheet consistency.

The Formula Explained

Periodic NPV (equal spacing):

\[ \mathrm{NPV} = C_0 + \sum_{t=1}^{N} \frac{C_t}{(1+r_p)^{t-\delta}}, \quad \delta = \begin{cases} 0 & \text{(end)}\\ 1 & \text{(begin)} \end{cases} \]

Per-period rate from effective annual \(r\) and frequency \(f\):

\[ r_p = (1+r)^{1/f} - 1 \]

XNPV (irregular dates, Actual/365):

\[ \mathrm{XNPV} = \sum_{i=0}^{N} \frac{C_i}{(1+r)^{\frac{d_i - d_0}{365}}} \]

How to Use

  1. Enter your discount rate (effective annual). Negative values above −100% are allowed.
  2. Choose Periodic or Dated (XNPV). For periodic, set the frequency and timing.
  3. Enter the initial cash flow at \(t=0\) (usually negative for an investment) and add the cash flows.
  4. Review NPV, PV of inflows/outflows, Profitability Index, and the sensitivity table.

Worked Example

Inputs: \(C_0=-10{,}000\); inflows \(3{,}000, 4{,}000, 4{,}000, 3{,}000\) at the end of years 1–4; \(r=10\%\); \(f=1\).

  1. \(r_p=(1+0.10)^{1/1}-1=0.10\).
  2. PV1 \(=3000/(1.1)^1=2727.27\); PV2 \(=4000/(1.1)^2=3305.79\); PV3 \(=4000/(1.1)^3=3005.26\); PV4 \(=3000/(1.1)^4=2047.10\).
  3. Sum PV(inflows) \(=11{,}085.42\).
  4. NPV \(=-10{,}000+11{,}085.42=\$1{,}085.42\).

Since NPV > 0, the project adds value at a 10% required return.

In-Content Ad Unit

Frequently Asked Questions (FAQ)

When should I use XNPV instead of NPV?

Use XNPV when cash flows occur on irregular dates. It discounts using the actual days between dates divided by 365.

How is the per-period rate determined in periodic mode?

From the effective annual rate \(r\) and frequency \(f\): \(r_p=(1+r)^{1/f}-1\).

What does the “Beginning of period” option do?

It shifts periodic cash flows back one period (annuity due), increasing their PV versus end-of-period timing.

Profitability Index (PI)

\(\mathrm{PI}=\frac{\text{PV(inflows)}}{|\text{Initial investment}|}\). Values above 1 suggest value creation.

Full original guide (expanded)

Your previous content is preserved here (lightly edited for consistency and accessibility) and reflected across the integrated sections above.


Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\\]
','\
Formula (extracted LaTeX)
\[\mathrm{NPV} = C_0 + \sum_{t=1}^{N} \frac{C_t}{(1+r_p)^{t-\delta}}, \quad \delta = \begin{cases} 0 & \text{(end)}\\ 1 & \text{(begin)} \end{cases}\]
\mathrm{NPV} = C_0 + \sum_{t=1}^{N} \frac{C_t}{(1+r_p)^{t-\delta}}, \quad \delta = \begin{cases} 0 & \text{(end)}\\ 1 & \text{(begin)} \end{cases}
Formula (extracted LaTeX)
\[r_p = (1+r)^{1/f} - 1\]
r_p = (1+r)^{1/f} - 1
Formula (extracted LaTeX)
\[\mathrm{XNPV} = \sum_{i=0}^{N} \frac{C_i}{(1+r)^{\frac{d_i - d_0}{365}}}\]
\mathrm{XNPV} = \sum_{i=0}^{N} \frac{C_i}{(1+r)^{\frac{d_i - d_0}{365}}}
Formula (extracted text)
Periodic NPV (equal spacing): \[ \mathrm{NPV} = C_0 + \sum_{t=1}^{N} \frac{C_t}{(1+r_p)^{t-\delta}}, \quad \delta = \begin{cases} 0 & \text{(end)}\\ 1 & \text{(begin)} \end{cases} \] Per-period rate from effective annual \(r\) and frequency \(f\): \[ r_p = (1+r)^{1/f} - 1 \] XNPV (irregular dates, Actual/365): \[ \mathrm{XNPV} = \sum_{i=0}^{N} \frac{C_i}{(1+r)^{\frac{d_i - d_0}{365}}} \]
Variables and units
  • No variables provided in audit spec.
Sources (authoritative):
Changelog
Version: 0.1.0-draft
Last code update: 2026-01-19
0.1.0-draft · 2026-01-19
  • Initial audit spec draft generated from HTML extraction (review required).
  • Verify formulas match the calculator engine and convert any text-only formulas to LaTeX.
  • Confirm sources are authoritative and relevant to the calculator methodology.
Verified by Ugo Candido on 2026-01-19
Profile · LinkedIn

NPV (Net Present Value) Calculator

Compute Net Present Value from periodic or dated (XNPV) cash flows. Includes a sensitivity table and options for timing (end vs beginning of period).

Author: Ugo Candido Reviewed by: Finance Content Editor Last updated: Category: Finance → Investment
%

For periodic NPV, the tool converts to a per-period rate based on frequency; XNPV discounts by Actual/365 days.

Determines the per-period discount rate from the effective annual rate.

Timing of cash flows (periodic)

Beginning-of-period shifts each periodic inflow back by one period.

Period Amount Actions

Enter positive inflows and negative outflows. At least one row is required.

Results

NPV $0.00
PV of inflows $0.00
PV of outflows $0.00
Profitability Index
Per-period rate (periodic)
Mode: Periodic Freq: 1/yr Timing: End Rows: 0

Sensitivity (NPV vs discount rate)

Rate NPV

This professional-grade NPV calculator helps analysts, founders, and students evaluate investments by discounting future cash flows to today’s money. It supports both classic periodic cash flows and date-based XNPV and follows accessibility/performance best practices.

Data Source and Methodology

  • Primary reference: Brealey, Myers, and Allen, Principles of Corporate Finance — DCF chapter. (Publisher page linked in your original.)
  • Function parity: Microsoft’s NPV and XNPV definitions for spreadsheet consistency.

The Formula Explained

Periodic NPV (equal spacing):

\[ \mathrm{NPV} = C_0 + \sum_{t=1}^{N} \frac{C_t}{(1+r_p)^{t-\delta}}, \quad \delta = \begin{cases} 0 & \text{(end)}\\ 1 & \text{(begin)} \end{cases} \]

Per-period rate from effective annual \(r\) and frequency \(f\):

\[ r_p = (1+r)^{1/f} - 1 \]

XNPV (irregular dates, Actual/365):

\[ \mathrm{XNPV} = \sum_{i=0}^{N} \frac{C_i}{(1+r)^{\frac{d_i - d_0}{365}}} \]

How to Use

  1. Enter your discount rate (effective annual). Negative values above −100% are allowed.
  2. Choose Periodic or Dated (XNPV). For periodic, set the frequency and timing.
  3. Enter the initial cash flow at \(t=0\) (usually negative for an investment) and add the cash flows.
  4. Review NPV, PV of inflows/outflows, Profitability Index, and the sensitivity table.

Worked Example

Inputs: \(C_0=-10{,}000\); inflows \(3{,}000, 4{,}000, 4{,}000, 3{,}000\) at the end of years 1–4; \(r=10\%\); \(f=1\).

  1. \(r_p=(1+0.10)^{1/1}-1=0.10\).
  2. PV1 \(=3000/(1.1)^1=2727.27\); PV2 \(=4000/(1.1)^2=3305.79\); PV3 \(=4000/(1.1)^3=3005.26\); PV4 \(=3000/(1.1)^4=2047.10\).
  3. Sum PV(inflows) \(=11{,}085.42\).
  4. NPV \(=-10{,}000+11{,}085.42=\$1{,}085.42\).

Since NPV > 0, the project adds value at a 10% required return.

In-Content Ad Unit

Frequently Asked Questions (FAQ)

When should I use XNPV instead of NPV?

Use XNPV when cash flows occur on irregular dates. It discounts using the actual days between dates divided by 365.

How is the per-period rate determined in periodic mode?

From the effective annual rate \(r\) and frequency \(f\): \(r_p=(1+r)^{1/f}-1\).

What does the “Beginning of period” option do?

It shifts periodic cash flows back one period (annuity due), increasing their PV versus end-of-period timing.

Profitability Index (PI)

\(\mathrm{PI}=\frac{\text{PV(inflows)}}{|\text{Initial investment}|}\). Values above 1 suggest value creation.

Full original guide (expanded)

Your previous content is preserved here (lightly edited for consistency and accessibility) and reflected across the integrated sections above.


Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\\]
','\
Formula (extracted LaTeX)
\[\mathrm{NPV} = C_0 + \sum_{t=1}^{N} \frac{C_t}{(1+r_p)^{t-\delta}}, \quad \delta = \begin{cases} 0 & \text{(end)}\\ 1 & \text{(begin)} \end{cases}\]
\mathrm{NPV} = C_0 + \sum_{t=1}^{N} \frac{C_t}{(1+r_p)^{t-\delta}}, \quad \delta = \begin{cases} 0 & \text{(end)}\\ 1 & \text{(begin)} \end{cases}
Formula (extracted LaTeX)
\[r_p = (1+r)^{1/f} - 1\]
r_p = (1+r)^{1/f} - 1
Formula (extracted LaTeX)
\[\mathrm{XNPV} = \sum_{i=0}^{N} \frac{C_i}{(1+r)^{\frac{d_i - d_0}{365}}}\]
\mathrm{XNPV} = \sum_{i=0}^{N} \frac{C_i}{(1+r)^{\frac{d_i - d_0}{365}}}
Formula (extracted text)
Periodic NPV (equal spacing): \[ \mathrm{NPV} = C_0 + \sum_{t=1}^{N} \frac{C_t}{(1+r_p)^{t-\delta}}, \quad \delta = \begin{cases} 0 & \text{(end)}\\ 1 & \text{(begin)} \end{cases} \] Per-period rate from effective annual \(r\) and frequency \(f\): \[ r_p = (1+r)^{1/f} - 1 \] XNPV (irregular dates, Actual/365): \[ \mathrm{XNPV} = \sum_{i=0}^{N} \frac{C_i}{(1+r)^{\frac{d_i - d_0}{365}}} \]
Variables and units
  • No variables provided in audit spec.
Sources (authoritative):
Changelog
Version: 0.1.0-draft
Last code update: 2026-01-19
0.1.0-draft · 2026-01-19
  • Initial audit spec draft generated from HTML extraction (review required).
  • Verify formulas match the calculator engine and convert any text-only formulas to LaTeX.
  • Confirm sources are authoritative and relevant to the calculator methodology.
Verified by Ugo Candido on 2026-01-19
Profile · LinkedIn
Formulas

(Formulas preserved from original page content, if present.)

Version 0.1.0-draft
Citations

Add authoritative sources relevant to this calculator (standards bodies, manuals, official docs).

Changelog
  • 0.1.0-draft — 2026-01-19: Initial draft (review required).