Polygon public RPC endpoints, tested

Every keyless Polygon (chain ID 137) endpoint listed on Chainlist and chainid.network, tested the same way on 2026-09-24: does it answer on the right chain, how fast, how far behind the best head, how large an eth_getLogs range it accepts, whether it keeps archive state, and whether its WebSocket actually streams. 10 of 35 HTTP endpoints were working.

Working HTTP endpoints

EndpointLatencyBehind besteth_getLogsState
https://rpc.swiftnodes.io/rpc/polygon (SwiftNodes, keyless: 2 req/s)103 ms2 blocks10,000+none
https://api-polygon-mainnet-full.n.dwellir.com/2ccf18bf-2916-4198-8856-42172854353c149 ms0 blocksunder 1,000none
https://api.zan.top/polygon-mainnet15 ms14 blocksunder 1,000archive (1M+)
https://polygon-bor-rpc.publicnode.com17 ms22 blocks10,000+recent only
https://polygon.drpc.org26 ms23 blocksunder 1,000archive (1M+)
https://rpc.private.mev-x.com/polygon46 ms11 blocks10,000+none
https://poly.api.pocket.network59 ms12 blocks10,000+archive (1M+)
https://rpc-polygon.blockmachine.io59 ms9 blocks1,000archive (1M+)
https://rpc-mainnet.matic.quiknode.pro98 ms22 blocks10,000+archive (1M+)
https://matic.rpc.sentio.xyz171 ms11 blocks10,000+archive (1M+)

Order: endpoints within 3 blocks of the best head first, then by median latency. Latency is measured from one server, so yours will differ by region; lag and limits do not.

WebSocket endpoints

  • streams rpc.swiftnodes.io/ws/polygon (SwiftNodes): first head after 139 ms
  • streams poly.api.pocket.network: first head after 755 ms
  • streams polygon.drpc.org: first head after 1390 ms
  • streams polygon-bor-rpc.publicnode.com: first head after 1458 ms
  • does not stream polygon.gateway.tenderly.co: connection failed (connect)
  • does not stream rpc.satelink.network/rpc/ws/polygon: connection failed (connect)
  • does not stream polygon-mainnet.4everland.org/ws/v1/37fa9972c1b1cd5fab542c7bdd4cde2f: connection failed (connect)

Listed but not working

  • rpc.satelink.network/rpc/polygon: chainId: Payment required
  • rpcfree.com/polygon-rpc: no answer (HTTP 200)
  • rpc.ankr.com/polygon: chainId: Unauthorized: You must authenticate your request with an API key. Create an account on http
  • polygon-rpc.com: chainId: message: API key disabled, reason: tenant disabled, json-rpc code: -32051, rest code: 403
  • polygon-public.nodies.app: no answer (HTTP 403)
  • polygon-mainnet.public.blastapi.io: chainId: Blast API is no longer available. Please update your integration to use Alchemy's API inste
  • public.1rpc.io/matic: chainId: You've reached the usage limit for your current plan. To continue with higher limits and un
  • go.getblock.io/02667b699f05444ab2c64f9bff28f027: no answer (HTTP 401)
  • polygon.gateway.tenderly.co: chainId: rate limited
  • polygon.rpc.blxrbdn.com: chainId: fetch failed
  • lb.routeme.sh/rpc/evm/137: chainId: rate limited
  • xrpc.cl/polygon: chainId: timeout
  • rpc.nodeflare.app/polygon/public: chainId: rate limited
  • polygon.meowrpc.com: chainId: fetch failed
  • public.stackup.sh/api/v1/node/polygon-mainnet: chainId: fetch failed
  • polygon-mainnet.4everland.org/v1/37fa9972c1b1cd5fab542c7bdd4cde2f: chainId: Invalid API Key.
  • endpoints.omniatech.io/v1/matic/mainnet/public: no answer (HTTP 521)
  • polygon.lava.build: chainId: This endpoint has been discontinued.
  • rpc.owlracle.info/poly/70d38ce1826c4a60bb2a8e05a6c8b20f: no answer (HTTP 401)
  • polygon.therpc.io: chainId: fetch failed
  • rpc.poolz.finance/polygon: chainId: fetch failed
  • polygon-rpc.keccak.io: chainId: auth error - api key required. This method needs an account — register free and get an API
  • polygon.api.onfinality.io/public: chainId: rate limited
  • gateway.tenderly.co/public/polygon: chainId: rate limited
  • polygon-mainnet.gateway.tatum.io: chainId: rate limited

Test any endpoint yourself with the RPC tester. Our Polygon endpoint, limits and status: Polygon RPC, uptime history.