Resolution delay, Polymarket vs Kalshi
How long from market close to final settlement: Polymarket measured onchain via UMA ProposePrice to QuestionResolved, Kalshi via settlement_ts minus close_time from the public REST API. Auto-generated multivariate parlays excluded from Kalshi data.
TL;DR. As of , Kalshi — All leads resolution delay at 10.0 min (p50, 24h) on Resolution delay, Polymarket vs Kalshi. Source: OpenChainBench, https://openchainbench.com/benchmarks/pm-resolution-delay.
Read this carefully
Polymarket delay is measured from the first onchain outcome proposal to resolution (UMA challenge window, minimum 2h by protocol). Kalshi delay is settlement_ts - close_time (exact from API), where close_time is the scheduled market close, not the real-world event end. Kalshi auto-generated parlay markets (Exotics) are excluded. Both anchors are lower bounds on total user wait from the real-world event ending.
The most asked question about prediction markets after "is it legal" is "how long until I get paid". The answer circulating on social media for Polymarket is that 93 percent of markets resolve within 2 hours. That number has no published methodology and cannot be reproduced from Polymarket's own Gamma API. This benchmark measures what can actually be observed: for Polymarket, the time from the first onchain outcome proposal on UMA's optimistic oracle to the onchain resolution, read directly from Polygon logs. For Kalshi, the time from a market's scheduled close_time to the first poll at which its result is non-null, measured every five minutes. Both venues are broken down by category so the comparison is apples to apples.
Methodology
Polymarket: a listener follows the UMA CTF adapters on Polygon (QuestionInitialized, QuestionResolved, QuestionReset) and the Optimistic Oracle they call (ProposePrice, DisputePrice). Delay = first ProposePrice block to QuestionResolved block, joined to Gamma for category tags. Kalshi: a poller hits the public /trade-api/v2/markets?status=settled endpoint every 5 minutes. Delay = settlement_ts - close_time (both from API, exact, no polling error). Categories resolved via /events/{event_ticker}. Auto-generated multivariate parlay markets (Kalshi "Exotics" category) are excluded: they settle algorithmically in seconds and are not prediction market questions. No auth required.
Frequently asked
How long does Polymarket take to pay out after a market ends?
Measured onchain, the median delay from the first outcome proposal to resolution is currently 128.8 min across all markets, and redemptions are claimable immediately after resolution. The full distribution matters: p99 is 387.1 min, and the per category rows show that sports, crypto and politics markets run on different verification windows. Add the time between the real world event ending and the first proposal, which is not measurable onchain.
How long does Kalshi take to resolve?
Kalshi resolves via its own internal process, not through an onchain oracle. The delay measured here is from a market's scheduled close_time to the first API poll (every 5 minutes) at which a result appears. The current median is 10.0 min. This reflects Kalshi's operational resolution speed, not an onchain settlement time.
Do 93 percent of Polymarket markets resolve within 2 hours?
We could not reproduce that figure. The fields in Polymarket's public Gamma API cannot produce it: closedTime is written at the moment of resolution (circular) and endDate is a scheduled buffer most markets beat. Measured from the first onchain outcome proposal, the within 2 hours share is in the table above and has been materially below 93 percent since this benchmark started.
What happens when a Polymarket market is disputed?
A dispute on UMA's optimistic oracle resets the question and routes it through UMA token holder voting, replacing the normal verification window with a voting period measured in days. The disputed label separates those markets so clean path percentiles stay honest.
Why is my Polymarket market still unresolved?
Three common reasons: the underlying event has not concluded despite the scheduled end date; no one has submitted a proposal yet (the clock only starts at first proposal); or the market is in a UMA dispute, which adds days. The pending backlog gauge counts all markets past their end date without onchain resolution.
Source code github.com/ChainBench/OpenChainBench/tree/main/harnesses/pm-resolution-delay