What this calculator does
Calculate the present value of level, growing, or perpetual periodic payments.
How it works
The calculator evaluates level PV = PMT[1−(1+i)^−n]/i; growing PV = PMT[1−((1+g)/(1+i))^n]/(i−g). Inputs are checked before calculation, and invalid values such as zero denominators or out-of-range selections produce a clear error instead of a misleading result.
Input query strings and outputs
Use an input name in this page’s URL as ?name=value, and join additional inputs with &. Portable shared links may instead use the compact ?ac= state parameter.
Input query strings
6-
?annuityType=Annuity typeChoice · Required · Default: level · Accepted values: level, growing, perpetuity
-
?payment=First periodic paymentMoney · Required · Default: 1,000
-
?discountRate=Discount rate per periodPercentage · Required · Default: 5
-
?growthRate=Payment growth rate per periodPercentage · Required · Default: 2
-
?periods=Number of paymentsNumber · Required · Default: 20
-
?paymentTiming=First payment timingChoice · Required · Default: end · Accepted values: end, begin
Outputs
5-
presentValuePresent valueCurrency · Primary output
-
firstPaymentFirst paymentCurrency
-
lastPaymentLast paymentCurrency
-
undiscountedPaymentsSum of projected paymentsCurrency
-
annuityFactorPresent-value factorNumber
Inputs and results
The inputs are Annuity type, First periodic payment, Discount rate per period, Payment growth rate per period, Number of payments, First payment timing. Results include Present value, First payment, Last payment, Sum of projected payments, Present-value factor.
Important notes
Annuity valuations are sensitive to rates, timing, fees, taxes, guarantees, and payment assumptions.