Skip to content
FinObservatory

Treasury rates / Curve factors

Level, slope and curvature of the par curve

Three coefficients summarise the shape of the whole Treasury par curve on a given day. This page fits the Nelson-Siegel three-factor form to Treasury's published daily par yields on each of 9,136 trading days from Jan 2, 1990 to Jul 10, 2026, holding the decay constant at the same 1.394092 years on all of them after Diebold and Li (2006), and then shows how well that curve actually fits rather than asserting that it does.

5.04%
Level
fitted long-run par yield
−1.21 pp
Slope
short below long (upward)
−1.06 pp
Curvature
mid-curve trough
0.1238 pp
Fit RMSE
across 14 quoted tenors

Data as of Jul 10, 2026 (U.S. Treasury daily par yield curve)

Par, not zero-coupon. Treasury’s constant-maturity series is a par yield curve: each quoted tenor is the coupon rate at which a notional security of that maturity would price at par. The Nelson-Siegel functional form is defined on the zero-coupon curve, so fitting it directly to par yields is a descriptive decomposition of curve shape, not an identity. Every coefficient on this page is therefore a par-curve level, slope or curvature factor. No par-to-spot bootstrap is run, no discount function is derived, and none of these numbers is a zero-coupon or spot factor. Treasury’s own description of the curve, and the tenor-set eras behind it, are on the rates methodology page.

The three factors, 19902026

The level is the fitted par yield at the long end, in percent: it runs from 0.9791 (Mar 9, 2020) to 9.3469 (Sep 24, 1990) and is positive throughout, the count of negative readings being 0. The slope is the fitted short end minus the fitted long end, in percentage points, so it is NEGATIVE for an upward-sloping curve and positive for an inverted one: it is positive on 909 of 9,136 trading days (9.9%), with extremes of −5.3008 (Jan 11, 2010) and +2.0710 (May 4, 2023). The curvature is positive when the middle of the curve bulges above the straight level-plus-slope shape and negative when it sags below, ranging from −7.5047 (Nov 3, 2010) to +4.2102 (Apr 1, 2022); its loading peaks at 30.0 months by construction, so it reads as a two-year-centred butterfly.

Level beta0Slope (short minus long) beta1Curvature beta2
Hover for values; dashed line = zero
Weekly (last print of each ISO week), 1,906 points from Jan 5, 1990 to Jul 10, 2026. 4 NBER recessions shaded.

Source: U.S. Department of the Treasury, daily par yield curve rates | NBER recession chronology via FRED USREC Fitted from the observed par yields by this repository's engine; the chart is thinned to the last print of each ISO week, and the extremes quoted above are computed from the full daily series of 9,136 dates. Methodology

Do they read as their names?

Each factor is scored against an observed feature of the same curve, over the whole sample with no screening of any kind. The fixed-decay factors track the features they are named for; the free-decay fit, which chooses its own decay constant date by date and therefore fits each day better, does not. The date counts differ because the 30Y quote is absent over its discontinuation and the 3M quote is missing on a handful of days.

FactorObserved benchmarkFixed decayFree decayDates
LevelObserved 30Y par yield+0.9962+0.58558,142
LevelObserved 10Y par yield+0.9701+0.56629,136
SlopeObserved 3M minus 10Y+0.9944+0.45729,133
Curvature2 × 2Y minus 3M minus 10Y+0.9789+0.29319,133

Source: U.S. Department of the Treasury, daily par yield curve rates Pearson correlation over every date carrying the benchmark, computed at render time from the fitted coefficients and the observed par yields. The curvature benchmark is centred on the two-year point because that is where the fixed loading peaks. Methodology

What the fitted curve looks like on Jul 10, 2026

A three-parameter curve cannot pass through 14 quoted points, so the honest question is how far off it is. On the most recent trading day in the sample the observed par curve (green) runs from 3.71% at 1M to 5.06% at 30Y. The fixed-decay fitted curve (blue) misses it by at most 0.1949 percentage points, at the 20Y point, for a root mean squared residual of 0.1238 percentage points. The free-decay fit (amber) does better on the day, 0.1366 at worst (2Y) and 0.0873 overall, at a decay constant of 5.8607 years instead of 1.3941. Tenors are spaced equally along the axis, not to maturity scale.

Observed par yield, Jul 10, 2026Fitted, fixed decay constantFitted, free decay constant
% par yield · hover for values
Observed par yields and both fitted curves across the 14 tenors Treasury published on Jul 10, 2026.
TenorMaturity (yr)Observed (%)Fitted, fixed (%)Residual (pp)Fitted, free (%)Residual (pp)
1M0.0833.713.8345−0.12453.8439−0.1339
1.5M0.1253.743.8373−0.09733.8495−0.1095
2M0.1673.813.8405−0.03053.8550−0.0450
3M0.2503.853.8474+0.00263.8659−0.0159
4M0.3333.943.8551+0.08493.8767+0.0633
6M0.5003.993.8726+0.11743.8981+0.0919
1Y1.0004.063.9371+0.12293.9598+0.1002
2Y2.0004.214.0874+0.12264.0734+0.1366
3Y3.0004.224.2319−0.01194.1751+0.0449
5Y5.0004.304.4557−0.15574.3483−0.0483
7Y7.0004.424.6001−0.18014.4885−0.0685
10Y10.0004.564.7273−0.16734.6523−0.0923
20Y20.0005.084.8851+0.19494.9615+0.1185
30Y30.0005.064.9380+0.12205.1019−0.0419

Source: U.S. Department of the Treasury, daily par yield curve rates Residual is the observed par yield minus the fitted one. Both fitted curves are rebuilt at render time from the coefficients and decay constants stored in the factor file; the root mean squared residual so recomputed agrees with the stored value to 5.6e-17 percentage points on all 9,136 dates for the fixed fit and 5.6e-17 for the free fit. Methodology

What fixing the decay constant costs

Holding the decay constant at one value for every date buys comparability across dates and pays for it in fit quality. The price is measurable: median root mean squared residual rises from 0.0490 percentage points under the free fit to 0.0825 under the fixed one, the 90th percentile from 0.0958 to 0.1546, and the 99th from 0.1494 to 0.2301. The fixed fit's residual is the larger one on 9,136 of 9,136 dates, which is what the free fit's search over the decay constant guarantees. The per-date penalty has a median of +0.0236, a mean of +0.0359 and a maximum of +0.3320 percentage points. The worst fixed-decay day is Apr 21, 2023 at 0.4861 against 0.1541 free, a day whose free-fit decay constant is 0.1236 years: front-end shape that a 1.39-year decay cannot follow. The free fit's own worst day is Sep 24, 2008 at 0.2949.

Fixed decay constant rmse_fixedlamFree decay constant rmse
Hover for values
Root mean squared residual in percentage points, weekly (last print of each ISO week), 1,906 points. 4 NBER recessions shaded.

Source: U.S. Department of the Treasury, daily par yield curve rates | NBER recession chronology via FRED USREC Root mean squared residual is the square root of the residual sum of squares divided by the number of tenors quoted that day, in percentage points. The chart is thinned to the last print of each ISO week, so a single extreme day appears only when it ends its week; every quantile and worst day quoted above is computed from the full daily series. Methodology

Why the decay constant is fixed

The decay constant sets where the slope and curvature loadings do their work. When the observed curve has little shape, the data barely constrain it: the three loadings go nearly collinear, and the coefficients slide along a ridge at almost unchanged fit quality. The fitted curve stays pinned down; the individual factors do not. Under the free fit the level factor turns negative on 254 of 9,136 dates and reaches −27.4730 percent on Oct 22, 2008, which is not a level in any economic sense; the decay constant exceeds ten years on 581 dates (6.36%) and is pinned at the edge of its search bracket on 365. Its curvature coefficient falls below 1e-4 in magnitude on 2,428 dates, where the three-factor fit has collapsed to level plus slope, and the distribution there is a gap rather than a taper: the largest magnitude inside that cluster is 2.94e-5 and the smallest outside it is 0.0784. Under the fixed fit the same counts are 0 negative levels (minimum 0.9791 percent on Mar 9, 2020) and 1 date below 1e-4 in curvature.

Free decay constant beta0Fixed decay constant beta0_fixedlam
Hover for values; dashed line = zero
Level factor in percent, weekly (last print of each ISO week). Over the points charted the free-decay level spans −26.27 to 11.84 and the fixed-decay level 1.12 to 9.31, so the axis is set by the free fit. 4 NBER recessions shaded.

Source: U.S. Department of the Treasury, daily par yield curve rates | NBER recession chronology via FRED USREC Both series are the same model on the same observed yields, differing only in whether the decay constant is estimated per date or held at 1.394092 years. Methodology

The same curve, two answers: Jul 9, 2026 and Jul 10, 2026

Take the last two trading days in the sample. Treasury quoted 14 tenors on both of them, and none of those moved by more than 5.0 basis points (the largest move is at the 2Y point). The chart below draws four lines: the two observed curves, and the free-decay fitted curve for each day. The two fitted curves differ by at most 5.4 basis points at any tenor (at 5Y), and each sits within 13.7 basis points of the observed curve it was fitted to. Yet the free-decay level factor behind them moves from −0.9526 percent to 5.4078, a change of 6.3604 percentage points, at root mean squared residuals of 0.0767 and 0.0873 that a reader could not choose between. Over the same two days the fixed-decay level factor moves 0.0019 percentage points, from 5.0420 to 5.0439. A live level reading taken off the free fit would print one of those two numbers on one day and the other on the next.

Observed, Jul 9, 2026Free-decay fit, Jul 9, 2026Observed, Jul 10, 2026Free-decay fit, Jul 10, 2026
% par yield · hover for values
Four curves over the 14 tenors quoted on Jul 10, 2026, of which 14 are quoted on both days. The two fitted curves differ by at most 5.4 basis points at any tenor, while the coefficients behind them differ by percentage points.
FitDateLevelSlopeCurvatureDecay (yr)RMSE (pp)
Fixed decayJul 9, 20265.0420−1.2215−1.19621.39410.1189
Fixed decayJul 10, 20265.0439−1.2145−1.06411.39410.1238
Free decayJul 9, 2026−0.95264.775811.362830.0000at bracket edge0.0767
Free decayJul 10, 20265.4078−1.5750−1.1e-75.86070.0873

Source: U.S. Department of the Treasury, daily par yield curve rates Coefficients as stored in the factor file. A curvature magnitude below 1e-4 is printed in exponent form rather than rounded to zero. The free fit searches the decay constant over a bracket of 0.05 to 30 years and is flagged when it lands within 0.1% of either end. Methodology

Those two days are not a special case. Across the 9,135 consecutive-day pairs in the sample, the absolute one-day change in the level factor has a median of 0.0365 percentage points under the free fit but a 99th percentile of 5.5062 and a maximum of 21.3792 (Apr 2, 2008). Under the fixed fit the median is barely different at 0.0340, but the 99th percentile is 0.1730 and the maximum 0.3903 (Mar 18, 2009). The gap in the tail is the basin flipping, and it is why the published series fixes the decay constant.

Methodology

The model, in words

The fitted par yield at maturity tau is a constant plus two decaying terms. Write x = tau / lambda. The level loading is one at every maturity. The slope loading is (1 − exp(−x)) / x, which equals one at the front of the curve and decays to zero at the long end. The curvature loading is that same expression minus exp(−x), which is zero at both ends and humped in between. The fitted yield is the level coefficient plus the slope coefficient times its loading plus the curvature coefficient times its loading.

Because the slope loading tends to one and the curvature loading to zero as maturity tends to zero, and both tend to zero as maturity tends to infinity, the fitted curve satisfies y(0) = level + slope and y(infinity) = level. The level therefore reads as the long-rate level and the slope as SHORT MINUS LONG, which is negative for an upward-sloping curve and positive for an inverted one. The convention follows Svensson's equation (11) with the fourth factor set to zero, as restated by Drudi and Violi; the four-factor Svensson extension is implemented in this repository's engine but is not used for this dataset.

The decay constant, derived rather than copied

Diebold and Li fix the decay constant so that the curvature loading peaks at 30 months, the midpoint of the two- and three-year maturities conventionally used for a medium-term factor. That condition has an exact solution. The curvature loading depends on maturity only through x, and setting its derivative to zero reduces, after clearing a strictly positive factor, to x squared plus x plus one equals exp(x). The root is located here by bisection on a bracket of 1 to 3 at 1.7932821329007607, so the decay constant that puts the peak at 2.5 years is 1.394091846527279 years. Rebuilding the curvature loading at the constant stored in the factor file and locating its maximum again returns 30.000 months, which is the check that the shipped constant is the one it claims to be. It is identical on all 9,136 rows (1 distinct value in the file).

Diebold and Li print 0.0609 for that constant, and this build does not use their number. Theirs is a rate per month against a maturity in months, while this engine carries a time constant in years against a maturity in years, so the exact map is one over twelve times the rate. That makes their 0.0609 equal to 1.3683634373 years, which places the curvature peak at 29.446340 months rather than the 30 they state. Rounding does not account for it: the exact 30-month constant expressed their way is 0.0597760711, which rounds to 0.0598 and not to 0.0609. What does account for it is that the curvature loading is very flat near its maximum, so a loosely converged numerical search lands anywhere in a wide neighbourhood. The consequence of using their printed value would be a curvature peak 0.55 months early, and this build avoids it by deriving its own.

Fitting

Each date is fitted on exactly the tenors Treasury published that day, located by name and never by column position, because the tenor set grows over eras: the thinnest day in this sample carries 9 tenors and the richest 14. With the decay constant fixed the model is linear in the three coefficients, so every date is one closed-form ordinary least squares with a unique solution, no optimiser and no basin to flip out of. The free-decay benchmark instead profiles the residual sum of squares over the decay constant with a multi-start search across the bracket 0.05 to 30 years, because a single local minimisation on this data is trapped away from the best in-bracket optimum on a large minority of dates. The build requires at least five quoted tenors so that at least one residual degree of freedom survives; with 9 tenors on the thinnest day that floor never binds.

Root mean squared error is the square root of the residual sum of squares divided by the number of tenors used that day, in percentage points, and it is the residual against the observed par yields rather than against any interpolation of them. Yields, the level factor and the fitted curves are in percent per annum; the slope factor, the curvature factor, the residuals and the root mean squared error are in percentage points; the decay constant is in years. Nothing on this page is screened, weighted or smoothed: the observed curve file carries 9,136 trading days, the factor file carries 9,136 rows, and the count of source dates with no fitted row is 0, so the statistics above cover every date Treasury published a curve on.

Sources

Back to the Treasury curve itself, or the rates methodology for Treasury’s own par-curve description and the tenor-set eras. The NY Fed ACM term-premium decomposition, which does work on the zero-coupon curve, sits on the rates page.