Methodology

Every formula this site uses, written out. If our number differs from another calculator's, the reason is almost always one of the timing or compounding conventions below — so you can find the discrepancy instead of guessing at it.

By Sudarshan Babar · Software engineer and founder of the getinfotoyou tool network Updated

Monthly SIP

FV = P × [ ((1 + r)n − 1) ÷ r ] × (1 + r)

P is the instalment, r is the annual rate ÷ 12 ÷ 100, n is years × 12.

Convention: annuity-due. The trailing (1 + r) exists because a real mandate debits at the start of the month, so each instalment earns one extra month of return. Calculators that assume end-of-month (annuity-ordinary) drop that factor and report roughly 1% less over ten years. Neither is wrong; ours matches how a SIP actually debits.

When r is zero the formula is undefined, so the code falls back to P × n.

The year-by-year table is generated by iteration — value = (value + P) × (1 + r) each month — which is algebraically identical to the closed form. Both are computed and cross-checked against each other in the test suite, so the headline figure and the table can never disagree.

Step-up SIP

No clean closed form exists, so this is iterated month by month with the instalment multiplied by (1 + g) every twelfth month, where g is the step-up percentage ÷ 100.

Convention: the rise happens once a year, on the anniversary — not monthly. Some calculators apply the increase every month, which inflates the result substantially. Set the step-up to 0% and the result matches the plain SIP formula exactly; that is the check.

Lump sum and compound interest

Lump sum: FV = P × (1 + r)t, annual compounding, r as a decimal, t in years.

General compounding: FV = P × (1 + r ÷ m)m × t, where m is compounding periods per year. The compound interest calculator adds a monthly-contribution annuity to this and reports the two components separately.

Note on nominal versus effective. 12% compounded monthly is 12.68% effective annually. The SIP calculator's rate input is nominal-with-monthly-compounding; the lump sum's is effective annual. This is the single most common source of confusion between calculators, and it is also why an XIRR on a 12%-modelled SIP comes back near 12.68%.

Inflation and real returns

Real value: real = nominal ÷ (1 + i)years

Real rate: ((1 + nominal) ÷ (1 + inflation)) − 1, the Fisher relation — a division, not the common subtraction shortcut. At 12% and 6% the correct figure is 5.66%, not 6%.

Inflated goal: future cost = today's cost × (1 + i)years

Goal solving

Required SIP is the exact algebraic inverse of the SIP formula: P = FV ÷ ( [ ((1 + r)n − 1) ÷ r ] × (1 + r) ). Feeding the output back into the forward calculator reproduces the target to the rupee, and the test suite asserts that round-trip.

Required time is solved by binary search over whole months, returning the first month at which the target is met. Searching over fractional years would report a meaningless figure like "9.958 years" when the real answer is 120 months.

XIRR

XIRR solves for the rate that zeroes the net present value of dated cash flows:

Σ CFk ÷ (1 + rate)dk ÷ 365 = 0

where dk is days from the first cash flow. Solved with Newton–Raphson from an initial guess of 0.1, falling back to bisection over [−0.9999, 10] if the derivative degenerates or the iteration diverges. This is the same equation a spreadsheet's XIRR function solves.

Convention: a 365-day year and an effective-annual result. Because months are not all the same length, reconstructing a growth path from an XIRR introduces a drift of under a tenth of a percent.

PPF, FD, RD and NPS

PPF — one deposit a year, compounded annually, credited at year end; modelled as an annual annuity-due. In reality interest is computed on the lowest balance between the 5th and month end, so a deposit made late in the month earns nothing for it. The calculator assumes the optimal pattern of one deposit at the start of the year.

FDM = P × (1 + r ÷ m)m × t, defaulting to m = 4 (quarterly), the Indian bank convention.

RD — each instalment compounds quarterly for its own remaining term: M = Σ P × (1 + r ÷ 4)(n − k + 1) ÷ 3, summed over the n monthly instalments. Banks differ on rounding within each quarter, which accounts for small differences against a bank's own quote.

NPS — accumulation uses the monthly SIP formula; the corpus is then split with the annuity share clamped to a 40% statutory minimum, and the pension is annuity corpus × annuity rate ÷ 12. This is a simple level annuity, not an inflation-indexed or joint-life one.

Retirement corpus

Two stages. Expenses inflate to the retirement date: monthly at retirement = today's monthly × (1 + i)years to retire.

The corpus required is the present value at retirement of an annuity that itself grows with inflation, discounted at the post-retirement return. Working in the real rate rr = ((1 + post) ÷ (1 + i)) − 1 collapses that to an annuity-due present value:

corpus = A × [ (1 − (1 + rr)−n) ÷ rr ] × (1 + rr)

where A is the annual expense at retirement and n the years in retirement. When rr is approximately zero the code uses A × n. Existing savings are grown at the pre-retirement rate and subtracted to give the gap the SIP must fill.

What this does not model: sequence-of-returns risk, medical inflation above general CPI, tax on withdrawals, or any bequest.

Default assumptions, and why

Every one of these is editable on the page. They are starting positions, not claims.

Default inputs used across the site
InputDefaultWhy
Equity return12%The conventional figure for Indian equity funds over long periods. Test 9–10% too.
Inflation6%Close to India's CPI average over the past decade; the RBI targets 4% ± 2.
Debt / FD / RD7%Broadly current deposit territory. Bank- and tenure-specific in reality.
PPF7.1%A placeholder. Government revises small-savings rates quarterly — check before use.
NPS return10%Below equity, because NPS caps equity exposure and blends in bonds.
Annuity rate6%Indicative. You will buy at whatever rates exist decades from now.
Post-retirement return7%Lower than accumulation, reflecting a more conservative portfolio.
Step-up10%Roughly a typical annual salary increment.
Daily SIP days250Market days, not calendar days — a SIP cannot transact at a weekend.

What no calculator here accounts for

The gap between a model and reality

Expense ratios, exit loads, securities transaction tax, stamp duty, tracking error, tax on gains unless a page says otherwise, and — most importantly — volatility. Every projection uses one constant rate. Real returns arrive as a lumpy sequence, and while the order does not change a lump sum's final value, it matters enormously once you are withdrawing.

Costs alone typically shave 0.5 to 2 percentage points off a fund's gross return. If you want a figure net of costs, subtract the expense ratio from the return you enter.

Rounding and precision

All arithmetic runs in full double precision. Rounding happens only at display time, never mid-calculation, so a chain of figures cannot accumulate rounding drift.

Rupee amounts display with no decimals. Rates display to two. Indian rupee formatting uses lakh and crore grouping; other currencies use standard thousands.

The formulas above are implemented in sip-engine.js, which ships with a test suite (sip-engine.test.js) asserting the reference cases, the algebraic round-trips, and the zero-rate edge cases. You can run it with node sip-engine.test.js.

Where these numbers come from