What we measured
We record the YES bid of every Kalshi BTC 15-minute market once a second. For each market that settled between July 17 and October 23, 2026, we took the bid at 14, 10, 7, 5, 3, 2 and 1 minute and 30 seconds before close, grouped those 69,781 snapshots into 5¢ price buckets, and counted how often YES won.
| YES bid | Count | Avg bid | YES won | Gap |
|---|---|---|---|---|
| 0–5¢ | 9,833 | 1.5¢ | 1.5% | +0.0 |
| 5–10¢ | 3,067 | 7.3¢ | 7.0% | -0.3 |
| 10–15¢ | 2,278 | 12.0¢ | 11.3% | -0.7 |
| 15–20¢ | 2,049 | 16.9¢ | 17.4% | +0.5 |
| 20–25¢ | 2,007 | 21.9¢ | 21.4% | -0.5 |
| 25–30¢ | 2,190 | 27.0¢ | 26.7% | -0.3 |
| 30–35¢ | 2,300 | 32.0¢ | 33.3% | +1.3 |
| 35–40¢ | 2,628 | 37.0¢ | 37.1% | +0.1 |
| 40–45¢ | 2,857 | 42.0¢ | 40.5% | -1.5 |
| 45–50¢ | 3,182 | 47.0¢ | 45.6% | -1.4 |
| 50–55¢ | 3,308 | 52.0¢ | 51.8% | -0.2 |
| 55–60¢ | 2,799 | 56.9¢ | 58.2% | +1.3 |
| 60–65¢ | 2,609 | 62.0¢ | 61.4% | -0.6 |
| 65–70¢ | 2,367 | 67.0¢ | 67.0% | +0.0 |
| 70–75¢ | 2,091 | 72.0¢ | 73.4% | +1.4 |
| 75–80¢ | 1,973 | 77.0¢ | 77.0% | +0.0 |
| 80–85¢ | 2,041 | 82.0¢ | 83.2% | +1.2 |
| 85–90¢ | 2,141 | 87.0¢ | 87.8% | +0.8 |
| 90–95¢ | 3,154 | 92.6¢ | 93.8% | +1.2 |
| 95–100¢ | 14,907 | 98.9¢ | 99.1% | +0.2 |
Count is the number of snapshots; gap is the win rate minus the average bid, in percentage points. Every bucket lands within about 2 points of its price. Cheap contracts didn't win more often than their price implied, and expensive ones didn't either. There's no price level where simply buying was a free edge.
The 95–99¢ "sure things"
Contracts bid at 95¢ or more won 99.1% of the time, against an average bid of 98.9¢. Before costs that's about 0.2¢ of margin. One loss at 99¢ wipes out roughly 99 wins at 1¢ each, so the spread and the fee decide whether these trades are worth anything, and usually they aren't.
It changes with time left
The 90–95¢ bucket wasn't steady through the market. Around 2 minutes before close it won less often than its price, then more often again in the last minute. Some of these groups are small, so treat single rows as noisy.
| Time left | 90–95¢ won | 95–100¢ won |
|---|---|---|
| 10 min | 96.8% (n=249) | 94.5% (n=55) |
| 7 min | 95.3% (n=677) | 97.6% (n=467) |
| 5 min | 94.3% (n=793) | 97.3% (n=1,175) |
| 3 min | 92.5% (n=626) | 98.6% (n=2,274) |
| 2 min | 89.7% (n=428) | 98.8% (n=2,949) |
| 1 min | 94.5% (n=256) | 99.5% (n=3,700) |
| 30 sec | 95.2% (n=124) | 99.8% (n=4,287) |
What this means for a trade
If the price is already a fair estimate, win rate tells you nothing on its own. A trade only has an edge when you have a reason to think the real chance is higher than the price you pay, by more than the spread and fee. That's the idea behind why a 90% win rate can still lose money, and it's how SpectralEdge decides when to signal: only when its calibrated confidence beats the current price by a set margin.
Limits of this data
- Prices are the YES bid. Buying YES costs the ask, which is higher; buying NO costs 100¢ minus the YES bid.
- Snapshots where the bid was exactly 0¢ or 100¢ are left out.
- It covers fourteen weeks of BTC markets only. Other periods and other assets may behave differently.
- This describes past market prices. It isn't a forecast or a trading recommendation.
The full table, by price bucket and time before close, is available as a CSV download.