The value of the bill at maturity (usually $100 or $1,000 increments).
The discounted amount you actually paid.
Number of days until the bill matures (e.g., 28, 91, 182).
Please enter valid numeric values. Price must be lower than Face Value.
Discount Amount (Profit):$0.00
Bank Discount Yield (360-day):0.00%
Bond Equivalent Yield (APY):0.00%
Understanding Treasury Bill Rates and Yields
Treasury Bills (T-Bills) are short-term debt securities issued by the U.S. government. Unlike traditional bonds that pay regular interest (coupons), T-Bills are sold at a discount to their face value. The "interest" you earn is actually the difference between the price you pay to buy the bill and the face value you receive when it matures.
This calculator helps you determine the annualized return on your investment, distinguishing between the Bank Discount Yield (often quoted in auctions) and the Bond Equivalent Yield (or Investment Rate), which allows you to compare T-Bill returns against traditional investments like CDs or Savings Accounts.
How Treasury Yields Are Calculated
Because T-Bills do not pay coupons, the math relies on the discount amount and the time remaining until maturity.
The Core Formulas:
Discount Amount: Face Value – Purchase Price
Bank Discount Yield: (Discount / Face Value) × (360 / Days to Maturity)
Bond Equivalent Yield (Investment Rate): (Discount / Purchase Price) × (365 / Days to Maturity)
1. Discount Amount
This is your actual profit in dollars. If you buy a $1,000 T-Bill for $950, your discount amount (profit) is $50. You receive the full $1,000 at maturity.
2. Bank Discount Yield vs. Bond Equivalent Yield
This is a common point of confusion for investors. When you look at Treasury auction results, you will see two different rates:
Bank Discount Yield: This is calculated based on the Face Value and uses a 360-day banking year. It typically understates the actual return on your money.
Bond Equivalent Yield (BEY): This is calculated based on the Purchase Price (your actual investment) and uses a 365-day calendar year. This is the figure you should use to compare T-Bills to a High-Yield Savings Account or a Certificate of Deposit (CD).
Example Calculation
Let's say you purchase a 26-week (182-day) T-Bill with a Face Value of $10,000. The auction price is $9,750.
Metric
Value
Face Value
$10,000
Purchase Price
$9,750
Discount (Profit)
$250
Bond Equivalent Yield
5.14%
In this example, your $9,750 investment grew by $250 in 182 days. The annualized return (BEY) is 5.14%.
Why Invest in Treasury Bills?
Risk-Free: Backed by the full faith and credit of the U.S. government.
State Tax Exempt: While subject to federal income tax, interest earned on T-Bills is exempt from state and local income taxes. This can significantly boost your effective yield if you live in a high-tax state like California or New York.
Liquidity: T-Bills are highly liquid and can be sold on the secondary market before maturity if you need the cash.
Frequently Asked Questions
What happens if I sell before maturity?
If you sell a T-Bill before it matures, the price you receive will depend on current interest rates. If rates have risen since you bought it, the price of your bill may have dropped. If rates have fallen, your bill may be worth more.
What are the standard maturity periods?
New T-Bills are issued in terms of 4, 8, 13, 17, 26, and 52 weeks. However, on the secondary market, you can buy bills with any number of days remaining until maturity.
Is the "High Rate" on TreasuryDirect the same as Yield?
On TreasuryDirect auction results, the "Investment Rate" column represents the Bond Equivalent Yield calculated by this tool. The "High Rate" is usually the highest accepted discount rate at the auction.
function calculateTreasuryYield() {
// Get input values using var
var faceValueInput = document.getElementById('faceValue');
var purchasePriceInput = document.getElementById('purchasePrice');
var daysToMaturityInput = document.getElementById('daysToMaturity');
var resultsArea = document.getElementById('resultsArea');
var errorMsg = document.getElementById('errorMsg');
// Parse values
var faceValue = parseFloat(faceValueInput.value);
var purchasePrice = parseFloat(purchasePriceInput.value);
var days = parseFloat(daysToMaturityInput.value);
// Validation logic
// 1. Check if numbers are valid
// 2. Face Value must be greater than 0
// 3. Purchase Price must be greater than 0
// 4. Days must be greater than 0
// 5. Purchase Price must be less than Face Value (for positive yield)
if (isNaN(faceValue) || isNaN(purchasePrice) || isNaN(days) || faceValue <= 0 || purchasePrice <= 0 || days = faceValue) {
errorMsg.style.display = 'block';
errorMsg.innerText = "Purchase Price usually must be lower than Face Value to generate a yield.";
// We allow calculation but warn, or stop. Let's calculate but results might be negative or zero.
// For a yield calculator, usually we expect a discount.
} else {
errorMsg.style.display = 'none';
}
// Calculation Logic
// 1. Discount Amount
var discountAmount = faceValue – purchasePrice;
// 2. Bank Discount Yield
// Formula: (Discount / Face Value) * (360 / Days)
var bankYieldDecimal = (discountAmount / faceValue) * (360 / days);
var bankYieldPercent = bankYieldDecimal * 100;
// 3. Bond Equivalent Yield (Investment Rate)
// Formula: (Discount / Purchase Price) * (365 / Days)
// Note: Leap years sometimes use 366, but standard financial convention often defaults to 365 or 366 depending on the specific year.
// We will use 365 for standard approximation.
var bondYieldDecimal = (discountAmount / purchasePrice) * (365 / days);
var bondYieldPercent = bondYieldDecimal * 100;
// Update HTML Results
document.getElementById('resDiscount').innerText = '$' + discountAmount.toFixed(2);
document.getElementById('resBankYield').innerText = bankYieldPercent.toFixed(3) + '%';
document.getElementById('resBondYield').innerText = bondYieldPercent.toFixed(3) + '%';
// Show results
resultsArea.style.display = 'block';
}