Enter the initial deposit, contributions (leave unused fields at 0), annual interest rate and time period. If you do not want to include tax or inflation, leave those at 0.
Table of Contents
-
What you can do on this page
-
What is this calculation used for?
-
How to Use
-
Formulas and graphs
-
Symbols and terms
-
Good to know before you start
-
How to calculate it in Excel
-
How to calculate it in Google Sheets
-
How to calculate it in Python
-
How to write it in LaTeX and other math languages (copy and paste)
-
How to have ChatGPT do the calculation
-
DataChef Features
-
Related Features
-
NumberChef Calculators List
What you can do on this page
- From a starting amount plus yearly and monthly contributions, see right away how much your money grows with compound interest (the ending balance and the total interest). You can choose to contribute at the beginning of each period (deposit first, then earn interest) or at the end (earn interest first, then deposit)
- Nine compounding frequencies are supported: annually, semiannually, quarterly, monthly, semimonthly, biweekly, weekly, daily and continuously
- The total interest is split into "interest on the initial deposit" and "interest on contributions", so you can see in numbers what your regular deposits add
- Enter your tax rate on interest to get the tax and the after-tax interest. Enter an inflation rate to also get the buying power of the ending balance (its value in today's dollars)
- Includes a balance graph and a year-by-year table. A plain-language explanation of the formulas and copy-and-paste formulas for Excel, Google Sheets and Python are all on this page
What is this calculation used for?
For example, if you save $500 a month for 10 years at 4% (compounded monthly, deposits at the beginning), you put in $60,000 and end with about $73,870, so about $13,870 is interest.
Seeing "how much the rate changes things" and "how much I will have in 10 years" in numbers first lets you work backward from a goal, such as a down payment on a home or a new car, to decide your monthly savings.
If you save $200 a month from a child's birth until age 18 at 5% (compounded monthly, deposits at the beginning), you put in $43,200 and end with about $70,131.
You can try "how much a month is enough" against the expected cost of college. Real college savings, such as a 529 plan, are usually invested, with fees and the risk of loss, so use this fixed-rate result only as a guide.
Suppose you could save $500 a month for 30 years at 5% (compounded monthly, deposits at the beginning). You put in $180,000 and end with about $417,863. The interest, about $237,863, is more than the money you put in.
You can feel how compounding (interest earning interest) grows stronger over longer times, and it helps you decide to start saving for retirement early, for example in a 401(k) or an IRA. In real investing, however, returns are not fixed, and you can lose money.
If $10,000 sits at 0% for 10 years while prices rise 2% a year, its buying power becomes \(10000 \div 1.02^{10} \approx 8203\) dollars, a loss of about 18%. (2% is the long-run inflation target of the US Federal Reserve.)
Checking in numbers that "the balance did not go down, but it buys less" builds the habit of comparing your savings rate with the inflation rate.
In the US, the interest from savings accounts and CDs is taxable income, and you report it on your tax return. For example, if you earn $500 of interest and your tax rate is 22%, you keep \(500 \times (1 - 0.22) = 390\) dollars.
Knowing the difference between the advertised rate (before tax) and what you actually keep helps you read the numbers correctly when you compare accounts and plan your savings.
Automatic transfers from each paycheck into savings, or payroll contributions to a 401(k), are exactly "adding a fixed amount every month", so this monthly-contribution calculation applies directly.
For example, raising $200 a month to $400 a month at 4% for 10 years takes the ending balance from about $29,548 to about $59,096. Comparing in numbers like this helps you choose an amount you can keep up. (For a tax-advantaged account, set the tax rate to 0.)
Formulas and graphs
Symbols and terms
Symbols
| \(B_k\) | B sub k | The balance at the end of period \(k\). In the recurrence formula, it is the balance at the end of this period. |
| \(B_{k-1}\) | B sub k minus 1 | The balance at the end of the period before. In the recurrence formula, it is the balance at the end of the previous period. |
| \(C\) | C | The contribution for one period. It is added to the balance at the start of the period (beginning) or at the end of the period (end). |
| \(r\) | r | The interest rate for one period, written as a decimal. With annual compounding it is the annual rate itself (for 3%, \(r = 0.03\)). |
| \(A\) | A | The ending balance. The deposits plus interest at the end of the time period. |
| \(P\) | P | The initial deposit (principal). The amount you put in at the start. |
| \(S\) | S | The total contributions. All the money added through annual and monthly contributions during the period (not including the initial deposit). |
| \(I\) | I | The total interest. The ending balance minus the total deposits (initial deposit + total contributions). |
| \(I_0\) | I sub zero | The interest on the initial deposit. The interest you would have earned with no contributions. |
| \(I_C\) | I sub C | The interest on contributions. The total interest minus the interest on the initial deposit. |
| \(i\) | lowercase i | The inflation rate. How much prices rise in one year, written as a decimal (for 2%, \(i = 0.02\)). |
| \(t\) | t | The time period in years. How long you save. |
Terms
| contribution | Money you add again and again at regular intervals (every year, every month, and so on). US savings and retirement calculators use this word for regular deposits. |
| beginning of the period | The start of each period. When you contribute at the beginning, the deposit earns interest in that same period, so you earn more interest than with end-of-period contributions of the same size. |
| end of the period | The end of each period. When you contribute at the end, the deposit earns no interest in that period, so you earn less interest than with beginning-of-period contributions of the same size. |
| tax-advantaged account | An account such as a traditional IRA, a Roth IRA or a 401(k), where you pay no tax on the interest each year. In a traditional IRA or 401(k), tax is paid when you withdraw the money; in a Roth account, qualified withdrawals are tax-free. To simulate one, set the tax rate to 0. |
| compound interest | Interest that is added to the balance, so the next interest is earned on the new, larger total. Interest earns interest, so the longer the time, the faster it grows. See "Compound Interest Calculator" in the related pages for details. |
| compounding frequency | How often interest is added to the balance (annually, semiannually, monthly, and so on). With the same annual rate, more frequent compounding grows a little faster. The calculator on this page turns the chosen frequency into the monthly rate that gives the same growth over one year, and calculates month by month. |
| APY (annual percentage yield) | The yearly rate that already includes the effect of compounding, shown by US banks for savings accounts and CDs. It is higher than the stated rate (APR) when interest compounds more than once a year. For example, 3% APR compounded monthly is about 3.04% APY. |
| recurrence formula | A formula that finds the next value from the previous one. Compound interest with contributions is easier to follow as a one-period formula that is repeated than as a single long formula, and the calculator on this page works the same way. |
| tax on interest | Tax on the interest from savings accounts, CDs and bonds. In the US, interest is generally taxed as ordinary income, at the same rate as your wages, by the federal government and in many states. Banks report interest of $10 or more for the year on Form 1099-INT. |
| buying power | The value of money measured by how much it can actually buy, not by the number itself (the nominal amount). As prices rise, the same amount of money buys less. Also called purchasing power. |
| inflation | A steady rise in prices. When prices go up, the same amount of money buys less, so cash and low-interest savings lose real value. |
Good to know before you start
Here is what helps you use the calculation on this page with real understanding, not just by pressing the button.
| Percents (Grades 6–7) |
|
| Basics of compound interest ("Compound Interest Calculator" on this site) |
|
| Exponents (Grades 6–8) |
|
| Sequences and recurrence formulas (high school, advanced) |
|
How to calculate it in Excel
| Previous balance | 10000 |
| Contribution | 5000 |
| Rate per period (decimal; 5% = 0.05) | 0.05 |
| New balance | =(B1+B2)*(1+B3) |
| Previous balance | 10000 |
| Contribution | 5000 |
| Rate per period (decimal; 5% = 0.05) | 0.05 |
| New balance | =B1*(1+B3)+B2 |
| Ending balance | 15750 |
| Initial deposit | 10000 |
| Total contributions | 5000 |
| Interest on initial deposit | 500 |
| Total interest | =B1-(B2+B3) |
| Interest on contributions | =B5-B4 |
| Ending balance | 11000 |
| Inflation rate (decimal; 10% = 0.1) | 0.1 |
| Years | 1 |
| Buying power | =B1/(1+B2)^B3 |
| Monthly rate (annual ÷ 12; 3% = 0.0025) | 0.0025 |
| Months (10 years = 120) | 120 |
| Monthly contribution | 500 |
| Initial deposit | 10000 |
| Ending balance (beginning of period) | =FV(B1,B2,-B3,-B4,1) |
"*" is multiplication, "/" is division and "^" is a power (how many times to multiply).
The first table shows 15,750, the second 15,500, the third a total interest of 750 and interest on contributions of 250, and the fourth 10,000 (all in dollars).
The fifth table uses the FV function, Excel's function for savings with regular deposits, and gives about 83,538.92. The FV arguments are, in order: rate, number of periods, payment each period (entered as negative), initial deposit (entered as negative), and 1 for the beginning of the period (0 for the end). With monthly compounding and monthly contributions, it matches the calculator on this page.
How to calculate it in Google Sheets
| Previous balance | 10000 |
| Contribution | 5000 |
| Rate per period (decimal; 5% = 0.05) | 0.05 |
| New balance | =(B1+B2)*(1+B3) |
| Previous balance | 10000 |
| Contribution | 5000 |
| Rate per period (decimal; 5% = 0.05) | 0.05 |
| New balance | =B1*(1+B3)+B2 |
| Ending balance | 15750 |
| Initial deposit | 10000 |
| Total contributions | 5000 |
| Interest on initial deposit | 500 |
| Total interest | =B1-(B2+B3) |
| Interest on contributions | =B5-B4 |
| Ending balance | 11000 |
| Inflation rate (decimal; 10% = 0.1) | 0.1 |
| Years | 1 |
| Buying power | =B1/(1+B2)^B3 |
| Monthly rate (annual ÷ 12; 3% = 0.0025) | 0.0025 |
| Months (10 years = 120) | 120 |
| Monthly contribution | 500 |
| Initial deposit | 10000 |
| Ending balance (beginning of period) | =FV(B1,B2,-B3,-B4,1) |
How to calculate it in Python
principal = 10000 # initial deposit ($)
annual_addition = 0 # annual contribution ($)
monthly_addition = 500 # monthly contribution ($)
is_beginning = True # True = beginning of period, False = end of period
annual_rate = 0.03 # annual rate (0.03 for 3%)
times_per_year = 1 # compounding frequency (annually=1, semiannually=2, monthly=12, daily=365)
years = 10 # time (years)
months = 0 # time (months)
tax_rate = 0.0 # tax rate on interest (0.22 for 22%)
# Convert the compounding into the monthly rate that gives the same growth over one year
monthly_rate = (1 + annual_rate / times_per_year) ** (times_per_year / 12) - 1
balance = principal
total_contribution = 0
total_interest = 0
for k in range(1, years * 12 + months + 1):
if is_beginning:
if k % 12 == 1: # annual contribution in the first month of each year
balance += annual_addition
total_contribution += annual_addition
balance += monthly_addition
total_contribution += monthly_addition
interest = balance * monthly_rate
total_interest += interest
balance += interest * (1 - tax_rate) # add only the after-tax interest
if not is_beginning:
balance += monthly_addition
total_contribution += monthly_addition
if k % 12 == 0: # annual contribution in the last month of each year
balance += annual_addition
total_contribution += annual_addition
print(f"Ending balance: ${balance:,.2f}")
print(f"Total deposits: ${principal + total_contribution:,.2f}")
print(f"Total interest (before tax): ${total_interest:,.2f}")
How to write it in LaTeX and other math languages (copy and paste)
Bₖ = (Bₖ₋₁ + C) × (1 + r)
B_k = (B_{k-1} + C)(1 + r)
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<msub><mi>B</mi><mi>k</mi></msub>
<mo>=</mo>
<mrow>
<mo>(</mo>
<msub><mi>B</mi><mrow><mi>k</mi><mo>−</mo><mn>1</mn></mrow></msub>
<mo>+</mo>
<mi>C</mi>
<mo>)</mo>
</mrow>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>+</mo>
<mi>r</mi>
<mo>)</mo>
</mrow>
</mrow>
</math>
B_k = (B_(k-1) + C)(1 + r)
(bprev + c) (1 + r)
B[k] := (B[k-1] + c)*(1 + r);
B(k) = (B(k-1) + c)*(1 + r);
B_k = (B_(k-1) + C)(1 + r)
Bₖ = Bₖ₋₁ × (1 + r) + C
B_k = B_{k-1}(1 + r) + C
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<msub><mi>B</mi><mi>k</mi></msub>
<mo>=</mo>
<msub><mi>B</mi><mrow><mi>k</mi><mo>−</mo><mn>1</mn></mrow></msub>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>+</mo>
<mi>r</mi>
<mo>)</mo>
</mrow>
<mo>+</mo>
<mi>C</mi>
</mrow>
</math>
B_k = B_(k-1)(1 + r) + C
bprev (1 + r) + c
B[k] := B[k-1]*(1 + r) + c;
B(k) = B(k-1)*(1 + r) + c;
B_k = B_(k-1)(1 + r) + C
I = A − (P + S), I_C = I − I₀
I = A - (P + S), \quad I_C = I - I_0
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>I</mi>
<mo>=</mo>
<mi>A</mi>
<mo>−</mo>
<mrow>
<mo>(</mo>
<mi>P</mi>
<mo>+</mo>
<mi>S</mi>
<mo>)</mo>
</mrow>
<mo>,</mo>
<msub><mi>I</mi><mi>C</mi></msub>
<mo>=</mo>
<mi>I</mi>
<mo>−</mo>
<msub><mi>I</mi><mn>0</mn></msub>
</mrow>
</math>
I = A - (P + S), I_C = I - I_0
itotal = a - (p + s); ic = itotal - i0
Itotal := A - (P + S); Ic := Itotal - I0;
Itotal = A - (P + S); Ic = Itotal - I0;
I = A - (P + S), I_C = I - I_0
R = A ÷ (1 + i)ᵗ
R = \dfrac{A}{(1 + i)^{t}}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>R</mi>
<mo>=</mo>
<mfrac>
<mi>A</mi>
<msup>
<mrow><mo>(</mo><mn>1</mn><mo>+</mo><mi>i</mi><mo>)</mo></mrow>
<mi>t</mi>
</msup>
</mfrac>
</mrow>
</math>
R = A / (1 + i)^t
a/(1 + inflation)^t
R := A/(1 + infl)^t;
R = A/(1 + infl)^t;
R = A/(1 + i)^t
How to have ChatGPT do the calculation
You are an interest calculation assistant. Do the following calculation by actually running Python code, and base your answer only on the numbers from the execution result (do not answer by mental math or guessing). An initial deposit of $10,000 earns 3% a year (compounded annually), and $500 is added at the beginning of every month. The time period is 10 years. Convert the compounding into the equivalent monthly rate whose yearly growth factor is 1.03, and repeat "(balance + contribution) × (1 + monthly rate)" every month. Find each of the following: 1. The ending balance after 10 years, and the total deposits (initial deposit + total contributions) 2. The total interest, and its breakdown (interest on the initial deposit and interest on contributions) 3. If the interest is taxed at 22%, the total tax and the ending balance after tax Show the formulas you used and the numbers from the execution result.
How to Use
-
1Enter your numbersType the numbers you want to calculate with into the input fields
-
2CalculatePress the "Calculate" button
-
3Check the resultThe result appears on the spot. The same page also explains the idea behind the calculation and the formula
DataChef Features
No technical knowledge required.
Intuitive and user-friendly operation.
Can be used without registering personal information.
Automatic file deletion by clicking "download".
and rapid file conversion.
No attribution required.
No need to contact us for commercial use permission.
