Time Value of Money Calculator (TVM Solver)
5-variable time value of money solver. Enter any four of PV, FV, PMT, N, and rate — solve for the fifth. Beginning/end-of-period toggle.
Time Value of Money Calculator
The five-variable time-value-of-money solver. Enter any four of present value, future value, payment, number of periods and the annual rate, and it solves for the fifth. Use the sign convention outflows negative, inflows positive (a deposit is negative, a payout positive). The rate is entered the way a BA II Plus takes it: a nominal annual rate (I/Y), payments per year (P/Y) and compounding periods per year (C/Y). Set both to 1 to type a rate per period directly.
How to Use the TVM Solver
Pick what to solve for
Choose PV, FV, PMT, N, or rate from the "Solve for" dropdown. That field is disabled — you fill in the other four.
Mind the sign convention
Cash you pay out is negative; cash you receive is positive. A $10,000 deposit today is PV = −10000. This is the same convention Excel and financial calculators use.
Set the rate and its frequencies
Enter the annual rate as quoted (I/Y), how many payments a year (P/Y) and how often interest compounds (C/Y). N counts payments, so 10 years of monthly payments is 120. Choosing P/Y sets C/Y to match, as on a BA II Plus; change C/Y when the two differ — 6% compounded half-yearly but paid monthly is 0.4939% a month, not 0.5%.
Set payment timing
Ordinary annuities pay at the end of each period (most loans, savings deposits). Annuity-due pays at the beginning (leases, some rents). The toggle shifts every payment one period.
The Time Value of Money, Explained
One Equation, Five Unknowns
Every time-value-of-money problem is the same underlying equation rearranged. A present value grows by compounding; a stream of equal payments (an annuity) accumulates or discounts; and the two combine into a single identity: PV·(1+i)ⁿ + PMT·(1+i·type)·[((1+i)ⁿ − 1)/i] + FV = 0. Give the solver any four of the five variables and it isolates the fifth. For PV, FV, PMT and N this is straightforward algebra; for the rate there is no general closed form, so it has to be found numerically — Excel's RATE and financial calculators iterate too. This tool searches every rate from −99.99% to +1,000% a period and reports each one that balances the equation.
With the defaults — $10,000 deposited now and $200 a month for 120 months at 6% a year compounded monthly — the solver returns a future value of $50,969.84.
Why the Sign Convention Matters
The equation only balances if inflows and outflows carry opposite signs. If you deposit $10,000 today (an outflow from you, PV = −10,000) and contribute −$200/month, the future value comes back positive — the money you'll receive. Mixing signs incorrectly is the single most common TVM error and produces nonsense results. When in doubt: money leaving your pocket is negative.
The rate is the one TVM variable you cannot isolate with algebra. Calculators and spreadsheets iterate to find it — and when cash flows change sign more than once, more than one rate can balance them.
Ordinary Annuity vs Annuity-Due
Timing changes the answer. An ordinary annuity pays at period-end (a typical mortgage or savings plan); an annuity-due pays at the start (most leases, insurance premiums, rent). Because annuity-due payments sit one period earlier, they earn one extra period of growth — multiplying the annuity term by (1 + i). For a 30-year stream at a meaningful rate, that shift is not trivial.
Where You'll Use It
TVM underlies loan payments, bond pricing, retirement projections, lease-vs-buy analysis, NPV, and every DCF valuation. Master the five-variable solver and most "finance math" becomes plugging four knowns into one equation.
One equation behind Excel's five functions, and the variable that has to be searched for
A dollar today is worth more than a dollar tomorrow — because today's dollar can be invested to earn a return.
The rate is the only TVM variable with no general closed-form solution; it must be found by iteration.
An annuity-due stream is worth (1 + i) times an ordinary annuity of the same payments, all else equal.
At 7% annual growth, money doubles in about 10 years — the Rule of 72 gives 72 ÷ 7 = 10.3; the exact answer is 10.24.
TVM is the foundation of net present value (NPV) and discounted cash flow (DCF) valuation.
Excel's PV, FV, PMT, NPER and RATE functions all solve this same identity.
The sign convention (outflows negative) is the one Excel, the HP 12C and the TI BA II Plus all document.
Bond prices are simply the present value of coupons (an annuity) plus the PV of face value.
Annual ÷ 12 is the monthly rate only when the annual rate compounds monthly. At 6% compounded half-yearly, the monthly rate is (1.03)^(1/6) − 1 = 0.4939%.
With P/Y = C/Y = 1, I/Y is simply the rate per period — the form textbooks write the identity in.
Frequently Asked Questions
- Money flowing out of your pocket is negative; money coming in is positive. A deposit or loan principal you pay down is negative; a payout or maturity value you receive is positive. The TVM equation only balances when inflows and outflows carry opposite signs — the same convention Excel, the HP 12C and the TI BA II Plus use.
- The rate appears inside (1 + i)ⁿ and in the annuity term simultaneously, producing a high-degree polynomial with no general closed-form root. So every tool — this one, Excel's RATE, and financial calculators — finds it numerically. This solver scans the whole range from −99.99% to +1,000% a period, narrows each crossing to fifteen decimal places, and shows the equation's residual at the answer so you can see it balances.
- Enter the annual rate (I/Y) and tell the solver how often you pay (P/Y) and how often interest compounds (C/Y); it works out the rate per payment period as (1 + I/Y÷C/Y)^(C/Y÷P/Y) − 1, the formula in the BA II Plus guidebook. When the two frequencies are equal that is simply I/Y ÷ P/Y — the "12%/12" Excel's help describes. To work with a per-period rate directly, set P/Y and C/Y to 1.
- Use annuity-due (payments at the beginning of the period) for leases, insurance premiums, and most rent — anything paid up front. Use ordinary (end of period) for most loans and savings deposits. Annuity-due payments earn one extra period of growth, so the stream is worth (1 + i) times as much.
- Yes. Set PV to the loan amount (positive, money you receive), FV to 0, N to the number of payments, I/Y to the loan's annual rate with P/Y 12, and solve for PMT — the result is negative (your outflow). Microsoft's example, $10,000 over 10 months at 8%, gives −$1,037.03 here as in Excel. For a full month-by-month breakdown, use our dedicated Loan Amortization Schedule Generator instead.
- Usually a sign-convention problem: if every cash flow has the same sign, no rate or period can make them balance (you can't earn a return on money that only ever flows one way). Make sure at least one value has the opposite sign of the others. It can also mean the scenario genuinely has no real solution — for example, payments too small ever to reach the future value. Where Excel's NPER returns a negative number of periods, this solver says so instead of showing it as an answer.
- Yes — it implements the TVM identity and sign convention used by Excel (PV/FV/PMT/NPER/RATE) and HP 12C / TI BA II Plus calculators. Its test suite reproduces Microsoft's published examples to the cent: −$1,037.03 and −$1,030.16 (PMT), $2,581.40 and $12,682.50 (FV), −$59,777.15 (PV), 59.67 and 60.08 periods (NPER), 9.24% a year (RATE).
- A shortcut: divide 72 by the annual return rate to estimate how many years money takes to double. At 8%, about 9 years; at 6%, about 12. It approximates the exact TVM answer (solve for N with PV negative, FV = 2×|PV|, PMT = 0, P/Y = C/Y = 1), which is ln 2 ÷ ln(1 + r): for annual rates from 4% to 12% the rule is within about four months of it (18 against 17.67 years at 4%).
- No. It's a math tool that computes a single missing TVM variable from the four you supply. It makes no assumptions about inflation, taxes, or whether a given return is realistic. Use it for the arithmetic; consult a licensed adviser for decisions.
- Yes, for the core arithmetic: set PV to your current balance (negative), PMT to your monthly contribution (negative), N to months until retirement, I/Y to your assumed annual return with P/Y 12, and solve for FV. Remember it uses a single fixed rate and ignores inflation, taxes, and sequence-of-returns risk — for a fuller retirement view, pair it with a dedicated retirement or safe-withdrawal calculator.
Method & sources
How it computes
One identity, solved for whichever value is left: 0 = PV(1+i)^n + PMT(1 + i·type)((1+i)^n − 1)/i + FV (0 = PV + PMT·n + FV at i = 0), type 0 = end, 1 = beginning; outflows negative. Periodic rate i = (1 + I/Y÷C/Y)^(C/Y÷P/Y) − 1. PV, FV, PMT and N algebraically; the rate by a search from −99.99% to +1,000% a period that reports every root (TvmKernel).
What this tool implements
- The identity is the one OASIS OpenFormula specifies for PV (ODF 1.2 Part 2, §6.12.41) and Excel's PV, FV, PMT, NPER and RATE solve; the HP 12C handbook (Appendix E) and the TI BA II Plus guidebook state it divided through by (1 + i)^n. Cash paid out is negative and cash received positive, as Microsoft's annuity-function remarks and the HP 12C cash-flow sign convention both put it.
- The rate is entered as on a BA II Plus: a nominal annual rate (I/Y) with payments per year (P/Y) and compounding periods per year (C/Y), converted with the guidebook's i = (1 + I/Y÷C/Y)^(C/Y÷P/Y) − 1. With P/Y = C/Y it is I/Y ÷ P/Y, Microsoft's "12%/12"; with half-yearly compounding and monthly payments it is not (6% gives 0.4939% a month, not 0.5%).
- The rate has no general closed form, so the whole range from −99.99% to +1,000% a period is searched and every crossing bisected to 1e-15. A stream that changes sign more than once can be balanced by more than one rate (−1,000, +2,300, −1,320 by 10% and 20%); the page lists every one rather than picking the first. No root means no rate balances the inputs, and the page says why.
- Checked against Microsoft's own worked examples, reproduced to the cent or digit printed: PMT −1,037.03 and −1,030.16; PMT −129.08; FV 2,581.40, 12,682.50 and 82,846.25; PV −59,777.15; RATE 9.24% a year; NPER 59.6738657 and 60.0821229. Excel's NPER returns −9.57859404 for one of its examples; this page refuses a negative number of periods instead of showing it.
- ⚠️ One constant rate across every period. It does not model a rate that changes, irregular payments, tax, inflation or fees.
- Corrected 2026-10-17: error messages were never visible (shown with display '' on a box the stylesheet hides); "10,000" was read as 10; negative NPER results were shown as answers; the rate search returned only the first root; the rate had to be entered per period with "annual ÷ 12" offered regardless of compounding; two unsourced CFA "most-tested" claims; an unattributed pull-quotation.
Sources
- OASIS. Open Document Format for Office Applications (OpenDocument) v1.2, Part 2: Recalculated Formula (OpenFormula) Format, §6.12.41 PV. https://docs.oasis-open.org/office/v1.2/os/OpenDocument-v1.2-os-p…
- Microsoft Support. PV function (sign convention, consistent rate and nper units, worked example). https://support.microsoft.com/en-us/office/pv-function-23879d31-0…
- Microsoft Support. RATE function (worked example: 9.24% a year). https://support.microsoft.com/en-us/office/rate-function-9f665657…
- Microsoft Support. NPER function (worked examples 59.6738657, 60.0821229, −9.57859404). https://support.microsoft.com/en-us/office/nper-function-240535b5…
- Hewlett-Packard. HP 12C Financial Calculator Owner's Handbook, Appendix E: Formulas Used; The Cash Flow Sign Convention. https://h10032.www1.hp.com/ctg/Manual/bpia5309.pdf
- Texas Instruments. BA II PLUS Calculator Guidebook, Appendix — Formulas (Time Value of Money); Entering Values for I/Y, P/Y, and C/Y. https://education.ti.com/html/eguides/financials/baiiplus/en/Cont…
What can make this go out of date
- Nothing is fetched and nothing dates: the arithmetic is closed over the user's own inputs.
Pick up where you left off
Stored only in this browser — never sent to our servers.