{"slug":"polkadot-rpc","title":"Polkadot RPC endpoints: free public URLs by latency","subtitle":"HTTP round-trip latency for chain_getHeader against every free, no-key public Polkadot relay-chain endpoint, audited every 60 seconds from 3 regions.","category":"RPCs","metric":"RPC latency","unit":"ms","status":"live","higherIsBetter":false,"filters":null,"value":53.2648,"leader":{"name":"OnFinality","slug":"onfinality","value":53.2648},"leaders":[{"name":"OnFinality","slug":"onfinality","value":53.2648}],"rankings":[{"name":"OnFinality","slug":"onfinality","ms":{"p50":53.2648,"p90":144.296,"p99":1596.18,"mean":119.604},"successRate":100,"sampleSize":4312.77},{"name":"PublicNode","slug":"publicnode","ms":{"p50":86.1349,"p90":109.426,"p99":340.924,"mean":94.738},"successRate":99.90719999999999,"sampleSize":4313.77},{"name":"Parity","slug":"polkadot-official","ms":{"p50":129.236,"p90":246.535,"p99":699.037,"mean":178.16},"successRate":99.768,"sampleSize":4312.77}],"sparkline":[133.978,155.534,169.166,152.779,77.7803,56.5996,69.5381,106.965,151.203,201.568,243.149,256.646,199.212,129.399,72.2891,72.2735,63.4007,65.65,80.3473,128.182,163.567,143.156,113.347,98.8482,122.687,112.58,89.6479,79.3287,78.4612,76.7338,73.2236,67.2753,68.1213,68.1667,76.8827,92.1612,114.531,134.597,119.504,102.96,186.657,206.861,227.782,124.97,101.845,72.3629,66.05,76.6446,79.1362,127.215,148.532,148.521,102.242,84.82,118.208,168.104,176.496,151.737,99.4436,80.0995,97.2454,100.91,114.073,93.4266,83.5085,73.0065,61.1271,61.8046,62.9963,90.6421,127.057,174.196,172.295],"sampleSize":12939.310000000001,"asOf":"2026-10-14T05:08:19.897Z","freshness":{"asOf":"2026-10-14T05:08:19.897Z","ageHours":0,"stale":false},"measured":3,"ranked":3,"headline":"OnFinality has the lowest median latency of the 3 free public Polkadot RPC endpoints measured, 53 ms (p50, 24h, 3 regions).","quote":"OnFinality has the lowest median latency of the 3 free public Polkadot RPC endpoints measured, 53 ms (p50, 24h, 3 regions). Source: OpenChainBench (https://openchainbench.com/benchmarks/polkadot-rpc).","cite":{"plain":"OpenChainBench. \"Polkadot RPC endpoints: free public URLs by latency\". Retrieved 2026-10-14. https://openchainbench.com/benchmarks/polkadot-rpc","bibtex":"@misc{ocb_polkadot_rpc,\n  author = {OpenChainBench},\n  title  = {Polkadot RPC endpoints: free public URLs by latency},\n  year   = {2026},\n  url    = {https://openchainbench.com/benchmarks/polkadot-rpc},\n  note   = {Retrieved 2026-10-14}\n}","apa":"OpenChainBench. (2026). Polkadot RPC endpoints: free public URLs by latency. Retrieved October 14, 2026, from https://openchainbench.com/benchmarks/polkadot-rpc","ris":"TY  - GEN\r\nAU  - OpenChainBench\r\nTI  - Polkadot RPC endpoints: free public URLs by latency\r\nPY  - 2026\r\nUR  - https://openchainbench.com/benchmarks/polkadot-rpc\r\nY2  - 2026-10-14\r\nER  - \r\n"},"pageUrl":"https://openchainbench.com/benchmarks/polkadot-rpc","ogImage":"https://openchainbench.com/api/og/polkadot-rpc","source":"https://github.com/ChainBench/OpenChainBench/tree/main/harnesses/rpc-capabilities","methodology":["Cadence: every 60 seconds per provider, from each of 3 probe regions (us-east Virginia, eu-west Amsterdam, sgp Singapore). Headline p50/p90/p99 aggregate across all 3 regions via Prometheus `avg(quantile_over_time(...))`; per-region breakdowns are first-class on this page via the region tabs.","Payload: `{\"jsonrpc\":\"2.0\",\"id\":<rotating>,\"method\":\"chain_getHeader\",\"params\":[]}`. Plain HTTP POST, identical for every endpoint, no API key in any request. The request id rotates, but that does not guarantee a cache miss: many caches normalise `id` away. Measured 2026-10-08, fixed and rotating ids answer within 2 to 4 percent of each other.","Latency measurement, call-result classification (`ok`, `http_err`, `jsonrpc_err`, `stale`, `timeout`) and the archive-depth audit follow the cluster method documented on [rpc-capabilities](https://openchainbench.com/benchmarks/rpc-capabilities#methodology); this page is the Polkadot-scoped view of the same harness, with the same exclusion rules.","No archive-depth loop on this chain. Polkadot's state model is accessed via `state_getStorage` keyed by a Blake2-hashed storage key rather than the EVM `eth_getBalance(address, height)` pattern, so the archive probe used on the EVM cluster is not applied here.","No cross-provider hash quorum on this chain. `chain_getHeader` returns the parent-block hash rather than the current-block hash (the current hash is derived by Blake2 over the SCALE-encoded header). Bench 083's height-hash quorum check is therefore skipped for Polkadot; the same reliability signal is still captured via `ok` / `stale` classification against the rolling cross-provider tip.","Chain scope: every query on this page is pinned to `chain=\"polkadot\"`. Provider coverage today: 3 no-key endpoints (Parity official, OnFinality public gateway, PublicNode). Excluded by the launch audit: 1RPC filters `chain_getHeader` as \"Not Allowed\" on its privacy relay; Dwellir returned 503 during the audit sweep; Ankr paid Polkadot tier only; Chainstack key-gated; RadiumBlock requires a referral header; Grove and Thirdweb return invalid-chain or key-gated."],"license":"CC-BY-4.0"}