CD Ladder Calculator

Structure your CDs so one matures every year, balancing higher yields with regular liquidity.

Inputs

$
%
%

Each longer rung earns this much more than the previous

Results update as you type, and the address bar keeps your numbers so the link you share reopens this exact calculation.

Total interest earned

$8,340

Detailed results
Amount per rung$10,000
Blended interest rate16.68%
Longest-rung rate5.5%
Average maturity (years)3

What this result means

Total interest earned: $8,340.

Across 5 rungs, this ladder earns $8,340 in total interest. One CD matures each year, giving you annual access to funds while keeping longer money in higher-yield rungs.

CD Ladder Rungs

Maturity date, rate, and interest for each rung of the ladder.

CD Ladder Rungs. 5 rows, first 5 shown.
RungTerm (years)PrincipalRate (%)Interest earnedMaturity value
11$10,0004.5%$450$10,450
22$10,0004.75%$973$10,973
33$10,0005%$1,576$11,576
44$10,0005.25%$2,271$12,271
55$10,0005.5%$3,070$13,070

How this is calculated

Each rung: FV = Principal × (1 + rate)^years. Rate for rung i = base_rate + (i−1) × rate_increment.

A CD ladder divides your savings into equal portions placed in CDs of different maturities — typically 1, 2, 3, 4, and 5 years. When the shortest one matures, you reinvest it in the longest rung (e.g., a new 5-year CD), maintaining the ladder indefinitely.

Why ladder instead of buying one CD? A single long-term CD locks up all your money and leaves you exposed to early withdrawal penalties if rates rise or you need cash. A ladder gives you annual liquidity while still capturing the higher yields available at longer maturities.

The rate step-up advantage. Longer-term CDs typically pay higher rates. By spreading across maturities, you earn a blended rate higher than the shortest-term CD, while retaining regular access to maturing funds.

Reinvesting at maturity. The real power of a ladder is what you do at each maturity: if rates rise, you lock in the higher rate. If rates fall, only a fraction of your portfolio renews at the lower rate. Compare this to putting everything in a 1-year CD — you'd renew 100% at whatever rate is available that year.

FDIC coverage. CDs at FDIC-insured banks are covered up to $250,000 per depositor per institution. A large CD ladder may require spreading across multiple banks to stay within coverage limits.

Assumptions

  • All CDs are held to maturity — no early withdrawal penalties applied.
  • Interest is compounded annually for simplicity; actual compounding frequency varies by institution.
  • Rate increment is a simplified assumption; actual rate curves are not linear.
  • FDIC coverage limits are not checked — user is responsible for spreading across institutions if needed.
  • Reinvestment rates at maturity are not modeled; returns reflect only initial ladder construction.

Frequently asked questions

What is a CD ladder?

A strategy that divides savings into equal amounts placed in CDs of different terms (e.g., 1–5 years), so one CD matures each year and can be reinvested or used as needed.

What do I do when a CD matures?

Roll it into the longest rung (e.g., a 5-year CD if your ladder has 5 rungs), keeping the ladder going. Or take the cash if you need liquidity.

How is a CD ladder better than a high-yield savings account?

CDs generally offer higher rates in exchange for locking up funds for a term. A ladder keeps some liquidity (one rung maturing per year) while capturing the rate premium over HYSAs.

What happens if I need the money before a CD matures?

Early withdrawal penalties typically range from 60–150 days of interest depending on the bank and term. Breaking a CD early can erode or eliminate your interest earnings.

Should I use brokered CDs or bank CDs?

Brokered CDs (purchased through a broker) can be sold on the secondary market without penalty, but their price fluctuates with interest rates. Bank CDs have fixed penalties but guaranteed face value.

Related calculators and guides

Last reviewed and sources

Last reviewed .

Statutory figures marked for verification currently use placeholder values of zero.