{"slug":"pm-ws-latency","title":"Polymarket WebSocket latency, live connection and update speed from 3 regions","subtitle":"Connect-to-snapshot latency, inter-message update rate, and trade publication lag on the Polymarket WebSocket feed (ranked) and Kalshi WebSocket (measured, not ranked), probed from three regions 24 hours a day.","category":"Trading","metric":"WS connect to snapshot","unit":"ms","status":"live","higherIsBetter":false,"filters":null,"value":2000,"leader":{"name":"Polymarket","slug":"polymarket","value":2000},"rankings":[{"name":"Polymarket","slug":"polymarket","ms":{"p50":2000,"p90":2400,"p99":2490,"mean":2086.89},"successRate":50,"sampleSize":17.004},{"name":"Kalshi","slug":"kalshi","ms":{"p50":10000,"p90":10000,"p99":10000,"mean":1655940},"successRate":50,"sampleSize":4.00114}],"sparkline":[2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000],"sampleSize":21.00514,"asOf":"2026-08-08T13:03:01.770Z","headline":"Polymarket leads ws connect to snapshot at 2.00 s (p50, 24h) on Polymarket WebSocket latency, live connection and update speed from 3 regions.","quote":"Polymarket leads ws connect to snapshot at 2.00 s (p50, 24h) on Polymarket WebSocket latency, live connection and update speed from 3 regions. Source: OpenChainBench (https://openchainbench.com/benchmarks/pm-ws-latency).","cite":{"plain":"OpenChainBench. \"Polymarket WebSocket latency, live connection and update speed from 3 regions\". Retrieved 2026-08-08. https://openchainbench.com/benchmarks/pm-ws-latency","bibtex":"@misc{ocb_pm_ws_latency,\n  author = {OpenChainBench},\n  title  = {Polymarket WebSocket latency, live connection and update speed from 3 regions},\n  year   = {2026},\n  url    = {https://openchainbench.com/benchmarks/pm-ws-latency},\n  note   = {Retrieved 2026-08-08}\n}","apa":"OpenChainBench. (2026). Polymarket WebSocket latency, live connection and update speed from 3 regions. Retrieved August 8, 2026, from https://openchainbench.com/benchmarks/pm-ws-latency","ris":"TY  - GEN\r\nAU  - OpenChainBench\r\nTI  - Polymarket WebSocket latency, live connection and update speed from 3 regions\r\nPY  - 2026\r\nUR  - https://openchainbench.com/benchmarks/pm-ws-latency\r\nY2  - 2026-08-08\r\nER  - \r\n"},"pageUrl":"https://openchainbench.com/benchmarks/pm-ws-latency","ogImage":"https://openchainbench.com/api/og/pm-ws-latency","source":"https://github.com/ChainBench/OpenChainBench/tree/main/harnesses/pm-rate-limits","methodology":["Connect-to-snapshot: wall clock from websocket.Dial call start to receiving the first non-PONG frame. Covers TCP connection, TLS handshake, HTTP upgrade and the time the venue takes to deliver the first orderbook snapshot after receiving the subscribe message. Measured per reconnect event.","Inter-arrival: wall clock between consecutive received data frames while the session is stable. Measures the velocity of the live feed, i.e. how often the venue pushes orderbook or price updates on a typical active market. Measured per message pair.","Regions: us-east (Railway us-east4), eu-west (Railway europe-west4), sgp (Railway asia-southeast1). The Polymarket CLOB WS endpoint is globally distributed via Cloudflare, so regional differences reflect edge proximity and routing, not server capacity.","Keepalive: a background goroutine sends the literal text PING every 10 seconds and the venue responds with PONG. Sessions that stop receiving data are detected by the reconnect logic on the next PING timeout. Disconnect rate is exported as a counter.","Pin: the harness targets the same market used by the pm-rate-limits bench (highest 24h volume binary market with last trade price between 0.15 and 0.85), refreshed daily at 00:00 UTC. The WS client re-subscribes automatically when the pin changes.","Metrics: pmapi_ws_connect_to_snapshot_seconds and pmapi_ws_update_interarrival_seconds histograms, labeled by venue, region and source. The pm-rate-limits harness runs the WS session alongside REST probes, sharing one Railway deployment per region. Kalshi note: its ticker channel is delta-only (no snapshot on subscribe), so connect-to-snapshot measures time to the first price change, which depends on market activity.","Other venues: Kalshi WS (wss://api.elections.kalshi.com/trade-api/ws/v2) requires RSA-PSS signed headers from a US KYC account and returns 403 from non-US IPs, so it is measured from us-east only and excluded from the rank matrix. Limitless uses socket.io over HTTP long-polling, not standard WebSocket. Manifold, Myriad, PredictIt, Smarkets and Metaculus have no public WebSocket endpoint."],"license":"CC-BY-4.0"}