How SOFR is calculated
The 3.87% SOFR for October 8, 2026 is the rate paid on the middle dollar of $2,963 billion in overnight Treasury repo, after the New York Fed has filtered and trimmed the trades. Here is each step, a worked example, and how to read the percentiles published alongside the rate.
SOFR is a volume-weighted median. Each business day the Federal Reserve Bank of New York collects the previous day's overnight repo trades collateralized by Treasury securities from three market segments. It drops affiliate and forward-settling trades, removes the lowest-rate 20% of the bilateral DVP volume, lines up what is left from lowest rate to highest, and reports the rate at which cumulative volume crosses 50%, rounded to the nearest basis point. The rate is published at about 8:00 a.m. ET, together with four other percentiles and the total volume. The New York Fed sets out the method on its reference-rate methodology page, which is the source for every rule below.
The calculation, step by step
1. Collect three segments of Treasury repo
SOFR is the widest of three nested Treasury repo rates that the New York Fed produces in cooperation with the Treasury Department's Office of Financial Research (OFR). Each rate adds a segment to the one before it:
| Segment | What it covers | Data supplied by | Rates it feeds |
|---|---|---|---|
| Tri-party general collateral | Specific-counterparty tri-party repo against Treasuries, cleared and uncleared | BNY (Bank of New York Mellon) and the OFR | TGCR, BGCR, SOFR |
| GCF Repo | General collateral trades through FICC's GCF Repo service | OFR | BGCR, SOFR |
| Bilateral DVP | Bilateral Treasury repo cleared through FICC's Delivery-versus-Payment service | OFR | SOFR only |
FICC is the Fixed Income Clearing Corporation. Before January 24, 2022, some of the transaction data came instead from DTCC Solutions LLC, an affiliate of the Depository Trust & Clearing Corporation, under a commercial agreement; the New York Fed's terms of use still carry a DTCC data notice for SOFR and BGCR. The data are collected under the supervisory authority of the Federal Reserve Board and the authority of the OFR. The benchmarks page shows the three rates side by side.
2. Remove trades that do not belong
Not every overnight Treasury repo counts. The New York Fed:
- excludes trades between affiliated entities, where that is relevant and the data allow it to be identified;
- excludes trades negotiated for forward settlement;
- includes open trades whose rate resets daily, to the extent possible;
- excludes, in the tri-party data behind TGCR, transactions in which the Federal Reserve itself is the counterparty. Because SOFR contains every TGCR trade, the same exclusion carries through to SOFR's tri-party segment.
3. Trim the bottom 20% of DVP volume
Bilateral repo includes "specials": trades where the cash lender wants a particular Treasury issue and accepts a lower rate to get it. Those rates describe the scarcity of one security, not the general cost of overnight secured cash. To strip out much of that effect, the New York Fed removes 20% of DVP volume each day, starting from the lowest rate. The trim is applied after affiliate trades are taken out. Trades sitting exactly at the 20th volume-weighted percentile are cut pro rata, so a single large trade can be partly removed. The New York Fed is explicit that this removes "some (but not all)" specials. The tri-party and GCF segments are not trimmed.
4. Take the volume-weighted median
The surviving trades are sorted from lowest to highest rate and their dollar volumes are added up in that order. SOFR is the rate of the trade containing the 50th percentile of dollar volume. A simple median of trade rates would let a large number of small trades decide the answer; weighting by volume means a $50 billion trade counts five times as much as a $10 billion one.
That is our restatement. It matches the two examples the New York Fed gives: $10 billion at each of 5, 10, 15 and 20 bp plus $60 billion at 25 bp gives a median of 25 bp, because the 50th billion falls inside the 25 bp block; $20 billion at each of 10, 15, 20 and 25 bp gives 15 bp, because the 40th billion is the last dollar of the 15 bp block.
5. Round and publish
The median is rounded to the nearest basis point. The 1st, 25th, 75th and 99th volume-weighted percentiles are published with it, computed the same way, and total volume is rounded to the nearest $1 billion. TGCR and BGCR follow the identical procedure on their narrower sets of trades, without the DVP trim.
Worked example: six illustrative trades
| Trade | Segment | Volume ($bn) | Rate |
|---|---|---|---|
| A | DVP | 30 | 3.700% |
| B | Tri-party | 40 | 3.840% |
| C | GCF | 10 | 3.862% |
| D | DVP | 50 | 3.880% |
| E | Tri-party | 25 | 3.850% |
| F | DVP | 20 | 3.920% |
Trim. DVP volume is A + D + F = $100 billion, so 20% is $20 billion. The lowest-rate DVP trade is A at 3.700%, which looks like a special. It straddles the 20th percentile, so $20 billion of its $30 billion is removed pro rata and $10 billion stays. Total volume falls from $175 billion to $155 billion.
Sort and cumulate.
| Trade | Rate | Volume ($bn) | Cumulative ($bn) | Cumulative share |
|---|---|---|---|---|
| A (trimmed) | 3.700% | 10 | 10 | 6.5% |
| B | 3.840% | 40 | 50 | 32.3% |
| E | 3.850% | 25 | 75 | 48.4% |
| C | 3.862% | 10 | 85 | 54.8% |
| D | 3.880% | 50 | 135 | 87.1% |
| F | 3.920% | 20 | 155 | 100.0% |
Median. Half of $155 billion is $77.5 billion. Cumulative volume reaches $75 billion after trade E and $85 billion after trade C, so the middle dollar sits inside C. The unrounded median is 3.862%, which publishes as 3.86%.
Percentiles. The same walk gives the other published figures: the 1st percentile ($1.55 billion) falls in A at 3.70%, the 25th ($38.75 billion) in B at 3.84%, the 75th ($116.25 billion) in D at 3.88% and the 99th ($153.45 billion) in F at 3.92%. Volume would publish as $155 billion.
What the trim did. Without it, total volume is $175 billion, the midpoint is $87.5 billion, and cumulative volume runs 30, 70, 95: the median lands in E at 3.85%. Removing $20 billion of a low-rate special raised the published rate by 1 bp. Notice also that GCF trade C, the smallest on the list, set the rate. In a volume-weighted median, the trade that matters is whichever one holds the middle dollar, not the largest.
Publication timing and revisions
SOFR is published one business day after its value date, the day the trades were negotiated. The rate for October 8, 2026 was published on October 9, 2026, at approximately 8:00 a.m. ET on the New York Fed's SOFR page. The 30-, 90- and 180-day SOFR Averages and the SOFR Index follow shortly afterwards; the averages and index guide explains how they are built from the daily rate.
The rates are typically published on SIFMA early-close days but not on, or for, days when SIFMA recommends a full close. With advance notice, the New York Fed may also skip a day that repo participants broadly treat as a holiday.
Revisions are narrow by design. TGCR, BGCR and SOFR may be revised at about 2:30 p.m. ET, only on the day of first publication, and only if the correction moves the rate by more than one basis point. A footnote marks any revised rate. The averages and index are revised the same afternoon only if SOFR is revised or a calculation error is found. After that, the morning's figure stands. In this site's snapshot, none of the 2,129 SOFR observations from April 2, 2018 to October 8, 2026 carries a revision flag.
When data are missing
If one segment's data are unavailable, the New York Fed reuses that segment's most recent data, adjusted by the change in primary dealers' volume-weighted average repo borrowing rate in that segment. In extraordinary circumstances it may republish the prior day's rate. Percentiles are not published on days that use contingency data. In this site's snapshot, only two SOFR observations lack percentiles: May 31, 2019 (2.49% on $1,136 billion) and August 5, 2021 (0.05% on $901 billion). The New York Fed's data attach a footnote to both. That pattern fits the contingency rule, but the data do not say which procedure was used, so treat the link as an inference.
Oversight
An internal Oversight Committee that includes OFR members reviews the rate production. Each year the New York Fed's Audit Group assesses the process, and it has concluded that the production of SOFR, TGCR and BGCR complies with the applicable sections of the IOSCO Principles for Financial Benchmarks. Written complaints about a day's rate go to rateproduction@ny.frb.org.
Reading the published percentiles
Five days from October 2026 make a dated example; the percentiles and volume page has the latest prints.
| Effective date | SOFR | 1st pct | 25th pct | 75th pct | 99th pct | Volume ($bn) |
|---|---|---|---|---|---|---|
| Oct 8, 2026 | 3.87% | 3.83% | 3.85% | 3.91% | 3.95% | 2,963 |
| Oct 7, 2026 | 3.88% | 3.81% | 3.86% | 3.92% | 3.96% | 2,968 |
| Oct 6, 2026 | 3.90% | 3.84% | 3.88% | 3.95% | 3.98% | 2,997 |
| Oct 5, 2026 | 3.89% | 3.84% | 3.87% | 3.94% | 3.97% | 3,007 |
| Oct 2, 2026 | 3.88% | 3.83% | 3.86% | 3.93% | 3.96% | 3,013 |
Take October 8, 2026. SOFR printed 3.87%. Half of the $2,963 billion traded at or below that rate and half at or above it. The 25th and 75th percentiles, 3.85% and 3.91%, bracket the middle half of volume within 6 bp. The 1st and 99th, 3.83% and 3.95%, show that only the outermost 2% of dollars fell outside a 12 bp band. Across 2026 through October 8, the median day's interquartile range is 8 bp and the median 1st–99th range is 13 bp, so October 8 was slightly tighter than usual.
The shape is lopsided. The median is 2 bp above the 25th percentile but 4 bp below the 75th: the lower half of volume is packed close to the rate, and the upper half is spread more thinly. That is the normal pattern. On all 193 days of 2026 through October 8, and on 1,583 of the 2,127 days since April 2018 that have percentiles, SOFR sat closer to its 25th percentile than its 75th; on another 188 it sat exactly midway.
Comparing volumes shows where the upper tail comes from. On October 8, TGCR covered $1,189 billion and BGCR $1,228 billion, so GCF added about $39 billion and the DVP segment about $1,735 billion, roughly 59% of SOFR's volume. These figures come from rounded totals, and the trim applies only to DVP, so don't use the difference to back out the size of the trim. BGCR's 75th percentile that day was 3.86%. Adding DVP raised it to 3.91% for SOFR, while moving the median only from 3.85% to 3.87%. The spread tracker charts the SOFR–TGCR gap over any period.
When the tails move first
In stress, the tails move further than the median. On September 13, 2019 SOFR was 2.20% with a 99th percentile of 2.40%. On September 16 SOFR had already risen 23 bp to 2.43%, 18 bp above the top of the 2.00–2.25% target range, so the median was already signaling pressure. The 99th percentile, though, had jumped 220 bp to 4.60%. The next day the whole distribution lifted:
| Effective date | SOFR | 1st pct | 25th pct | 75th pct | 99th pct | Volume ($bn) |
|---|---|---|---|---|---|---|
| Sep 16, 2019 | 2.43% | 2.38% | 2.42% | 2.55% | 4.60% | 1,156 |
| Sep 17, 2019 | 5.25% | 2.25% | 5.00% | 5.85% | 9.00% | 1,177 |
| Sep 18, 2019 | 2.55% | 2.10% | 2.50% | 3.00% | 5.00% | 1,196 |
The 282 bp rise on September 17 is the largest one-day move in the published data since April 2018. Its 1st–99th spread was 675 bp, against 12 bp on October 8, 2026. Even then, the 1st percentile stayed at 2.25%, so some trades still cleared near the old level. A median-based rate does not average away a stress day; it reports where the middle dollar traded, and on that day the middle dollar paid 5.25%. The spikes and month-end guide covers the episode and the recurring month-end moves, and the percentiles and volume page charts the full distribution for every day. To pull any date range with its statistics, use the SOFR history lookup; for what the rate represents in contracts, start with what SOFR is.