Strasmore Research
Learn Matt ConnorBy Matt Connor

T-Bill Maturities and How Yields Are Quoted

The T-bill maturities Treasury actually auctions, and why a nine-month bill yield has to be interpolated from the two published points on either side of it.

T-bill maturities come in seven regular lengths. Treasury auctions bills at 4, 6, 8, 13, 17, 26 and 52 weeks, and adds cash management bills of irregular length when its cash needs call for them. The published yield curves carry a different list of tenors, and none of them has a nine-month point, so a nine-month bill yield is a figure you build from two points on either side of it rather than a security anyone sells you.

Which T-bill maturities does Treasury auction?

A Treasury bill is a zero-coupon security: you pay less than face value, collect the full face value at maturity, and the difference is the entire return. Face value, also called par, is the $100-per-unit amount the bill pays at the end. Bills pay nothing along the way, and their tenors are quoted in weeks rather than years.

The 4-week, 8-week, 13-week, 17-week and 26-week bills are auctioned weekly, the 52-week bill every four weeks, and the 6-week bill is the newest of the regular short tenors. Market shorthand renames most of them. The "3-month bill" is the 13-week bill, 91 days. The "6-month bill" is the 26-week bill, 182 days. The "1-year bill" is the 52-week bill, which actually runs 364 days. Cash management bills sit outside the calendar entirely, with maturities that can be a handful of days.

Which maturities the daily yield curve publishes

Two official daily tables cover the short end, and they do not carry the same tenors. The Daily Treasury Bill Rates table follows the auctioned bills, 4 through 52 weeks, and prints two rates for each one. The Daily Treasury Par Yield Curve publishes constant-maturity points instead: 1 month, 1.5 months, 2 months, 3 months, 4 months, 6 months and 1 year at the front, then a jump to 2 years. Neither table has ever carried a nine-month entry.

The panel below takes three of those points, from the 3-month tenor out to the 2-year note just past the bill sector, over the six months from April to late September 2026, and shows the average, the low and the high of each.

QueryThe published short end of the Treasury curve, April to September 2026
tenor_pointnearest_securityavg_yield_pctlow_yield_pcthigh_yield_pctsession_count
3-month13-week bill3.833.654.24124
1-year52-week bill3.963.644.51124
2-year2-year note4.153.714.87124
The exact SQL behind every number
WITH published AS
(
    SELECT
        tupleElement(pt, 1) AS tenor_point,
        tupleElement(pt, 2) AS nearest_security,
        tupleElement(pt, 3) AS maturity_days,
        tupleElement(pt, 4) AS rate_pct
    FROM
    (
        SELECT arrayJoin([
            ('3-month', '13-week bill',  91, toFloat64(yield_3_month)),
            ('1-year',  '52-week bill', 365, toFloat64(yield_1_year)),
            ('2-year',  '2-year note',  730, toFloat64(yield_2_year))
        ]) AS pt
        FROM global_markets.treasury_yields
        WHERE date >= '2026-04-01'
          AND date <  '2026-09-26'
          AND yield_3_month > 0
          AND yield_1_year  > 0
          AND yield_2_year  > 0
    )
)
SELECT
    tenor_point,
    nearest_security,
    round(avg(rate_pct), 2) AS avg_yield_pct,
    round(min(rate_pct), 2) AS low_yield_pct,
    round(max(rate_pct), 2) AS high_yield_pct,
    count()                 AS session_count
FROM published
GROUP BY tenor_point, nearest_security, maturity_days
ORDER BY maturity_days
Run this yourself

Over the 124 sessions in that window the 3-month point averaged 3.83% and the 2-year point averaged 4.15%, the longer point moving between 3.71% and 4.87% across the six months.

A constant-maturity point is not a bill. It is a fitted yield for an exact maturity, rebuilt every day from the securities trading nearest to it, so the 1-month point stays at one month forever while any individual 4-week bill gets a day shorter every day.

How to get a nine-month T-bill yield

Nine months is 273 days, and the arithmetic is the same whichever two published points you straddle it with. The tightest bracket on the official table is the 6-month point at 182 days and the 1-year point at 365. The panel below runs that same interpolation across a wider bracket, the 3-month point at 91 days and the 1-year point at 365: 273 days sits 182 days past the near anchor out of the 274 days between the pair, a weight of 0.664. Take the difference between the two published yields, multiply by that weight, add it to the near anchor, and you have a straight-line nine-month estimate.

QueryA nine-month estimate, interpolated between the 3-month and 1-year points
26 rows (showing 20)
weekweek_labelbill_3m_pctinterp_9m_pctbill_1y_pct
2026-03-30Mar 303.73.73.69
2026-04-06Apr 63.73.73.69
2026-04-13Apr 133.713.693.69
2026-04-20Apr 203.693.683.68
2026-04-27Apr 273.683.713.72
2026-05-04May 43.693.743.76
2026-05-11May 113.693.763.8
2026-05-18May 183.673.773.82
2026-05-25May 253.693.763.8
2026-06-01Jun 13.783.823.84
2026-06-08Jun 83.793.843.87
2026-06-15Jun 153.813.883.91
2026-06-22Jun 223.843.943.99
2026-06-29Jun 293.853.943.98
2026-07-06Jul 63.863.974.03
2026-07-13Jul 133.853.964.02
2026-07-20Jul 203.914.044.1
2026-07-27Jul 273.874.014.08
2026-08-03Aug 33.893.994.04
2026-08-10Aug 103.883.964
The exact SQL behind every number
SELECT
    toString(toMonday(date))                AS week,
    formatDateTime(toMonday(date), '%b %e') AS week_label,
    round(avg(toFloat64(yield_3_month)), 2) AS bill_3m_pct,
    round(avg(
        toFloat64(yield_3_month)
        + (toFloat64(yield_1_year) - toFloat64(yield_3_month)) * (273 - 91) / (365 - 91)
    ), 2)                                   AS interp_9m_pct,
    round(avg(toFloat64(yield_1_year)), 2)  AS bill_1y_pct
FROM global_markets.treasury_yields
WHERE date >= '2026-04-01'
  AND date <  '2026-09-26'
  AND yield_3_month > 0
  AND yield_1_year  > 0
GROUP BY week, week_label
ORDER BY week
Run this yourself

Across the 26 weeks shown, the middle line sits between the other two by construction. In the week of Sep 21 the 3-month point averaged 4.2%, the 1-year point 4.48%, and the interpolated nine-month figure 4.38%.

Three caveats travel with that number. An interpolated yield is not a tradeable yield: no auction fills at it, and no dealer quotes it. A straight line between the anchors assumes the curve between them is straight, and real curves bend, so the sharper the bend across the bracket, the further the interpolated point sits from where a real security with 273 days left is actually quoted. And the width of the bracket matters: narrowing it to the 6-month and 1-year points shortens the span the line has to cover, which is why the published pair nearest the target is the one to reach for when both are in front of you.

Something tradeable does exist at that maturity. A 52-week bill auctioned three months ago now has roughly 273 days to run, and it changes hands in the secondary market every session. That is an older bill rather than the newest one at its tenor, a distinction covered in off the run versus on the run Treasuries, and its quoted yield is a real level you can transact on.

Discount rate and investment rate: one bill, two numbers

Every bill row in the official table carries two rates, and new readers of that table usually assume one of them is wrong. Both are right. They describe the identical cash flow with different arithmetic.

The bank discount rate measures the discount against face value on a 360-day year. The coupon equivalent, which auction results call the investment rate, measures the same discount against the price actually paid, on a 365-day year: (100 - price) / price x 365 / days.

A hypothetical makes the gap concrete. Pay $99.00 for $100 of face on a 182-day bill. That $1.00 of discount, measured against $100 of face and annualized over 360 days, is a 1.98% discount rate. The same $1.00, measured against the $99.00 you put up and annualized over 365 days, is 2.03%. Both differences push the same way, so the coupon equivalent is always the larger of the two, and the gap widens as the maturity lengthens.

The panel takes two published points, works back to the price each one implies, and re-expresses it on the discount basis at that day count.

QueryThe same bill on both conventions: coupon equivalent versus discount basis
tenor_pointterminvestment_rate_pctdiscount_rate_pctgap_bps
3-month point91 days3.833.748.8
1-year point365 days3.963.7620.3
The exact SQL behind every number
WITH bill_points AS
(
    SELECT
        tupleElement(pt, 1) AS tenor_point,
        tupleElement(pt, 2) AS maturity_days,
        tupleElement(pt, 3) AS investment_rate
    FROM
    (
        SELECT arrayJoin([
            ('3-month point',  91, toFloat64(yield_3_month)),
            ('1-year point',  365, toFloat64(yield_1_year))
        ]) AS pt
        FROM global_markets.treasury_yields
        WHERE date >= '2026-04-01'
          AND date <  '2026-09-26'
          AND yield_3_month > 0
          AND yield_1_year  > 0
    )
),
converted AS
(
    SELECT
        tenor_point,
        maturity_days,
        concat(toString(maturity_days), ' days') AS term,
        investment_rate,
        36000 / maturity_days
            * (1 - 1 / (1 + investment_rate / 100 * maturity_days / 365)) AS discount_rate
    FROM bill_points
)
SELECT
    tenor_point,
    term,
    round(avg(investment_rate), 2)                       AS investment_rate_pct,
    round(avg(discount_rate), 2)                         AS discount_rate_pct,
    round(avg(investment_rate - discount_rate) * 100, 1) AS gap_bps
FROM converted
GROUP BY tenor_point, term, maturity_days
ORDER BY maturity_days
Run this yourself

Across those six months the implied gap ran 8.8 basis points at the 3-month point and 20.3 basis points at the 1-year point. A basis point is one hundredth of a percentage point. The two bars for each tenor are the same cash flow twice.

The longer row carries a caveat of its own. For maturities past 182 days the official investment-rate formula adds a semiannual compounding adjustment, so the simple 365-day conversion above only approximates the 52-week tenor, and the exact figure belongs to the published table.

Comparing a bill yield with the alternatives for idle cash

Use the coupon equivalent. A bank APY, the annual percentage yield on a savings account, and a stock's dividend yield are both measured against money invested over a 365-day year, which is the convention the coupon equivalent already uses. Compare an APY against a bill's discount rate instead and you understate the bill by the gap in the panel above. The dividend side of that comparison has its own wrinkles, laid out in dividend yield versus a Treasury yield, and the full menu for short-horizon cash sits in where to park idle cash.

The second half of the comparison is term. A bill locks its yield for its own maturity and not a day longer. What happens after that depends on the curve at the moment you reinvest.

QueryFront-end yields by horizon: 13-week bill, 1-year point, 2-year note
26 rows (showing 20)
weekweek_labelbill_3m_pctbill_1y_pctnote_2y_pctspread_bps
2026-03-30Mar 303.73.693.8111
2026-04-06Apr 63.73.693.8110.8
2026-04-13Apr 133.713.693.765.2
2026-04-20Apr 203.693.683.788.6
2026-04-27Apr 273.683.723.8618
2026-05-04May 43.693.763.9122.2
2026-05-11May 113.693.8431
2026-05-18May 183.673.824.0941.8
2026-05-25May 253.693.8431
2026-06-01Jun 13.783.844.0830.2
2026-06-08Jun 83.793.874.1132.2
2026-06-15Jun 153.813.914.1331.8
2026-06-22Jun 223.843.994.1329
2026-06-29Jun 293.853.984.1428.5
2026-07-06Jul 63.864.034.1832.4
2026-07-13Jul 133.854.024.1833.2
2026-07-20Jul 203.914.14.339
2026-07-27Jul 273.874.084.2639.2
2026-08-03Aug 33.894.044.2132.2
2026-08-10Aug 103.8844.232.2
The exact SQL behind every number
SELECT
    toString(toMonday(date))                AS week,
    formatDateTime(toMonday(date), '%b %e') AS week_label,
    round(avg(toFloat64(yield_3_month)), 2) AS bill_3m_pct,
    round(avg(toFloat64(yield_1_year)), 2)  AS bill_1y_pct,
    round(avg(toFloat64(yield_2_year)), 2)  AS note_2y_pct,
    round((avg(toFloat64(yield_2_year)) - avg(toFloat64(yield_3_month))) * 100, 1) AS spread_bps
FROM global_markets.treasury_yields
WHERE date >= '2026-04-01'
  AND date <  '2026-09-26'
  AND yield_3_month > 0
  AND yield_1_year  > 0
  AND yield_2_year  > 0
GROUP BY week, week_label
ORDER BY week
Run this yourself

In the week of Sep 21 the 13-week point averaged 4.2% and the 1-year point 4.48%, while the 2-year note minus the 13-week bill measured 60 basis points. Choosing among those rows is a question about when the cash is needed, not about which number on the screen is largest.

Where the official numbers live

Two sources settle any bill question. Auction results publish, for each individual bill, the high rate, the price per $100 of face, the investment rate, and the coverage ratio: Treasury auction announcements, data and results. The daily table gives both conventions for every auctioned tenor: Daily Treasury Bill Rates. The par yield curve page alongside it carries the constant-maturity points, and the shape of the curve beyond the bill sector is covered in the 3-month to 10-year spread and the 2026 first-half Treasury curve.

FAQ

Is there a nine-month Treasury bill?

No. Treasury auctions bills at 4, 6, 8, 13, 17, 26 and 52 weeks, and the published curves carry no nine-month point. A nine-month figure is either interpolated between two published points that straddle 273 days or read from a 52-week bill with roughly 273 days left in the secondary market.

What is the difference between a T-bill discount rate and its investment rate?

One bill, two conventions. The discount rate annualizes the discount against face value on a 360-day year. The investment rate, or coupon equivalent, annualizes the same discount against the price paid on a 365-day year, which makes it the higher of the two figures.

How many T-bill maturities does Treasury auction?

Seven regular tenors: 4, 6, 8, 13, 17, 26 and 52 weeks. Cash management bills are issued on top of those, with irregular maturities that can be as short as a few days.

Which T-bill yield compares with a savings account APY?

The coupon equivalent. An APY measures return against money invested over a 365-day year, the same basis the coupon equivalent uses, so the two line up directly.

Can I buy a bill with nine months left to run?

Yes, in the secondary market. A 52-week bill auctioned about three months earlier has roughly nine months remaining, and dealers quote it every session. Its yield is a traded level rather than an interpolated estimate.


Every panel here ships with the SQL that produced it, so you can open one and read the interpolation weight and the discount conversion line by line. To run the same conversion at a tenor this page does not show, ask for it in plain English on the Strasmore terminal.