The Polymarket Up/Down Observatory

Across 13,783 resolved Polymarket up/down windows the overall UP rate was 50.63% [49.80%, 51.47%]. On the 13,081 with a qualifying quote 60 seconds before close the order book was close to calibrated: sides priced at 90% or higher won 99% of the time (11,016 of 11,103). The sample is up to the most recent 500 windows per market, so the calendar coverage differs by window length: 5m 2026-09-23 to 2026-09-24, 15m 2026-09-19 to 2026-09-24, 1h 2026-09-03 to 2026-09-24, 4h 2026-07-08 to 2026-09-24.

Revised 2026-09-24. The 2026-07-26 build of this page reported that sides priced at 90% or higher with 60 seconds left lost 2.98% of the time (5.76% on 1h windows). That figure was overstated, by an amount this build does not measure: some stored 1h outcomes had been resolved from a Binance 1-hour close read before the candle was final, and other stored outcomes disagreed with Polymarket's settlement. After stored outcomes were reconciled against Polymarket's settled results, the 2026-09-24 build, on a different, mostly later sample, measures 0.78% (0.86% on 1h). Three other readings of the earlier build do not hold after reconciliation: that heavy favourites won slightly less often than priced (the tail misses in section 2 now run the other way), that the favourite-loss rate barely moved as the deadline approached (it now falls), and that the 1h rate was roughly five times the 15m rate (now 0.86% against 0.85%). The 1h offset in section 4 does not use outcomes and moves over time: 7.67 bps on the most recent 200 1h windows per market at 2026-07-26, 3.2 bps on those at 2026-09-24, measured the same way. See the corrections log.

What this is

UpDown Charts records the Polymarket order book and the reference price feeds listed in the methodology for all 28 up/down markets (7 assets × 4 window lengths), sampled every 500 ms. This page measures one thing: how well the book's implied odds predicted the result, using the last two-sided quote at 60, 30 and 10 seconds before each window closed. Every current figure here comes from scripts/observatory/build-aggregates.mjs and is reproducible from the published aggregates (the earlier-build figures in the revision note above excepted).

Methodology and data notes · What is a Polymarket up or down market?

1. Base rates

Over 13,783 windows the UP rate is 50.63% [49.80%, 51.47%]. Pooled across the seven assets, 5m at 48.23% [46.58%, 49.89%] (n = 3,500), 1h at 52.03% [50.37%, 53.68%] (n = 3,500) and 4h at 51.81% [50.10%, 53.52%] (n = 3,283) have intervals that exclude 50%, but that pooling assumes independent windows and the seven assets share the same clock, so the effective sample is well below each n and the intervals are too narrow. Taken one market at a time, 20 of those 21 per-market intervals contain 50%. The same caveat applies to the pooled headline above. This is a record of what happened, not an edge: an outcome frequency says nothing about profit once the bid/ask spread and fees are paid.

UP rate by asset and window length. Each cell is the UP percentage ± half the Wilson 95% interval, in percentage points, with the window count. Windows closing 5m 2026-09-23 to 2026-09-24, 15m 2026-09-19 to 2026-09-24, 1h 2026-09-03 to 2026-09-24, 4h 2026-07-08 to 2026-09-24.
Asset5m15m1h4hAll windows
BTC47.0% ±4.4 · n=50050.2% ±4.4 · n=50050.6% ±4.4 · n=50052.2% ±4.5 · n=46950.0% ±2.2 · n=1,969
ETH49.4% ±4.4 · n=50051.2% ±4.4 · n=50050.8% ±4.4 · n=50054.4% ±4.5 · n=46951.4% ±2.2 · n=1,969
SOL49.2% ±4.4 · n=50051.2% ±4.4 · n=50050.8% ±4.4 · n=50051.2% ±4.5 · n=46950.6% ±2.2 · n=1,969
XRP49.0% ±4.4 · n=50051.4% ±4.4 · n=50051.4% ±4.4 · n=50048.4% ±4.5 · n=46950.1% ±2.2 · n=1,969
DOGE46.2% ±4.4 · n=50050.6% ±4.4 · n=50053.4% ±4.4 · n=50050.3% ±4.5 · n=46950.1% ±2.2 · n=1,969
BNB49.2% ±4.4 · n=50048.4% ±4.4 · n=50052.0% ±4.4 · n=50053.1% ±4.5 · n=46950.6% ±2.2 · n=1,969
HYPE47.6% ±4.4 · n=50050.8% ±4.4 · n=50055.2% ±4.3 · n=50053.1% ±4.5 · n=46951.6% ±2.2 · n=1,969
All48.2% ±1.7 · n=3,50050.5% ±1.7 · n=3,50052.0% ±1.7 · n=3,50051.8% ±1.7 · n=3,28350.6% ±0.8 · n=13,783

All seven assets sit between 49.97% and 51.65% with overlapping intervals, so the data does not distinguish one asset from another on direction.

2. Calibration

A calibrated book is one where things priced at 20% happen about 20% of the time. Grouping windows into deciles of the implied UP probability (the mid of the UP token top-of-book), the observed rate never falls from one bucket to the next across the ten buckets at 60 seconds before close, over 13,081 windows. The two buckets straddling 0.5 are the thinnest cells (n = 181 and n = 180) and their intervals span about 14 points each, so the middle of the curve is the least precise part of it. Across the three checkpoints 7 of the 30 decile intervals exclude their own mean implied price, more than the one or two that 95% intervals would miss by chance alone. Away from the tails: [0.4, 0.5) at 60s before close, priced at a mean 0.450 and resolved UP 34.25% [27.73%, 41.43%] (n = 181) and [0.1, 0.2) at 30s before close, priced at a mean 0.138 and resolved UP 6.01% [3.39%, 10.44%] (n = 183).

0.000.000.250.250.500.500.750.751.001.00mean implied probability of UPobserved UP rate60s before close30s before close10s before closedashed = perfect calibration
Implied probability versus observed UP rate per decile, at each checkpoint. Each cell shows the observed rate and the number of windows in that bucket. Excluded windows per checkpoint: 60s before close 5.09%, 30s before close 4.86%, 10s before close 5.01%.
Implied bucket60s before close30s before close10s before close
[0.0, 0.1)implied 0.014 → 1.03% [0.79%, 1.33%] · n=5,447implied 0.008 → 0.51% [0.36%, 0.72%] · n=6,066implied 0.006 → 0.38% [0.26%, 0.57%] · n=6,305
[0.1, 0.2)implied 0.141 → 12.56% [9.73%, 16.06%] · n=422implied 0.138 → 6.01% [3.39%, 10.44%] · n=183implied 0.128 → 8.33% [4.45%, 15.08%] · n=108
[0.2, 0.3)implied 0.248 → 21.91% [17.24%, 27.43%] · n=251implied 0.247 → 26.21% [18.69%, 35.45%] · n=103implied 0.251 → 36.84% [23.38%, 52.72%] · n=38
[0.3, 0.4)implied 0.351 → 33.87% [27.46%, 40.94%] · n=186implied 0.341 → 38.71% [27.58%, 51.15%] · n=62implied 0.350 → 43.48% [25.63%, 63.19%] · n=23
[0.4, 0.5)implied 0.450 → 34.25% [27.73%, 41.43%] · n=181implied 0.449 → 49.33% [38.33%, 60.40%] · n=75implied 0.453 → 48.72% [33.87%, 63.80%] · n=39
[0.5, 0.6)implied 0.548 → 58.33% [51.03%, 65.29%] · n=180implied 0.543 → 54.22% [43.55%, 64.51%] · n=83implied 0.541 → 55.56% [39.58%, 70.46%] · n=36
[0.6, 0.7)implied 0.653 → 61.17% [54.05%, 67.85%] · n=188implied 0.647 → 59.15% [47.54%, 69.83%] · n=71implied 0.645 → 57.69% [38.95%, 74.46%] · n=26
[0.7, 0.8)implied 0.750 → 76.32% [70.39%, 81.37%] · n=228implied 0.747 → 78.07% [69.63%, 84.68%] · n=114implied 0.753 → 84.62% [66.47%, 93.85%] · n=26
[0.8, 0.9)implied 0.856 → 88.17% [84.49%, 91.07%] · n=372implied 0.859 → 89.42% [84.51%, 92.91%] · n=208implied 0.868 → 89.33% [80.34%, 94.50%] · n=75
[0.9, 1.0]implied 0.987 → 99.47% [99.24%, 99.63%] · n=5,626implied 0.992 → 99.79% [99.64%, 99.88%] · n=6,148implied 0.995 → 99.83% [99.69%, 99.90%] · n=6,416

The tails are the best-powered cells in the calibration table. At 60 seconds the bottom bucket was priced at a mean 0.014 and resolved UP 1.03% of the time ([0.79%, 1.33%], n = 5,447); the top bucket was priced at a mean 0.987 and resolved UP 99.47% ([99.24%, 99.63%], n = 5,626). Of the six tail intervals across the three checkpoints, 5 exclude their own mean implied price, all the same way: heavy favourites won slightly more often than priced and longshots slightly less. It is still a record and not an edge: these are frequencies at a quoted mid, before the spread and fees a position would pay, and calibration is a statement about the pricing rather than about whether a strategy would have made money.

3. Favourite watch

When the book priced a side at 90% or higher with 60 seconds left, that side lost 0.78% of the time: 87 of 11,103 windows, Wilson 95% [0.64%, 0.97%].

These are outcome frequencies at a quoted mid, before the bid/ask spread, fees and slippage any position would pay. 90% is only the entry threshold: sides in this set were quoted at a mean of 98.6c, not 90c.

The rate falls as the deadline approaches, while the eligible set grows by 15% as prices harden: 0.78% at 60s before close (n = 11,103), 0.36% at 30s before close (n = 12,229), 0.27% at 10s before close (n = 12,737).

Rate at which a side priced at 90% or higher lost, by window length and checkpoint. Counts are windows where some side cleared 90% at that checkpoint.
Window length60s before close30s before close10s before close
5m1.24% [0.87%, 1.75%] · 31/2,5090.51% [0.31%, 0.82%] · 16/3,1620.26% [0.14%, 0.50%] · 9/3,441
15m0.85% [0.58%, 1.25%] · 25/2,9470.09% [0.03%, 0.27%] · 3/3,2490.12% [0.05%, 0.30%] · 4/3,395
1h0.86% [0.58%, 1.29%] · 23/2,6670.65% [0.41%, 1.02%] · 18/2,7750.57% [0.35%, 0.92%] · 16/2,817
4h0.27% [0.14%, 0.53%] · 8/2,9800.23% [0.11%, 0.47%] · 7/3,0430.19% [0.09%, 0.42%] · 6/3,084

At 60 seconds the rate runs from 0.27% on 4h (8/2,980) to 1.24% on 5m (31/2,509). Those two intervals do not overlap, though both pool seven assets on one clock and so run narrow, and they cover different calendar periods (see the base-rate caption). The comparison is between two outcome frequencies, not between two returns: both sit before spread, fees and slippage, and neither says a position taken at either price would have paid.

Same measure by asset, at 60 seconds before close. HYPE qualifies in fewer windows: more of its checkpoints fail the quote filter (see Limitations and coverage).
AssetFavourite lostWilson 95%Windows
BTC0.86%[0.51%, 1.43%]14/1,634
ETH0.86%[0.51%, 1.43%]14/1,634
SOL0.97%[0.60%, 1.57%]16/1,652
XRP0.83%[0.50%, 1.39%]14/1,686
DOGE0.62%[0.34%, 1.13%]10/1,620
BNB0.66%[0.37%, 1.18%]11/1,658
HYPE0.66%[0.33%, 1.29%]8/1,219

4. The hourly gap

Two numbers look like the same price and are not. Our own first Chainlink reading after a window opens sits 3.2 bps away from the open Polymarket actually settles against on 1h windows (median over 1,204 windows, p95 10.2 bps, 31.48% of windows above 5 bps). On 5m, 15m and 4h windows the same comparison is 0.24, 0.22 and 0.1 bps. It is mostly one-sided rather than jitter: on 1h windows the Chainlink reading is above the settlement open in 6.7% of windows, signed median -3.16 bps, and every asset with a Chainlink feed across the whole sample shows the offset, at medians of 3.03 to 3.39 bps.

Absolute offset between the boundary Chainlink reading and the settlement open, 1h markets, in basis points of the settlement open. Separate sub-sample from the rest of this page: the most recent 200 windows per market as of 2026-09-24. Across all 28 markets it closes 2026-08-22 to 2026-09-24 (the 4h markets set the start, so these 1h rows cover a shorter, more recent stretch), and 4,878 of 5,600 windows had both values; HYPE had no Chainlink feed before 2026-09-24, so only its windows since then are counted.
MarketMedianp95Above 5 bpsWindows
btc-1h3.15 bps9.76 bps30.0%200
eth-1h3.03 bps10.16 bps29.0%200
sol-1h3.05 bps10.29 bps30.0%200
xrp-1h3.26 bps10.13 bps33.0%200
doge-1h3.35 bps10.61 bps36.5%200
bnb-1h3.39 bps9.88 bps31.0%200
hype-1h1.22 bps1.45 bps0.0%4

It matters because a reference level taken at the top of the hour is not the level the 1h market resolves against, so a window can look decided on one number and settle on the other. Site tables print the settlement open for that reason; the methodology page documents both numbers. Its 9.24 to 9.78 bps range is not from this build: it was measured on an earlier, smaller sample using a 2-decimal stored copy of the same value, and is marked there as superseded. The offset also moves over time (this page's 2026-07-26 build measured 7.67 bps the same way), so cite the figure above with its sample: the most recent 200 1h windows per market as of 2026-09-24.

5. Window replays

3 windows where a side above 93% lost, one per asset and window length, 240 recorded points each. The green line is our own exchange recording (Binance, falling back to Pyth or Chainlink where Binance has no feed). The two dashed lines are the settlement open and the close stored for the window, both from Polymarket's price-to-beat feed sampled at the window boundaries, so the green line does not have to end on the close. The outcome is Polymarket's settled result, not a recomputation from those two lines: since 2026-08-07, 5m, 15m and 4h windows settle on a Chainlink TWAP they do not reproduce. Replays are limited to windows whose stored close, read against the settlement open, gives the settled outcome. XRP and DOGE are left out of replay selection, a rule kept from when their window closes were stored at 2 decimals (closes before 2026-07-26 still are).

btc-updown-5m-1790268000 · resolved DOWN

2026-09-24 16:40 to 16:45 UTC · settlement open 84,658.79634 · close 84,525.67642

settlement open 84,658.79634stored close 84,525.6764284,525.6764284,9040.00.51.00s75s150s225s300sseconds into the windowrecorded exchange price (left axis)implied UP probability (right axis)

With 60 seconds left the book put 4.4% on the side that won, and 99.9% with 10 seconds left. The stored close of 84,525.67642 against the settlement open of 84,658.79634 reads DOWN, and Polymarket settled the window DOWN.

BTC 5m market page

sol-updown-15m-1790019900 · resolved UP

2026-09-21 19:45 to 20:00 UTC · settlement open 118.17968 · close 118.34691

settlement open 118.17968stored close 118.34691117.88118.346910.00.51.00s225s450s674s899sseconds into the windowrecorded exchange price (left axis)implied UP probability (right axis)

With 60 seconds left the book put 0.5% on the side that won, and 100.0% with 10 seconds left. The stored close of 118.34691 against the settlement open of 118.17968 reads UP, and Polymarket settled the window UP.

SOL 15m market page

bnb-updown-1h-1789275600 · resolved UP

2026-09-13 05:00 to 06:00 UTC · settlement open 726.34 · close 726.36

settlement open 726.34stored close 726.36726726.730.00.51.00s900s1800s2700s3600sseconds into the windowrecorded exchange price (left axis)implied UP probability (right axis)

With 60 seconds left the book put 6.0% on the side that won, and 16.5% with 10 seconds left. The stored close of 726.36 against the settlement open of 726.34 reads UP, and Polymarket settled the window UP.

BNB 1h market page

Browsing every window that matches a filter, going back through the full retained history, and exporting the rows as CSV are dashboard features on Pro. See pricing or open the dashboard.

Premium adds programmatic access to the same per-window data through the REST API and the hosted MCP server: API and MCP reference.

6. Data and citation

Every aggregate on this page is published as a single JSON file: /observatory-aggregates.json. It is free to use with attribution and a link back to this page, under CC BY 4.0. It contains the aggregates on this page plus the 3 window replays shown above, each downsampled to 240 points. The rest of the per-window dataset and the recorded price archive are not part of it.

Cite as: UpDown Charts, "The Polymarket Up/Down Observatory", 2026, www.updowncharts.com/observatory
Data as of 2026-09-24. Sample: 13,783 resolved windows, 28 markets, up to the most recent 500 per market. Windows closing by length: 5m 2026-09-23 to 2026-09-24, 15m 2026-09-19 to 2026-09-24, 1h 2026-09-03 to 2026-09-24, 4h 2026-07-08 to 2026-09-24.

Limitations and coverage

  • Outcome frequencies are a record of what happened. They exclude the bid/ask spread, fees and slippage, so they are not a statement about profitability.
  • A checkpoint is excluded for a window when the last recorded two-sided quote is more than 20s old, when the book is one-sided, or when the spread exceeds 0.2. Exclusion rates are reported per checkpoint and per market.
  • Window close prices recorded before 2026-07-26 were stored at 2 decimals, which cannot represent a normal short-window move for XRP and especially DOGE; closes since then are full precision. Outcomes are the result Polymarket settled (history reconciled against it on 2026-09-24), not recomputed from these prices.
  • Pyth stopped serving on 2026-08-26 16:20 UTC and the recorder stored its last price until 2026-09-24 15:00 UTC. Those Pyth values are ignored: replay price paths in that range use Binance, else Chainlink, and HYPE windows from that range (Pyth was its only feed) are not replay candidates.
  • HYPE had no Chainlink or Binance feed before 2026-09-24; its windows before then have no captured open and are absent from the captured-vs-settlement comparison.
  • The sample is the most recent resolved windows per market at build time, at most 500 (fewer where fewer have resolved), not the full archive. Recorded price series are retained for 90 days.
  • Windows for different assets cover the same clock intervals, and concurrent crypto moves are correlated, so any cell that pools assets has an effective sample well below its N. Wilson intervals on pooled cells assume independent windows and are therefore optimistic; per-market cells are the ones to read.
  • Because the sample is up to the most recent 500 windows per market, the shorter timeframes cover far less calendar time than the longer ones. Per-timeframe date ranges are in coverage.byMarket and are published next to the base-rate table.
  • Quotes are sampled by our own collector every 500 ms. A checkpoint mid is the last observation at or before that instant, not the exact book state at that instant.
  • Quote coverage at 60 seconds before close is at least 96% on 25 of 28 markets. The exceptions are hype-1h at 15.2%, hype-4h at 79.1% and doge-1h at 90.2%. A checkpoint counts only when a two-sided quote no wider than 0.2 was recorded in the 20 seconds before it, so any claim about those markets should be scoped to the windows that qualified.
  • The sample is capped at 500 windows per market: 500 per 5m market, 500 per 15m market, 500 per 1h market and 469 per 4h market.