FV function

FV returns the future value of a series of regular cash flows at a constant interest rate, modeling compound growth over time.

=FV(rate, nper, pmt, [pv], [type])

Generate a FV formula

Describe what you need. The generator will reach for FV where FV is the right tool, and tell you when it is not.

How to get a better answer
  • Name your columns by letter and by header: "column F (Net Value)" beats "the amount column".
  • State every condition, including the negatives — "not cancelled" changes the formula's shape.
  • Say where the data starts if it is not row 1, and whether it will grow.
  • Check the settings above match your spreadsheet: the wrong argument separator is a syntax error on your machine.

Arguments

How FV reads its arguments
raterequirednperrequiredpmtrequiredpvoptionaltypeoptionalFV
ArgumentRequiredDescription
rateRequiredInterest or growth rate per period as a decimal (0.05 for 5%). The function breaks mathematically if rate equals exactly −1.
nperRequiredTotal number of periods; must be positive. Represents time units (months, years) over which growth compounds.
pmtRequiredPayment amount per period. Use consistent sign: negative for cash outflows (savings), positive for inflows (loan repayment received).
pvOptionalOptional; default 0. Present value or starting balance. Typically negative (initial investment) but can be positive (initial debt).
typeOptionalOptional; default 0. Set to 0 for payments at period end, 1 for payments at period start; affects one compounding cycle per period.

Returns

A number representing the future value in the same currency as input amounts.

Availability

Excel: All · Google Sheets: Supported

Worked examples

1. Project annual support contract revenue with compound growth

Ticket IDAgentCSATMonthly Revenue
T001Alice5150
T002Bob4150
T003Carol5150
=FV(0.06/12, 12, -150)

Result: 1872.96

A support contract worth $150/month, compounded monthly at 6% annual interest (0.5% per month), grows to $1,872.96 over 12 months. Each monthly payment earns interest for the remaining periods.

2. Include existing support fund balance in projection

Starting BalanceMonthly PaymentRateMonths
5001500.5%12
=FV(0.06/12, 12, -150, -500)

Result: 2432.59

With a $500 starting balance plus $150/month revenue, the fund grows to $2,432.59. The initial $500 compound over all 12 months, while each payment adds its own growth period.

3. Calculate with support fees collected at month start instead of end

Payment TimingAmountMonthly RatePeriods
Beginning1500.5%12
=FV(0.06/12, 12, -150, -500, 1)

Result: 2448.22

When type=1, payments arrive at the beginning of each period, gaining one extra month of compounding. This yields $2,448.22—$15.63 more than end-of-period collection (type=0).

Common errors

Which FV error are you seeing?
FV returned an error#NUM!
Verify rate is between −0.99 and a reasonable positive percentage. If rate comes from a calculation, add a guard like =IF(rate=-1, -0.99, rate).
#VALUE!
Check that all numeric inputs are actual numbers. Use VALUE(text) to convert text to numbers, or re-enter the cell with =<raw number> instead of '<number> (which forces text).
#NUM!
Ensure nper is a positive integer or decimal. If dynamic, wrap with MAX(nper, 0.01) or validate the source data for calculation errors.
ErrorWhy it happensHow to fix it
#NUM!rate parameter equals exactly −1 (or is undefined/infinite), which makes the internal divisor zero in the FV formula: ((1+rate)^nper − 1) / rate.Verify rate is between −0.99 and a reasonable positive percentage. If rate comes from a calculation, add a guard like =IF(rate=-1, -0.99, rate).
#VALUE!One or more of rate, nper, or pmt arguments contain text, a cell reference with text, or are formatted as text instead of numbers.Check that all numeric inputs are actual numbers. Use VALUE(text) to convert text to numbers, or re-enter the cell with =<raw number> instead of '<number> (which forces text).
#NUM!nper is zero or negative; periods must be a positive count. Negative periods have no financial meaning.Ensure nper is a positive integer or decimal. If dynamic, wrap with MAX(nper, 0.01) or validate the source data for calculation errors.

Tips and when to use something else

  • Sign convention: pmt and pv should use consistent signs (both negative for savings/investment, or flip one if they represent opposite directions). Result sign follows this convention.
  • Period alignment: rate and nper must use the same time unit. If rate is annual (0.06), nper must be years; if rate is monthly (0.06/12), nper must be months. Misaligned units are the most common FV mistake.
  • For variable payment amounts or irregular cash flows, use NPV or XNPV instead; FV assumes every payment is identical and spaced equally.
  • Unlike PV (present value of future payments), FV calculates the opposite: tomorrow's value of today's cash flows. Use PV when you need to discount future amounts back to today.

Frequently asked questions

Why is my FV result negative when I expect positive?
FV inherits the sign from pmt and pv. If you enter pmt=-150 (outflow), the result is negative. Flip pmt to 150 (inflow) to get a positive result, or interpret the negative as the funds accumulated in your account.
What is the difference between type=0 and type=1?
type=0 assumes payments arrive at the end of each period; type=1 assumes they arrive at the beginning. Beginning-of-period payments earn one extra compounding cycle, so type=1 always yields a slightly larger future value.
Can I use FV if my interest rate changes each year?
No—FV assumes a constant rate throughout all periods. If your rate varies, build a multi-step calculation (compound each period separately) or use more complex tools like XNPV, which accepts dated, irregular cash flows.
How do I use FV to compare two savings plans?
Calculate FV for each plan with identical nper, rate, and pmt parameters except for the one that differs. Example: =FV(0.06/12, 60, -200) versus =FV(0.08/12, 60, -200) shows how a higher rate (Plan B) yields more. The difference reveals the value of a better rate.

Need a different formula?

The full generator is not scoped to one function — describe any spreadsheet problem and it will pick.

Open the formula generator

Reviewed 2026-09-17