Series I Bond Calculator

Series I Bond Value Calculator

Use this calculator to estimate the current or future value of your Series I Savings Bond. You will need to know your bond's purchase date, its fixed rate component, and the semi-annual inflation rates that have applied or are expected to apply to your bond.

January February March April May June July August September October November December var currentYear = new Date().getFullYear(); for (var i = currentYear; i >= 1998; i–) { document.write(" + i + "); }

This is the fixed rate component of your specific I Bond, set at the time of purchase. Find it on TreasuryDirect.

January February March April May June July August September October November December document.getElementById('currentMonth').value = new Date().getMonth() + 1; var currentYear = new Date().getFullYear(); for (var i = currentYear + 5; i >= 1998; i–) { document.write(" + i + "); }

Enter the semi-annual inflation rates (as decimals, e.g., 1% = 0.01) in chronological order, starting with the rate applicable to your bond's first 6-month interest period. If you don't provide enough rates, the last rate will be used for subsequent periods, or 0 if none are provided. Find historical rates on TreasuryDirect.

Calculation Results

Enter your bond details and click "Calculate" to see the estimated value.

.series-i-bond-calculator { font-family: Arial, sans-serif; max-width: 600px; margin: 20px auto; padding: 20px; border: 1px solid #ccc; border-radius: 8px; background-color: #f9f9f9; } .series-i-bond-calculator h2, .series-i-bond-calculator h3 { color: #333; text-align: center; margin-bottom: 15px; } .series-i-bond-calculator p { font-size: 0.9em; color: #555; line-height: 1.5; } .calculator-inputs label { display: block; margin-bottom: 5px; font-weight: bold; color: #444; } .calculator-inputs input[type="number"], .calculator-inputs select, .calculator-inputs textarea { width: calc(100% – 22px); padding: 10px; margin-bottom: 15px; border: 1px solid #ddd; border-radius: 4px; box-sizing: border-box; } .calculator-inputs textarea { resize: vertical; min-height: 60px; } .calculator-inputs .input-help { font-size: 0.85em; color: #666; margin-top: -10px; margin-bottom: 15px; } .calculator-inputs button { display: block; width: 100%; padding: 12px 20px; background-color: #007bff; color: white; border: none; border-radius: 4px; font-size: 1em; cursor: pointer; transition: background-color 0.3s ease; } .calculator-inputs button:hover { background-color: #0056b3; } .calculator-results { margin-top: 20px; padding-top: 15px; border-top: 1px solid #eee; } .calculator-results div { background-color: #e9ecef; padding: 15px; border-radius: 4px; } .calculator-results p { margin-bottom: 8px; color: #333; } .calculator-results p strong { color: #000; } function calculateIBondValue() { var purchaseAmount = parseFloat(document.getElementById("purchaseAmount").value); var purchaseMonth = parseInt(document.getElementById("purchaseMonth").value); var purchaseYear = parseInt(document.getElementById("purchaseYear").value); var fixedRate = parseFloat(document.getElementById("fixedRate").value) / 100; // Convert percentage to decimal var currentMonth = parseInt(document.getElementById("currentMonth").value); var currentYear = parseInt(document.getElementById("currentYear").value); var inflationRatesList = document.getElementById("inflationRatesList").value; var inflationRatesArray = inflationRatesList.split(',').map(function(item) { return parseFloat(item.trim()); }).filter(function(item) { return !isNaN(item); }); var resultDiv = document.getElementById("result"); resultDiv.innerHTML = ""; // Clear previous results // Input validation if (isNaN(purchaseAmount) || purchaseAmount <= 0) { resultDiv.innerHTML = "Please enter a valid Purchase Amount."; return; } if (isNaN(fixedRate) || fixedRate currentYear || (purchaseYear === currentYear && purchaseMonth > currentMonth)) { resultDiv.innerHTML = "The 'Calculate Value As Of' date cannot be before the Purchase Date."; return; } var purchaseDate = new Date(purchaseYear, purchaseMonth – 1, 1); var currentDate = new Date(currentYear, currentMonth – 1, 1); var value = purchaseAmount; var totalInterestAccrued = 0; var monthlyInterestAccrual = []; // To store interest accrued each month for penalty calculation var monthsHeld = (currentDate.getFullYear() – purchaseDate.getFullYear()) * 12 + (currentDate.getMonth() – purchaseDate.getMonth()); if (monthsHeld < 0) { // Should be caught by earlier validation, but good to double check resultDiv.innerHTML = "The 'Calculate Value As Of' date cannot be before the Purchase Date."; return; } for (var month = 0; month currentDate) { break; // Stop if we've passed the current date } // Determine the 6-month interest period index for the current month // The bond's interest periods start on the 1st of the purchase month. // Example: Purchased July. Period 1: July-Dec. Period 2: Jan-June. // (currentCalcDate.getMonth() – purchaseDate.getMonth() + 12) % 12 gives month offset from purchase month // (month) / 6 gives the 6-month period index relative to purchase date var periodIndex = Math.floor(month / 6); var semiAnnualInflationRate = 0; if (periodIndex 0) { // If not enough rates provided, use the last one as an estimate for future periods semiAnnualInflationRate = inflationRatesArray[inflationRatesArray.length – 1]; } // Composite Rate = Fixed Rate + (2 * Semi-Annual Inflation Rate) + (Fixed Rate * Semi-Annual Inflation Rate) var compositeRate = fixedRate + (2 * semiAnnualInflationRate) + (fixedRate * semiAnnualInflationRate); var monthlyRate = compositeRate / 6; // I-Bonds compound semi-annually, but value is updated monthly based on the 6-month rate. var interestThisMonth = value * monthlyRate; value += interestThisMonth; totalInterestAccrued += interestThisMonth; monthlyInterestAccrual.push(interestThisMonth); } var finalValue = value; var penaltyAmount = 0; var valueAfterPenalty = finalValue; // I-Bond redemption rules: // Cannot redeem before 12 months. // If redeemed before 5 years, forfeit the last 3 months of interest. // If redeemed before 12 months, forfeit all interest. if (monthsHeld < 12) { penaltyAmount = totalInterestAccrued; valueAfterPenalty = purchaseAmount; } else if (monthsHeld < 60) { // Less than 5 years // Forfeit the last 3 months of interest for (var k = 1; k = 0) { penaltyAmount += monthlyInterestAccrual[monthlyInterestAccrual.length – k]; } } valueAfterPenalty = finalValue – penaltyAmount; } resultDiv.innerHTML = "Purchase Amount: $" + purchaseAmount.toFixed(2) + "" + "Months Held: " + monthsHeld + "" + "Estimated Value (Before Penalty): $" + finalValue.toFixed(2) + "" + "Total Interest Accrued: $" + totalInterestAccrued.toFixed(2) + "" + "Penalty for Early Redemption: $" + penaltyAmount.toFixed(2) + "" + "Estimated Value (After Penalty): $" + valueAfterPenalty.toFixed(2) + ""; }

Understanding Series I Savings Bonds

Series I Savings Bonds, often simply called I Bonds, are a type of savings bond issued by the U.S. Treasury. They are designed to protect your investment from inflation, offering a return that adjusts with the cost of living.

How I Bonds Work:

  • Fixed Rate: When you purchase an I Bond, it comes with a fixed rate that remains the same for the life of the bond (up to 30 years). This rate can be 0% or higher, depending on market conditions at the time of purchase.
  • Variable Rate (Inflation Rate): In addition to the fixed rate, I Bonds earn a variable rate that is tied to the Consumer Price Index for all Urban Consumers (CPI-U). This variable rate is announced twice a year, in May and November.
  • Composite Rate: The actual interest rate your I Bond earns is a combination of its fixed rate and the variable (inflation) rate. The formula for the composite rate is: Fixed Rate + (2 * Semi-Annual Inflation Rate) + (Fixed Rate * Semi-Annual Inflation Rate). This composite rate is applied for six-month periods.
  • Compounding: Interest on I Bonds is compounded semi-annually. This means that the interest earned in one six-month period is added to the bond's principal, and the next period's interest is calculated on the new, larger principal.
  • Maturity: I Bonds earn interest for 30 years or until you cash them, whichever comes first.

Key Considerations for Redemption:

  • Minimum Holding Period: You cannot cash an I Bond until you've held it for at least 12 months.
  • Early Redemption Penalty: If you cash an I Bond before holding it for five years, you will forfeit the last three months of interest. For example, if you cash a bond after 18 months, you'll receive 15 months of interest. If you cash it after 10 months (which is not allowed), you would forfeit all interest.

Finding Your Bond's Rates:

To use this calculator accurately, you'll need to know your specific bond's fixed rate and the historical semi-annual inflation rates that apply to its interest periods. You can find this information by logging into your TreasuryDirect account and viewing your bond details. TreasuryDirect also publishes historical fixed and variable rates.

When entering the "Semi-Annual Inflation Rates" in the calculator, ensure you list them in chronological order, starting with the rate that applied to your bond's very first 6-month interest period. For example, if you bought a bond in July, its first 6-month period would be July-December, and the applicable variable rate would be the one announced in May of that year.

Leave a Comment