The goal of our analysis is to determine the best public Polkadot RPC endpoint on mainnet for each continent as well as the best overall, globally. According to our infrastructure directory for Polkadot, there are at least 10 public endpoints for the mainnet on October 23, 2024 (list).
We are using our own (rpc) Performance Inspector which is a public web application. RPC providers change/expand their infrastructure and locations all the time which is why it might be useful for you to repeat test steps at your convenience here.
Please note that this performance comparison is not benchmarking. It would not make sense to use flood, chainbench (by Chainstack), k6 or another stress test / benchmarking tool for at least these reasons:
- The endpoints are being used by the public and suffocating them with requests might degrade the experience for other unsuspecting users;
- In most cases, the providers limit inbound traffic to public endpoints based on IP address and we would probably hit http429 errors very quickly.
Our Methodology
- We believe in WAGMI to mean the entire world. Therefore, we send simultaneous RPC requests from 27 locations on 6 continents. Our “probes” are in AWS and not “in” your laptop browser.
- For this analysis we configured the inspector to use the eth_blockNumber method and you can choose to use eth_getBalance instead.
- Another setting for our runs was the limit to “not more than 1 request per region per second” whereas the alternative is to let each probe run as fast as it gets the previous response.
- You can create an account with other providers like Infura, Alchemy, QuickNode and use their private endpoints to perform a similar analysis. We omitted providers without public endpoints but you can include them. We don’t record endpoints and our results contain just the domain names of the URLs which were included in the runs.
- Since there were 10 providers and our inspector form accepts two at a time, we did 6 runs and combined their results for complete rankings. Although each run is for 2 providers, their computations are independent as each utilizes a separate instance of our RPC probe. See this Google Sheet or view “raw” individual results on the bottom of the page. Btw, we repeated one run due to inconclusive results.
- Each pair of providers was run for 30 seconds and should have been measured for 30 requests from each region for a total of 810 measures. Requests are dispatched sequentially, one at a time. Latency duration is the sum of timings of milliseconds from the moment the request is sent until a success response gets back to us. Btw, we do a warmup request in each region which is omitted from the results.
- Additional info is in the FAQ on the bottom of the RPC Performance Inspector control form.
Eliminated Endpoints
- RadiumBlock blocked our probes from North Americal and had 9 errors with the error message:
{"error":{"message":"Connection timeout","code":504}}
The Top 9 Public Polkadot RPC Endpoints on Mainnet
Overall / Global Ranking
(27 AWS regions on October 23, 2024)
No | Provider | Avg (ms) | Failed | 429 | Success | Duration (ms) |
1 | IBP | 55.83 | 0 | 0 | 810 | 45,220 |
2 | OnFinality | 122.56 | 0 | 0 | 810 | 99,275 |
3 | Stakeworld | 138.10 | 0 | 0 | 810 | 111,863 |
4 | Polkadot Foundation | 158.56 | 0 | 0 | 810 | 128,430 |
5 | Dwellir | 189.71 | 0 | 0 | 810 | 153,662 |
6 | SubQuery Network | 211.05 | 0 | 0 | 810 | 170,951 |
7 | Allnodes | 217.08 | 0 | 0 | 810 | 175,837 |
8 | Blockops | 229.83 | 0 | 0 | 810 | 186,161 |
9 | GetBlock | 302.90 | 0 | 0 | 810 | 245,352 |
Best Public Polkadot RPC Endpoints on Mainnet for North America
(5 AWS regions on October 23, 2024)
No | Provider | Avg (ms) | Failed | 429 | Success | Duration (ms) |
1 | IBP | 19.93 | 0 | 0 | 150 | 2,989 |
2 | OnFinality | 43.07 | 0 | 0 | 150 | 6,460 |
3 | Stakeworld | 58.53 | 0 | 0 | 150 | 8,780 |
4 | Allnodes | 95.32 | 0 | 0 | 150 | 14,298 |
5 | Polkadot Foundation | 142.24 | 0 | 0 | 150 | 21,336 |
6 | Dwellir | 161.33 | 0 | 0 | 150 | 24,199 |
7 | SubQuery Network | 174.17 | 0 | 0 | 150 | 26,126 |
8 | Blockops | 202.95 | 0 | 0 | 150 | 30,442 |
9 | GetBlock | 269.27 | 0 | 0 | 150 | 40,391 |
Best Public Polkadot RPC Endpoints on Mainnet for South America
(1 AWS region on October 23, 2024)
No | Provider | Avg (ms) | Failed | 429 | Success | Duration (ms) |
1 | Stakeworld | 145.30 | 0 | 0 | 30 | 4,359 |
2 | IBP | 146.03 | 0 | 0 | 30 | 4,381 |
3 | OnFinality | 147.77 | 0 | 0 | 30 | 4,433 |
4 | Polkadot Foundation | 224.53 | 0 | 0 | 30 | 6,736 |
5 | Allnodes | 238.17 | 0 | 0 | 30 | 7,145 |
6 | SubQuery Network | 251.17 | 0 | 0 | 30 | 7,535 |
7 | Blockops | 260.33 | 0 | 0 | 30 | 7,810 |
8 | Dwellir | 263.57 | 0 | 0 | 30 | 7,907 |
9 | GetBlock | 316.93 | 0 | 0 | 30 | 9,508 |
Best Public Polkadot RPC Endpoints on Mainnet for Europe
(8 AWS regions on October 23, 2024)
No | Provider | Avg (ms) | Failed | 429 | Success | Duration (ms) |
1 | IBP | 21.89 | 0 | 0 | 240 | 5,253 |
2 | Stakeworld | 33.75 | 0 | 0 | 240 | 8,099 |
3 | Polkadot Foundation | 40.31 | 0 | 0 | 240 | 9,675 |
4 | SubQuery Network | 61.30 | 0 | 0 | 240 | 14,711 |
5 | Dwellir | 62.40 | 0 | 0 | 240 | 14,976 |
6 | Allnodes | 65.91 | 0 | 0 | 240 | 15,819 |
7 | Blockops | 99.75 | 0 | 0 | 240 | 23,940 |
8 | OnFinality | 105.25 | 0 | 0 | 240 | 25,260 |
9 | GetBlock | 198.72 | 0 | 0 | 240 | 47,693 |
Best Public Polkadot RPC Endpoints on Mainnet for the Middle East and Africa
(3 AWS regions on October 23, 2024)
No | Provider | Avg (ms) | Failed | 429 | Success | Duration (ms) |
1 | IBP | 146.24 | 0 | 0 | 90 | 13,162 |
2 | Stakeworld | 146.61 | 0 | 0 | 90 | 13,195 |
3 | Polkadot Foundation | 149.32 | 0 | 0 | 90 | 13,439 |
4 | Dwellir | 163.49 | 0 | 0 | 90 | 14,714 |
5 | SubQuery Network | 171.77 | 0 | 0 | 90 | 15,459 |
6 | Blockops | 220.14 | 0 | 0 | 90 | 19,813 |
7 | Allnodes | 223.36 | 0 | 0 | 90 | 20,102 |
8 | GetBlock | 311.30 | 0 | 0 | 90 | 28,017 |
9 | OnFinality | 319.77 | 0 | 0 | 90 | 28,779 |
Best Public Polkadot RPC Endpoints on Mainnet for Asia
(8 AWS regions on October 23, 2024)
No | Provider | Avg (ms) | Failed | 429 | Success | Duration (ms) |
1 | IBP | 67.70 | 0 | 0 | 240 | 16,249 |
2 | OnFinality | 100.35 | 0 | 0 | 240 | 24,085 |
3 | Polkadot Foundation | 236.80 | 0 | 0 | 240 | 56,831 |
4 | Stakeworld | 242.26 | 0 | 0 | 240 | 58,142 |
5 | Dwellir | 284.75 | 0 | 0 | 240 | 68,339 |
6 | Blockops | 342.50 | 0 | 0 | 240 | 82,199 |
7 | SubQuery Network | 343.37 | 0 | 0 | 240 | 82,408 |
8 | Allnodes | 386.37 | 0 | 0 | 240 | 92,729 |
9 | GetBlock | 386.64 | 0 | 0 | 240 | 92,793 |
Best Public Polkadot RPC Endpoints on Mainnet for Australia
(2 AWS regions on October 23, 2024)
No | Provider | Avg (ms) | Failed | 429 | Success | Duration (ms) |
1 | IBP | 53.10 | 0 | 0 | 60 | 3,186 |
2 | OnFinality | 170.97 | 0 | 0 | 60 | 10,258 |
3 | Stakeworld | 321.47 | 0 | 0 | 60 | 19,288 |
4 | Polkadot Foundation | 339.63 | 0 | 0 | 60 | 20,378 |
5 | Blockops | 365.95 | 0 | 0 | 60 | 21,957 |
6 | Dwellir | 392.12 | 0 | 0 | 60 | 23,527 |
7 | SubQuery Network | 411.87 | 0 | 0 | 60 | 24,712 |
8 | Allnodes | 429.07 | 0 | 0 | 60 | 25,744 |
9 | GetBlock | 449.17 | 0 | 0 | 60 | 26,950 |
Overall Winner on October 23, 2024
Congratulations to IBP as the best public Polkadot RPC endpoint on mainnet (all endpoints).
IBP wins the best results for public Polkadot RPC in Asia, Australia, Europe, North America, Middle East and South Africa.
Stakeworld is our top choice for public Polkadot RPC in South America.
Complete data and rankings for each of the 27 locations are in this sheet.
The IP addresses show the following clouds & CDNs:
- CLOUDFLARENET: Allnodes, Blockops, Polkadot Foundation, Stakeworld
- LFLL-ASN: IBP
- Qavat AB: Dwellir
- EQUINIX-EC-DC: OnFinality, SubQuery Network
- GetBlock: Hetzner Online GmbH, Fornex Hosting S.L.
Raw Results
- Allnodes, Blockops – https://www.comparenodes.com/global-node-comparison/a3a882df-e3a1-4afc-ad72-67ec846a33f0/
- Dwellir, GetBlock – https://www.comparenodes.com/global-node-comparison/87dfd92f-5837-4e4f-82c3-842498ad58e8/
- IBP, OnFinality – https://www.comparenodes.com/global-node-comparison/ebb3b15b-f660-4002-861c-02cc298dc2ea/
- Polkadot Foundation, Stakeworld – https://www.comparenodes.com/global-node-comparison/5ecb4400-a4e4-43f7-b233-61b8a678aa3c/
- SubQuery Network, Polkadot Foundation – https://www.comparenodes.com/global-node-comparison/36aff996-e29e-47e9-8ba4-7c98d38e670a/
- RadiumBlock, SubQuery Network – https://www.comparenodes.com/global-node-comparison/90c138f5-4f92-48b5-9843-ed4271219c28/