Your country

Tools that support it use your country for local currency, number formats, units and paper size. Your choice is saved only in this browser.

Type a name or a two-letter code. Use the up and down arrow keys to move through the countries, Enter to choose one and Escape to close.

Personal Finance for India  Module 5 – Banking, deposits and safe payments

Fixed and recurring deposits: interest and TDS

Work out what a fixed or recurring deposit pays with quarterly compounding, when the bank deducts TDS, when Form 121 applies and what is insured.

  • Beginner
  • 15 minutes
  • Examples run with Python 3.14.8
  • By MySmartCoPilot
Free: 15 minutes

What you will learn

  • Compute fixed and recurring deposit maturity values with quarterly compounding
  • Compare a cumulative deposit with one that pays its interest out
  • Calculate what breaking a deposit early costs under the RBI's rules
  • Apply the TDS thresholds on deposit interest and decide when Form 121 may be given
  • Check a deposit's safety from deposit insurance and the rules for company deposits

Before you start

What you’ll learn · Before you start

What you will learn

  • Compute fixed and recurring deposit maturity values with quarterly compounding
  • Compare a cumulative deposit with one that pays its interest out
  • Calculate what breaking a deposit early costs under the RBI's rules
  • Apply the TDS thresholds on deposit interest and decide when Form 121 may be given
  • Check a deposit's safety from deposit insurance and the rules for company deposits

Before you start

On this page

Meera’s deposits at one bank earn ₹62,000 of interest this year, so the bank will keep back ₹6,200 of it as TDS, although the tax on her whole year’s income is nil. Asha’s ₹5,000 a month in a two-year recurring deposit will come back as ₹1,29,099, and she cannot yet say where the extra ₹9,099 comes from.

This lesson works out what fixed and recurring deposits pay with quarterly compounding, compares keeping the interest with taking it out, prices breaking a deposit early, follows TDS from the threshold to Form 121, and checks how safe a deposit is. It is education only: the rates are examples for the arithmetic, the people are invented, and no bank, company or product is recommended.

A cumulative deposit adds its interest every quarter

A fixed deposit (FD): A sum placed with a bank for a fixed term at a rate agreed on the day. Its interest is either paid out at intervals or added to the balance until maturity. holds a sum for a fixed term at a rate agreed on the day. In a cumulative deposit: A fixed deposit that adds its interest to the balance, usually every quarter, and pays everything at maturity, so each quarter's interest earns in the quarters after it. the interest is not paid out but added to the balance, usually every quarter, so each quarter’s interest earns in the quarters after it. ₹1,00,000 for three years at 7 % a year gains 7 % ÷ 4 = 1.75 % every quarter, twelve times:

A=P×(1+r4)4tA = P \times \left(1 + \frac{r}{4}\right)^{4t}

In words: the maturity value is the principal times one plus a quarter of the yearly rate, multiplied by itself once for each quarter. Here ₹1,00,000 × 1.0175¹² = ₹1,23,143.93, or ₹1,23,144. The model starts at those values; change the rate or the term, or set “Interest added” to yearly, and read the maturity value and the effective yearly rate:

Interactive · change it and see ₹1,00,000 in a cumulative deposit at 7 %, interest added quarterly Set a starting amount, a yearly rate, how often interest is added and an amount added at the end of every month.
Balance and money paid in, year by year: amount (INR) against years.0112233050k1 L1.5 Lyearsamount (INR)balancepaid in

₹1,00,000 at 7 % a year grows to ₹1,23,144 in 3 years; ₹23,144 of it is interest.

Balance after 3 years ₹1,23,144
Paid in ₹1,00,000
Interest earned ₹23,144
Effective yearly rate 7.19 %
The numbers as a table
Balance at the end of each year
YearPaid inBalance
1₹1,00,000₹1,07,186
2₹1,00,000₹1,14,888
3₹1,00,000₹1,23,144

Quarterly compounding turns the quoted 7 % into 7.1859 % a year, as the compound interest lesson showed. A bank sets its own rates, but the RBI’s Directions bind how it pays them: a deposit earns exactly the rate in the schedule the bank has published in advance on its website, the same for every customer and every branch for deposits of similar amount taken on the same day. A bank may offer higher fixed rates to resident senior citizens through schemes made for them.

FD Calculator (India) Enter an amount, a rate, a term and the compounding, and see the maturity value and the interest by tax year.

Checkpoint

Check: Cumulative deposits and quarterly compounding

  1. One question ₹2,00,000 goes into a cumulative deposit for 2 years at 6 % a year, compounded quarterly. What is its maturity value, in rupees?

    Type a number.

    A hint

    Each quarter adds 6 % ÷ 4 = 1.5 %, eight times.

    Show the answer: One question

    Answer: 225299 rupees (anything from 225298 to 225300 counts)

    ₹2,00,000 × 1.015⁸ = ₹2,25,298.52, or ₹2,25,299. Simple interest would give ₹24,000; the extra ₹1,299 is interest on interest.

A payout deposit pays the same rate but never grows

A deposit can also pay its interest out, every quarter or every month, into a savings account. The rate is the same, but the balance never grows, so the interest is worked on the same ₹1,00,000 every time. The program follows both versions of the same deposit, quarter by quarter, and ends with a post office deposit that pays once a year:

₹1,00,000 at 7 %: kept in the deposit or paid out Python · fd_quarterly.py
"""₹1,00,000 for three years at 7 % a year: kept in the deposit, or paid out every quarter.

A cumulative deposit adds 7 % ÷ 4 = 1.75 % to the balance every quarter: P(1 + r/4)^(4t). A payout deposit pays the
same 1.75 % of the principal every quarter and keeps the principal as it is, so it earns no interest on interest. The
last part is a post office five-year time deposit, whose interest is compounded quarterly and paid out once a year
(National Savings Time Deposit Scheme, 2019, paragraph 7), rounded to the rupee. The rates are examples for the
arithmetic. Decimal module, rounded half up.
"""

from decimal import ROUND_HALF_UP, Decimal, getcontext

getcontext().prec = 40
D = Decimal


def inr(amount, places="1"):
    """Rupees with Indian digit grouping: 123143.9 -> "₹1,23,144"; places="0.01" keeps paise."""
    value = D(amount).quantize(D(places), rounding=ROUND_HALF_UP)
    whole, _, paise = str(value).partition(".")
    head, tail = whole[:-3], whole[-3:]
    groups = []
    while len(head) > 2:
        groups.insert(0, head[-2:])
        head = head[:-2]
    if head:
        groups.insert(0, head)
    text = ",".join(groups + [tail]) if groups else tail
    return "₹" + text + ("." + paise if paise else "")


P, RATE, YEARS = D(100000), D("0.07"), 3
quarter = RATE / 4

print(f"{inr(P)} at 7 % a year for {YEARS} years, interest added every quarter")
print(f"{'Quarter':<9}{'Cumulative':>14}{'Paid out':>13}")
balance, paid = P, D(0)
for q in range(1, 4 * YEARS + 1):
    balance = balance * (1 + quarter)
    paid += P * quarter
    if q in (1, 2, 4, 8, 12):
        print(f"{q:<9}{inr(balance, '0.01'):>14}{inr(paid, '0.01'):>13}")

interest_kept = balance - P
print()
print(f"Cumulative: {inr(balance)} at maturity, {inr(interest_kept)} of it interest")
print(f"Paid out:   {inr(P * quarter, '0.01')} a quarter, {inr(paid)} in all, and {inr(P)} back")
print(f"Interest on interest: {inr(interest_kept - paid)}")
effective = (1 + quarter) ** 4 - 1
print(f"7 % compounded quarterly earns {(effective * 100).quantize(D('0.0001'))} % a year.")

print()
td_rate = D("0.075")
yearly = (P * ((1 + td_rate / 4) ** 4 - 1)).quantize(D(1), rounding=ROUND_HALF_UP)
print(f"Post office 5-year time deposit at 7.5 %: {inr(yearly)} paid each year,")
print(f"{inr(yearly * 5)} over five years, and {inr(P)} back at the end.")

Output

₹1,00,000 at 7 % a year for 3 years, interest added every quarter
Quarter      Cumulative     Paid out
1          ₹1,01,750.00    ₹1,750.00
2          ₹1,03,530.63    ₹3,500.00
4          ₹1,07,185.90    ₹7,000.00
8          ₹1,14,888.18   ₹14,000.00
12         ₹1,23,143.93   ₹21,000.00

Cumulative: ₹1,23,144 at maturity, ₹23,144 of it interest
Paid out:   ₹1,750.00 a quarter, ₹21,000 in all, and ₹1,00,000 back
Interest on interest: ₹2,144
7 % compounded quarterly earns 7.1859 % a year.

Post office 5-year time deposit at 7.5 %: ₹7,714 paid each year,
₹38,570 over five years, and ₹1,00,000 back at the end.

Recorded with Python 3.14.8 on macOS 26 arm64. To run it yourself: mise exec python@3.14.8 -- python3 fd_quarterly.py

Paid out, the deposit brings ₹1,750 a quarter, ₹21,000 in three years, and the ₹1,00,000 back. Kept in, it brings ₹23,144. The ₹2,144 between them is interest on interest, which a payout deposit never earns. A payout is not a worse deal for someone who lives on the interest; it simply cannot compound, because nothing stays behind.

A post office time deposit: A government savings deposit of one, two, three or five years at a post office. Its interest is compounded quarterly and paid once a year, at the rate in force on the day it was opened. sits between the two. Its rules compound the interest quarterly within each year and pay it out once a year, so at 7.5 % a five-year deposit of ₹1,00,000 pays ₹7,714 every year, 7.71 % of the principal, and ₹38,570 over the five years. The rate on the day of opening holds until maturity.

Key idea

Cumulative and payout deposits at one rate differ only in interest on interest: kept in, ₹1,00,000 at 7 % for three years earns ₹23,144; paid out, ₹21,000.

Checkpoint

Check: Interest paid out instead of kept

  1. Question 1 of 2 The same ₹2,00,000 for 2 years at 6 % pays its interest out every quarter instead. How much interest does it pay in all, in rupees?

    Type a number.

    A hint

    The balance stays at ₹2,00,000, so every quarter pays the same.

    Show the answer: Question 1 of 2

    Answer: 24000 rupees

    Each quarter pays 1.5 % of ₹2,00,000, ₹3,000, and eight quarters pay ₹24,000. Kept in, the deposit would have earned ₹25,299, because its interest would have earned interest too.

  2. Question 2 of 2 Asha's father needs ₹1,750 every quarter to pay a bill, and has ₹1,00,000 to deposit at 7 %. Which deposit fits him?

    Choose one answer.

    Show the answer: Question 2 of 2

    Answer: A payout deposit, which pays him ₹1,750 a quarter and keeps the ₹1,00,000 intact

    At 7 %, a quarter's interest on ₹1,00,000 is ₹1,750. A payout deposit pays it every quarter; a cumulative one keeps it in to compound, which suits money that is not needed until maturity.

A recurring deposit compounds each instalment for its own months

In a recurring deposit (RD): A deposit into which the same instalment is paid every month for a fixed term. Each instalment earns interest only for the months it stays in until maturity. you pay the same instalment every month, and each instalment earns only for the months it stays in. Asha pays ₹5,000 a month for 24 months at 7 %: her first instalment is in for 24 months, her last for one. With quarterly compounding, an instalment in for j months grows by (1 + 7 % ÷ 4) raised to the power j ÷ 3, part quarters in proportion. Step through three of her instalments:

Interactive · step by step Asha's recurring deposit, one instalment at a time Step through three instalments and watch each one earn only for the months it stays in.
Asha's recurring deposit, one instalment at a time, step 4 of 4. Showing 1st instalment, In for 24 months (₹5,744.41), 13th instalment, In for 12 months (₹5,359.30), 24th instalment, In for 1 month (₹5,029.00), Maturity: all 24 added (₹1,29,099). In focus: Maturity: all 24 added.1st instalment₹5,000 in month 1In for 24 months₹5,744.4113th instalment₹5,000 in month 13In for 12 months₹5,359.3024th instalment₹5,000 in month 24In for 1 month₹5,029.00Maturity: all 24 added₹1,29,099

The drawing shows the whole scene; its 4 steps are listed below.

Every step as text
  1. The first instalment. Asha's first ₹5,000 goes in when the deposit opens and stays for all 24 months, eight full quarters. At 1.75 % a quarter it grows to ₹5,744.41.
  2. An instalment halfway. The 13th instalment is paid a year later and stays for 12 months, four quarters, so it grows only to ₹5,359.30.
  3. The last instalment. The 24th instalment stays for one month, a third of a quarter, and grows by (1.0175) to the power one third, to ₹5,029.00. It earns ₹29.
  4. The sum is the maturity value. Every instalment grows for its own months, and the 24 grown amounts add up to ₹1,29,099, which is ₹9,099 more than the ₹1,20,000 Asha paid in.

The maturity value is the sum of all 24 grown instalments. The program checks this way of counting against the post office’s own table before it works Asha’s deposit:

A recurring deposit, instalment by instalment Python · rd_maturity.py
"""What a recurring deposit pays: every instalment compounds quarterly for the months it stays in.

An instalment that stays in for j months grows by (1 + r/4)^(j/3), part quarters compounded in proportion, and the
maturity value is the sum over all instalments, the first in for n months and the last for one. This is the
convention of the rd-calculator, and it reproduces the post office's own table: the National Savings Recurring Deposit
Scheme, 2019 (paragraph 9) pays ₹7,231.38 for sixty deposits of ₹100 at 7.2 % and ₹6,969.67 at 5.8 %. A bank's RD
may round differently; the rates below are examples for the arithmetic. Decimal module, rounded half up.
"""

from decimal import ROUND_HALF_UP, Decimal, getcontext

getcontext().prec = 40
D = Decimal


def inr(amount, places="1"):
    """Rupees with Indian digit grouping: 356456.7 -> "₹3,56,457"; places="0.01" keeps paise."""
    value = D(amount).quantize(D(places), rounding=ROUND_HALF_UP)
    whole, _, paise = str(value).partition(".")
    head, tail = whole[:-3], whole[-3:]
    groups = []
    while len(head) > 2:
        groups.insert(0, head[-2:])
        head = head[:-2]
    if head:
        groups.insert(0, head)
    text = ",".join(groups + [tail]) if groups else tail
    return "₹" + text + ("." + paise if paise else "")


def growth(rate, months):
    """How much one rupee grows in `months` months at `rate` a year, compounded quarterly."""
    return (1 + D(rate) / 4) ** (D(months) / 3)


def maturity(monthly, rate, n):
    """The value of n monthly instalments, the first in for n months, the last for one month."""
    return sum(D(monthly) * growth(rate, j) for j in range(1, n + 1))


print("The formula against the post office's own table, 60 deposits of ₹100:")
for rate, table in (("0.072", "7231.38"), ("0.058", "6969.67")):
    value = maturity(100, rate, 60).quantize(D("0.01"), rounding=ROUND_HALF_UP)
    print(f"  at {(D(rate) * 100).normalize()} %: {inr(value, '0.01')} (the scheme's table: {inr(table, '0.01')})")

print()
print("Asha's bank RD: ₹5,000 a month for 24 months at 7 %")
for j, label in ((24, "first instalment"), (12, "13th instalment"), (1, "last instalment")):
    span = "1 month" if j == 1 else f"{j} months"
    print(f"  {label:<17} in for {span:>9}: grows to {inr(5000 * growth('0.07', j), '0.01')}")
bank = maturity(5000, "0.07", 24)
print(f"  maturity {inr(bank)}: {inr(5000 * 24)} paid in, {inr(bank - 5000 * 24)} interest")

print()
post = maturity(5000, "0.067", 60).quantize(D(1), rounding=ROUND_HALF_UP)
print("Post office RD: ₹5,000 a month for 60 months at 6.7 %")
print(f"  maturity {inr(post)}: {inr(5000 * 60)} paid in, {inr(post - 5000 * 60)} interest")

Output

The formula against the post office's own table, 60 deposits of ₹100:
  at 7.2 %: ₹7,231.38 (the scheme's table: ₹7,231.38)
  at 5.8 %: ₹6,969.67 (the scheme's table: ₹6,969.67)

Asha's bank RD: ₹5,000 a month for 24 months at 7 %
  first instalment  in for 24 months: grows to ₹5,744.41
  13th instalment   in for 12 months: grows to ₹5,359.30
  last instalment   in for   1 month: grows to ₹5,029.00
  maturity ₹1,29,099: ₹1,20,000 paid in, ₹9,099 interest

Post office RD: ₹5,000 a month for 60 months at 6.7 %
  maturity ₹3,56,829: ₹3,00,000 paid in, ₹56,829 interest

Recorded with Python 3.14.8 on macOS 26 arm64. To run it yourself: mise exec python@3.14.8 -- python3 rd_maturity.py

The formula gives exactly the ₹7,231.38 and ₹6,969.67 that the National Savings Recurring Deposit Scheme lists for sixty deposits of ₹100 at 7.2 % and 5.8 %. Asha’s deposit matures at ₹1,29,099: ₹1,20,000 paid in and ₹9,099 of interest, less than 7 % of ₹1,20,000 for two years would suggest, because most instalments are in for far less than two years. The post office’s recurring deposit runs 60 months, from ₹100 a month in multiples of ₹10, and at 6.7 % ₹5,000 a month comes back as ₹3,56,829.

RD Calculator (India) Enter a monthly instalment, a rate and a term, bank or post office, and see the maturity value and each tax year's interest.

Checkpoint

Check: Recurring deposits, instalment by instalment

  1. One question Asha's ₹5,000 a month for 24 months at 7 % earns ₹9,099 of interest. Why not about 7 % of ₹1,20,000 for two years, ₹16,800?

    Choose one answer.

    Show the answer: One question

    Answer: Each instalment earns only for the months it stays in, and most stay in for far less than two years

    A recurring deposit is a series of small deposits of different lengths: the first in for 24 months grows to ₹5,744.41, the last in for one month to ₹5,029. Their sum is ₹1,29,099.

Breaking a deposit early pays a lower rate, less a penalty you were told about

A bank must let an individual withdraw a term deposit of ₹1 crore or less before maturity, but the RBI’s rules change what it pays. Interest is paid at the bank’s rate for the amount and the period the deposit actually ran, not at the contracted rate, less a penalty for premature withdrawal. The penalty comes from a policy the bank’s board approves, and it must be made known when the deposit is taken: a bank that did not disclose it may not charge one. A deposit withdrawn before the minimum term of seven days earns no interest at all.

Meera's three-year deposit, broken after 14 months Python · premature.py
"""What Meera gives up by breaking a three-year deposit after 14 months.

The RBI's rule for a term deposit withdrawn early: interest at the rate for the amount and the period the deposit
actually ran, not the contracted rate, less the penalty the bank disclosed when the deposit was taken. The bank's
rates and its penalty of one percentage point are invented; interest is compounded quarterly with a part quarter
compounded in proportion, the convention of the lesson's other programs. Decimal module, rounded half up.
"""

from decimal import ROUND_HALF_UP, Decimal, getcontext

getcontext().prec = 40
D = Decimal


def inr(amount):
    """Whole rupees with Indian digit grouping: 106469.4 -> "₹1,06,469"."""
    whole = str(D(amount).quantize(D(1), rounding=ROUND_HALF_UP))
    head, tail = whole[:-3], whole[-3:]
    groups = []
    while len(head) > 2:
        groups.insert(0, head[-2:])
        head = head[:-2]
    if head:
        groups.insert(0, head)
    return "₹" + ",".join(groups + [tail]) if groups else "₹" + tail


def value(principal, rate, months):
    """The deposit after `months` months at `rate` a year, compounded quarterly."""
    return D(principal) * (1 + D(rate) / 4) ** (D(months) / 3)


P, MONTHS = D(100000), 14
CARD = {"1 year to under 2 years": D("0.065"), "2 years to 3 years": D("0.07")}  # the bank's (invented) card rates
PENALTY = D("0.01")

contracted = value(P, "0.07", MONTHS).quantize(D(1), rounding=ROUND_HALF_UP)
applicable = CARD["1 year to under 2 years"]
paid = value(P, applicable - PENALTY, MONTHS).quantize(D(1), rounding=ROUND_HALF_UP)
print(f"{inr(P)} for 3 years at 7 %, withdrawn after {MONTHS} months")
print(f"  at the contracted 7 % it would hold   {inr(contracted)}")
print(f"  rate for 14 months on the bank's card {applicable * 100:.1f} %")
print(f"  less the penalty of 1 point           {(applicable - PENALTY) * 100:.1f} %")
print(f"  paid out                              {inr(paid)}")
print(f"  cost of breaking it: {inr(contracted - paid)} of interest")
print()
full = value(P, "0.07", 36)
print(f"Left to mature, the same deposit pays {inr(full)} after 36 months.")

Output

₹1,00,000 for 3 years at 7 %, withdrawn after 14 months
  at the contracted 7 % it would hold   ₹1,08,433
  rate for 14 months on the bank's card 6.5 %
  less the penalty of 1 point           5.5 %
  paid out                              ₹1,06,580
  cost of breaking it: ₹1,853 of interest

Left to mature, the same deposit pays ₹1,23,144 after 36 months.

Recorded with Python 3.14.8 on macOS 26 arm64. To run it yourself: mise exec python@3.14.8 -- python3 premature.py

Meera’s deposit ran 14 months, so it earns the bank’s rate for one to two years, 6.5 % on its invented card, less one percentage point: 5.5 %. She receives ₹1,06,580 instead of the ₹1,08,433 the contracted 7 % would have built by then, ₹1,853 less, and gives up the ₹1,23,144 it would have paid at maturity. The post office’s time deposit has its own rule: nothing can be withdrawn in the first six months; between six months and a year it pays the Post Office Savings Account rate, 4 %; after a year, the rate for the completed period less two percentage points. The five-year deposit is the exception: it stays shut for four years, after which closing it earns just the savings account rate.

Split a large sum into smaller deposits

Several smaller deposits instead of one large one let you break only the part you need, so the lower rate and the penalty fall on that part alone and the rest runs to maturity at its contracted rate.

Checkpoint

Check: Breaking a deposit early

  1. Question 1 of 2 A three-year deposit contracted at 7 % is withdrawn after 14 months. Which rate does the RBI's rule apply?

    Choose one answer.

    Show the answer: Question 1 of 2

    Answer: The bank's rate for a deposit of that amount and that 14-month period, less the disclosed penalty

    For Meera's invented bank, the rate for one to two years is 6.5 %, less a penalty of one point: 5.5 %. She receives ₹1,06,580, ₹1,853 less than the contracted rate would have built in 14 months.

  2. Question 2 of 2 When Rahul opened his deposit, the bank did not tell him of any penalty for premature withdrawal. Can it charge one when he breaks it?

    Choose one answer.

    Show the answer: Question 2 of 2

    Answer: No, a penalty not brought to his notice when the deposit was taken cannot be charged

    A bank's penalty for premature withdrawal must come from its board-approved policy and be brought to the depositor's notice when the deposit is accepted. Without that, no penalty may be levied.

Above ₹50,000 of interest at one bank, TDS takes a tenth of all of it

A bank or a co-operative bank deducts tax deducted at source (TDS): Income tax that the payer deducts before paying you and deposits with the government in your name. On a salary, the employer deducts each month a share of the tax it expects on the year's pay. More in “Reading your payslip line by line” from deposit interest under section 393 of the Income-tax Act, 2025, and so does a post office on the deposit schemes notified for it, when the interest it pays or credits to one person in a tax year is more than ₹50,000, or ₹1,00,000 for a senior citizen. The rate is 10 % of the whole amount, not of the part above the threshold, and 20 % when the bank has no PAN for you. TDS is deducted when interest is credited to you or paid, whichever comes first, so the interest a cumulative deposit adds each year can bring TDS long before it matures. Follow the decision for one person at one bank:

Interactive · stage by stage TDS on deposit interest, or Form 121 Step through Meera's interest at her first bank, then see where Kabir's case goes another way.
TDS on deposit interest, or Form 121, step 6 of 6. Showing Interest from one bank, Over the threshold?, Is your year's tax nil?, TDS is deducted, Claim it in your return, No TDS deducted, Give Form 121. In focus: Claim it in your return.at or below ityes, and covered ≤ ₹4 lakhInterest from one bankin one tax yearOver the threshold?₹50,000, or ₹1 lakh at 60+Is your year's tax nil?after rebate and deductionsTDS is deducted10 %, or 20 % without PANClaim it in your returntax is at your slab anywayNo TDS deductedstill taxable incomeGive Form 121interest paid in full

The drawing shows the whole scene; its 6 steps are listed below.

Every step as text
  1. One payer, one year. The threshold is counted for each bank or post office separately, over one tax year. Meera's first bank pays her ₹62,000 of interest this year.
  2. Above the threshold. Meera is 35, so her threshold is ₹50,000, or ₹1,00,000 for a senior citizen. ₹62,000 is above it, so TDS will apply to the whole ₹62,000, not only the ₹12,000 above. Her second bank pays ₹38,000, below it, and deducts nothing.
  3. Is her year's tax nil?. Her income for the year is ₹9,00,000. Under the new regime the section 156 rebate makes the tax on it nil, and the interest her declaration covers, ₹1,00,000, is within ₹4,00,000.
  4. Form 121 instead of TDS. So Meera may give her first bank Form 121 for this tax year, and it pays the ₹62,000 without TDS. The interest is still income she reports in her return.
  5. When the tax is not nil. Kabir's income is ₹14,85,000 and his tax ₹1,06,860, so he may not give Form 121. His bank deducts 10 % of his ₹60,000 of interest, ₹6,000, or 20 % if it has no PAN for him.
  6. TDS counts towards the tax. TDS is an advance part of the tax on interest at his slab rate. Kabir claims the ₹6,000 in his return against the tax he owes on all his income.

TDS is not the tax itself. Deposit interest is income, taxed at your slab rate whether or not anything was deducted, and TDS is an advance part of that tax, claimed back or set off when you file your return. That is why Form 121: The declaration under section 393(6) of the Income-tax Act, 2025 that lets a resident individual receive interest without TDS, allowed only when the tax on the year's estimated total income will be nil. exists: a resident individual may give it to the bank to receive interest without TDS, but only when the tax on the whole year’s estimated income will be nil, after deductions and the section 156 rebate, and, for anyone under 60, when the incomes the form covers do not exceed the amount not chargeable to tax, ₹4,00,000 in the new regime. The program applies the rules to four people:

TDS and Form 121 for four depositors, new regime Python · tds_check.py
"""TDS on deposit interest in Tax Year 2026-27, and who may give a bank Form 121 instead.

Rules (Income-tax Act, 2025 with the rates of the Finance Act, 2026): a bank, a co-operative bank or a post office
deducts tax at 10 % when the interest it pays or credits to one person in a tax year exceeds ₹50,000, or ₹1,00,000
for a senior citizen (section 393(1), Table Sl. No. 5(ii)), on the whole amount, and at 20 % when no PAN is given
(section 397(2)). It may not deduct when the person gives a declaration in Form No. 121 (section 393(6), rule 211):
the tax on the year's estimated total income must be nil, after the section 156 rebate, and for anyone under 60 the
incomes the declaration covers may not exceed the amount not chargeable to tax, ₹4,00,000 in the new regime. The
people and amounts are invented; the new regime is assumed, and income and tax are rounded to ₹10 (section 516).
"""

from decimal import ROUND_HALF_UP, Decimal

D = Decimal
NEW = [(400000, "0"), (800000, "0.05"), (1200000, "0.10"), (1600000, "0.15"), (2000000, "0.20"), (2400000, "0.25"), (None, "0.30")]


def inr(amount):
    """Whole rupees with Indian digit grouping: 1485000 -> "₹14,85,000"."""
    whole = str(D(amount).quantize(D(1), rounding=ROUND_HALF_UP))
    head, tail = whole[:-3], whole[-3:]
    groups = []
    while len(head) > 2:
        groups.insert(0, head[-2:])
        head = head[:-2]
    if head:
        groups.insert(0, head)
    return "₹" + ",".join(groups + [tail]) if groups else "₹" + tail


def round_to_ten(amount):
    """Section 516: drop the paise, then round to the nearest ₹10 (a last digit of 5 or more rounds up)."""
    rupees = int(amount)
    return D(rupees - rupees % 10 + (10 if rupees % 10 >= 5 else 0))


def new_regime_tax(income):
    """Tax with 4 % cess under section 202(1), after the section 156 rebate and its marginal relief."""
    income = round_to_ten(income)
    tax, lower = D(0), D(0)
    for upper, rate in NEW:
        top = income if upper is None else min(income, D(upper))
        if top > lower:
            tax += (top - lower) * D(rate)
        if upper is None or income <= upper:
            break
        lower = D(upper)
    if income <= 1200000:
        tax = D(0)
    else:
        tax = min(tax, income - 1200000)
    return round_to_ten(tax * D("1.04"))


def tds(interest, senior, pan=True):
    """What one bank or post office deducts on a year's interest without a Form 121."""
    threshold = 100000 if senior else 50000
    if interest <= threshold:
        return D(0)
    return D(interest) * (D("0.10") if pan else D("0.20"))


def may_give_form_121(total_income, covered, senior):
    """Section 393(6): nil tax on the estimated total income, and (below 60) covered income within ₹4,00,000."""
    if new_regime_tax(total_income) != 0:
        return False, f"tax on {inr(total_income)} is {inr(new_regime_tax(total_income))}"
    if not senior and covered > 400000:
        return False, "covered income above ₹4,00,000"
    return True, f"tax on {inr(total_income)} is nil"


# Name, age, interest from each payer, other taxable income (salary after the ₹75,000 standard deduction, or fees).
PEOPLE = [
    ("Rahul", 22, {"Bank A": 56000}, 0),
    ("Meera", 35, {"Bank A": 62000, "Bank B": 38000}, 800000),
    ("Kabir", 30, {"Bank A": 60000}, 1425000),
    ("Asha's father", 63, {"Post office": 123000, "Bank C": 96000}, 0),
]

for name, age, payers, other in PEOPLE:
    senior = age >= 60
    interest = sum(payers.values())
    total = other + interest
    ok, why = may_give_form_121(total, interest, senior)
    print(f"{name}, {age}: interest {inr(interest)}, total income {inr(total)}")
    for payer, amount in payers.items():
        print(f"  {payer:<12} {inr(amount):>9} interest, TDS without Form 121: {inr(tds(amount, senior))}")
    print(f"  Form 121: {'may be given' if ok else 'not allowed'} ({why})")
    print()

print(f"Rahul with no PAN on record: TDS {inr(tds(56000, False, pan=False))} instead of {inr(tds(56000, False))}")

Output

Rahul, 22: interest ₹56,000, total income ₹56,000
  Bank A         ₹56,000 interest, TDS without Form 121: ₹5,600
  Form 121: may be given (tax on ₹56,000 is nil)

Meera, 35: interest ₹1,00,000, total income ₹9,00,000
  Bank A         ₹62,000 interest, TDS without Form 121: ₹6,200
  Bank B         ₹38,000 interest, TDS without Form 121: ₹0
  Form 121: may be given (tax on ₹9,00,000 is nil)

Kabir, 30: interest ₹60,000, total income ₹14,85,000
  Bank A         ₹60,000 interest, TDS without Form 121: ₹6,000
  Form 121: not allowed (tax on ₹14,85,000 is ₹1,06,860)

Asha's father, 63: interest ₹2,19,000, total income ₹2,19,000
  Post office  ₹1,23,000 interest, TDS without Form 121: ₹12,300
  Bank C         ₹96,000 interest, TDS without Form 121: ₹0
  Form 121: may be given (tax on ₹2,19,000 is nil)

Rahul with no PAN on record: TDS ₹11,200 instead of ₹5,600

Recorded with Python 3.14.8 on macOS 26 arm64. To run it yourself: mise exec python@3.14.8 -- python3 tds_check.py

Rahul, Meera and Asha’s father may each give Form 121, because the tax on their year is nil. Kabir may not: his tax on ₹14,85,000 is ₹1,06,860, so his bank takes ₹6,000 of his ₹60,000 interest. Meera’s ₹38,000 at a second bank is below the threshold, so nothing is deducted there, but it is still taxable income.

A false Form 121 is an offence

The form’s own declaration says that a person who gives it falsely is liable to prosecution and penalty under the Act. Give it only when the tax on your whole year will be nil, and give a new one each tax year.

TDS Calculator (India) Check the TDS on interest and other payments for the tax year, with the thresholds and the rate without a PAN.

Checkpoint

Check: TDS on interest and Form 121

  1. Question 1 of 2 Kabir, 30, earns ₹70,000 of interest from one bank in a tax year. The bank has his PAN and he cannot give Form 121. How much TDS does it deduct, in rupees?

    Type a number.

    A hint

    The threshold decides whether TDS applies; the rate applies to the whole amount.

    Show the answer: Question 1 of 2

    Answer: 7000 rupees

    ₹70,000 is above the ₹50,000 threshold, so 10 % of the whole ₹70,000 is deducted: ₹7,000. Without his PAN it would be 20 %, ₹14,000.

  2. Question 2 of 2 Who may lawfully give a bank Form 121 for Tax Year 2026-27, under the new regime?

    Choose one answer.

    Show the answer: Question 2 of 2

    Answer: Rahul, 22, whose only income is ₹56,000 of interest

    Form 121 declares that the tax on the year's estimated total income will be nil, after deductions and the section 156 rebate; below 60, the incomes it covers must also stay within ₹4,00,000. A false declaration is an offence.

Deposit insurance covers ₹5 lakh at each bank, and company deposits have none

How safe a deposit is depends on who holds it. Bank deposits are insured by the DICGC up to ₹5,00,000 per depositor in each bank, principal and interest together, counting everything held at that bank in the same right and capacity, as the emergency fund lesson works through. Deposits with a non-banking finance company are different: the RBI’s own FAQ says they are unsecured and have no deposit insurance.

Where the deposit is What stands behind it What to check
A bank DICGC insurance, ₹5,00,000 per depositor per bank The total you hold at each bank
The post office A Government of India savings scheme The scheme’s rules and the current rate
A deposit-taking NBFC Nothing: no deposit insurance The RBI’s list, the rating, the term

Only NBFCs that hold the RBI’s certificate to take deposits may accept them, and only with an investment-grade credit rating of at least BBB− from a SEBI-registered agency, for terms of 12 to 60 months, at no more than 12.5 % a year; the RBI publishes the list. A higher rate from a company is the price of a risk that a bank deposit does not carry.

Treating every deposit as insured

Wrong: “a company deposit is like a bank FD, only better paid”. Right: a bank deposit is insured up to ₹5 lakh per bank, while an NBFC deposit is unsecured with no deposit insurance, so its rating and the RBI’s list are what you rely on.

Checkpoint

Check: Deposit insurance and company deposits

  1. Question 1 of 2 Meera holds ₹7,00,000 at Bank A and ₹3,00,000 at Bank B, interest included, all in her own name. How much of it does DICGC insure, in rupees?

    Type a number.

    A hint

    The cover is per depositor, per bank.

    Show the answer: Question 1 of 2

    Answer: 800000 rupees

    At Bank A the cover stops at ₹5,00,000; at Bank B all ₹3,00,000 is covered. Together ₹8,00,000 is insured and ₹2,00,000 is not.

  2. Question 2 of 2 A finance company offers Rahul a deposit at a higher rate than his bank. What stands behind it?

    Choose one answer.

    Show the answer: Question 2 of 2

    Answer: Nothing like deposit insurance; NBFC deposits are unsecured, so the company's standing is all there is

    Only NBFCs with the RBI's deposit-taking certificate and a rating of at least BBB− may take deposits, but those deposits are unsecured and have no deposit insurance.

Practise: deposits, interest and TDS

The questions below begin with whichever deposit idea has tripped you up most in this lesson, and the summary links back to the section to reread. Round rupee answers to the nearest rupee unless a question asks for paise:

Practice that adapts to you

Practise this lesson

17 questions about 6 ideas of this lesson. Each answer is explained at once, and what you get right is kept in this browser.

  1. Question 1 of 17 What happens to the interest of a cumulative deposit before it matures?

    Choose one answer.

    Show the answer: Question 1 of 17

    Answer: It is added to the balance and earns interest in the quarters after it

    In a cumulative deposit each quarter's interest is added to the balance, so ₹1,00,000 at 7 % for three years grows to ₹1,23,144 instead of earning ₹21,000.

  2. Question 2 of 17 A bank quotes 8 % a year, compounded quarterly. What does a deposit earn in one year, as an effective rate in per cent to two decimals?

    Type a number.

    Show the answer: Question 2 of 17

    Answer: 8.24 % a year (anything from 8.23 to 8.25 counts)

    1.02 × 1.02 × 1.02 × 1.02 − 1 = 8.2432 %, or 8.24 % a year. Quarterly compounding always earns a little more than the quoted rate.

  3. Question 3 of 17 Two customers of the same bank open deposits of similar amount on the same day at different branches. What must the bank pay them?

    Choose one answer.

    Show the answer: Question 3 of 17

    Answer: The same rate, as in the schedule it published in advance on its website

    A bank chooses its deposit rates, but it must publish them in advance and pay them uniformly: no difference in rate between deposits of a similar size taken on the same day at any of its branches.

  4. Question 4 of 17 A post office five-year time deposit of ₹2,00,000 at 7.5 % compounds quarterly and pays its interest once a year. How much does it pay each year, in rupees?

    Type a number.

    A hint

    Work one year of quarterly compounding, then take the interest out.

    Show the answer: Question 4 of 17

    Answer: 15427 rupees (anything from 15426 to 15428 counts)

    ₹2,00,000 × ((1 + 0.075 ÷ 4)⁴ − 1) = ₹15,427.17, paid as ₹15,427 a year. That is twice the lesson's ₹7,714 on ₹1,00,000.

  5. Question 5 of 17 Why does a payout deposit end with less interest than a cumulative one at the same rate?

    Choose one answer.

    Show the answer: Question 5 of 17

    Answer: Its interest leaves the deposit, so later interest is worked on the principal alone

    Paid out, ₹1,00,000 at 7 % earns ₹1,750 every quarter, ₹21,000 in three years. Kept in, it earns ₹23,144, because each quarter's interest earns too.

  6. Question 6 of 17 In a 24-month recurring deposit, how long does the last instalment earn interest?

    Choose one answer.

    Show the answer: Question 6 of 17

    Answer: One month

    The first instalment earns for 24 months and the last for one: at 7 %, ₹5,000 grows to ₹5,744.41 and ₹5,029.00.

  7. Question 7 of 17 The last instalment of a recurring deposit, ₹10,000, stays in for one month at 7 % compounded quarterly. What is it worth at maturity, in rupees?

    Type a number.

    A hint

    One month is a third of a quarter, so it grows by (1 + 0.07 ÷ 4) to the power one third.

    Show the answer: Question 7 of 17

    Answer: 10058 rupees (anything from 10057 to 10059 counts)

    ₹10,000 × 1.0175^(1/3) = ₹10,058.00. It earns ₹58, twice the ₹29 of Asha's ₹5,000 instalment.

  8. Question 8 of 17 How long does the post office's recurring deposit run?

    Choose one answer.

    Show the answer: Question 8 of 17

    Answer: 60 months, with instalments from ₹100 in multiples of ₹10

    The post office RD takes sixty monthly deposits of ₹100 or more in multiples of ₹10; at 6.7 %, ₹5,000 a month matures at ₹3,56,829.

  9. Question 9 of 17 A bank deposit is withdrawn four days after it was made. What interest does it earn?

    Choose one answer.

    Show the answer: Question 9 of 17

    Answer: None, because it ran less than the minimum term of seven days

    The minimum term of a bank deposit is seven days, and a deposit withdrawn before it earns no interest.

  10. Question 10 of 17 A post office one-year time deposit is closed after eight months. What does the scheme pay?

    Choose one answer.

    Show the answer: Question 10 of 17

    Answer: Interest at the Post Office Savings Account rate, 4 %, for the completed months

    No deposit can be withdrawn in the first six months; from six months to a year the savings account rate applies; after a year, a two- or three-year deposit earns two points less than the rate for the period completed. A five-year deposit cannot be closed before four years, and then earns the savings account rate.

  11. Question 11 of 17 Meera's deposit would hold ₹1,08,433 after 14 months at its contracted 7 %, and the bank pays ₹1,06,580 when she breaks it. How much interest does breaking it cost her, in rupees?

    Type a number.

    Show the answer: Question 11 of 17

    Answer: 1853 rupees

    ₹1,08,433 − ₹1,06,580 = ₹1,853: the lower rate for the shorter period and the one-point penalty together. She also gives up the ₹1,23,144 the deposit would have paid at maturity.

  12. Question 12 of 17 Above what interest from one bank in a tax year does TDS start for a senior citizen?

    Choose one answer.

    Show the answer: Question 12 of 17

    Answer: ₹1,00,000

    Under section 393(1), Table Sl. No. 5(ii), the threshold for interest from a bank, a co-operative bank or a post office is ₹1,00,000 a year for a senior citizen and ₹50,000 for anyone else.

  13. Question 13 of 17 Asha, 25, earns ₹55,000 of interest from one bank in a tax year, and the bank has her PAN. How much TDS does it deduct, in rupees?

    Type a number.

    A hint

    Once over the threshold, the rate applies to the entire amount.

    Show the answer: Question 13 of 17

    Answer: 5500 rupees

    ₹55,000 is above ₹50,000, so 10 % of all ₹55,000 is deducted: ₹5,500, not 10 % of the ₹5,000 above the threshold.

  14. Question 14 of 17 Rahul's bank pays him ₹56,000 of interest and has no PAN for him. How much does it deduct, in rupees?

    Type a number.

    Show the answer: Question 14 of 17

    Answer: 11200 rupees

    Without a PAN, section 397(2) makes the rate 20 %: ₹11,200 instead of ₹5,600. Giving the bank his PAN, or a valid Form 121, would change that.

  15. Question 15 of 17 Meera's second bank pays her ₹38,000 of interest and deducts no TDS. What does that mean for her tax?

    Choose one answer.

    Show the answer: Question 15 of 17

    Answer: Nothing changes: the ₹38,000 is still income, taxed at her slab rate with the rest

    A threshold decides only whether the bank deducts in advance. All deposit interest is income, and the tax on it is settled in the return; for Meera, under the new regime, the year's tax is nil anyway.

  16. Question 16 of 17 How much does DICGC insure for each depositor?

    Choose one answer.

    Show the answer: Question 16 of 17

    Answer: Up to ₹5,00,000 in each bank, principal and interest together

    DICGC insures each depositor up to ₹5,00,000 in each bank for principal and interest, which is why a large total is safer spread across banks.

  17. Question 17 of 17 Which of these is a rule the RBI sets for an NBFC that takes deposits?

    Choose one answer.

    Show the answer: Question 17 of 17

    Answer: An investment-grade rating of at least BBB−, and terms of 12 to 60 months

    Only NBFCs with the RBI's deposit-taking certificate and a minimum BBB− rating may take public deposits, for 12 to 60 months, at no more than 12.5 %; the deposits are unsecured, so the RBI's list and the rating are the checks.

Check a deposit of your own

Take a deposit you hold. Work its maturity value with its rate and compounding, add up the interest every deposit pays you at that bank this tax year, and see whether it crosses ₹50,000, or ₹1,00,000 if you are 60 or older.

Interview questions

Warm-up (fresher): Why does a cumulative deposit pay more than a payout deposit at the same rate?

Because a cumulative deposit adds each quarter’s interest to the balance, and later quarters pay interest on that larger balance, while a payout deposit pays its interest out and is left with the same principal every quarter. At 7 % for three years, ₹1,00,000 kept in grows to ₹1,23,144, interest of ₹23,144; paid out quarterly it brings ₹1,750 a quarter, ₹21,000 in all. The ₹2,144 between them is interest on interest. The payout version still suits someone who needs a regular income from the deposit; it simply cannot compound.

Warm-up (fresher): When does a bank deduct TDS on deposit interest, and how can you avoid it lawfully?

Under section 393 of the Income-tax Act, 2025, a bank, co-operative bank or post office deducts 10 % of the whole interest it pays or credits to you in a tax year once that interest exceeds ₹50,000, or ₹1,00,000 for a senior citizen, and 20 % if it has no PAN for you. You can lawfully receive it without TDS only by giving Form 121, and only if the tax on your whole year’s estimated income is nil; if you are under 60, the incomes it covers must also stay within ₹4,00,000 in the new regime. Otherwise TDS is simply an advance part of the tax you owe at your slab rate.

Key takeaways

  • A cumulative deposit compounds quarterly: ₹1,00,000 at 7 % for three years matures at ₹1,23,144, an effective 7.1859 % a year.
  • A payout deposit at the same rate earns no interest on interest, ₹21,000 instead of ₹23,144, and a post office time deposit pays a year’s quarterly-compounded interest once a year.
  • A recurring deposit compounds each instalment for its own months: ₹5,000 a month for 24 months at 7 % matures at ₹1,29,099.
  • A deposit broken early earns the rate for the period it ran less the disclosed penalty: Meera’s deposit, broken after 14 months, paid ₹1,853 less than its contracted rate would have.
  • Above ₹50,000 of interest at one bank in a tax year (₹1,00,000 at 60 or over), TDS takes 10 % of all of it, and Form 121 is allowed only when the tax on your whole year will be nil.
  • DICGC insures bank deposits up to ₹5 lakh per depositor per bank; deposits with an NBFC are unsecured and have no deposit insurance.

Terms in this lesson

cumulative deposit
A fixed deposit that adds its interest to the balance, usually every quarter, and pays everything at maturity, so each quarter's interest earns in the quarters after it.
fixed deposit (FD)
A sum placed with a bank for a fixed term at a rate agreed on the day. Its interest is either paid out at intervals or added to the balance until maturity.
Form 121
The declaration under section 393(6) of the Income-tax Act, 2025 that lets a resident individual receive interest without TDS, allowed only when the tax on the year's estimated total income will be nil.
post office time deposit
A government savings deposit of one, two, three or five years at a post office. Its interest is compounded quarterly and paid once a year, at the rate in force on the day it was opened.
recurring deposit (RD)
A deposit into which the same instalment is paid every month for a fixed term. Each instalment earns interest only for the months it stays in until maturity.

References

Related tools

Report a problem with this lesson

Quick answers and tool search

Type to search tools or to get a quick answer, for example 18% of 2500. Use the up and down arrow keys to move through the results, Enter to choose, and Escape to close.