BlockReq provides free public RPC endpoints for every supported network. No registration or API key required — perfect for testing, prototyping, and lightweight dApps.
Network Public URL Ethereum https://eth-mainnet.blockreq.com/v1/rpc/publicBSC https://bsc-mainnet.blockreq.com/v1/rpc/publicArbitrum https://arb-mainnet.blockreq.com/v1/rpc/publicBase https://base-mainnet.blockreq.com/v1/rpc/publicPolygon https://polygon-mainnet.blockreq.com/v1/rpc/public
Network Public URL ETH Sepolia https://eth-sepolia.blockreq.com/v1/rpc/publicETH Hoodi https://eth-hoodi.blockreq.com/v1/rpc/publicBSC Testnet https://bsc-testnet.blockreq.com/v1/rpc/publicARB Sepolia https://arb-sepolia.blockreq.com/v1/rpc/publicBase Sepolia https://base-sepolia.blockreq.com/v1/rpc/publicPolygon Amoy https://polygon-amoy.blockreq.com/v1/rpc/public
Network Public URL ETH Beacon https://eth-beacon.blockreq.com/v1/rpc/public
Limit Value Requests per second 5 per IP address Daily limit None Protocols HTTPS + WSS
Need higher limits? Create a free account and get 80M RU/month with 100 req/s.
curl -X POST https://eth-mainnet.blockreq.com/v1/rpc/public \
-H " Content-Type: application/json " \
-d ' {"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1} '
import { JsonRpcProvider } from " ethers " ;
const provider = new JsonRpcProvider ( " https://eth-mainnet.blockreq.com/v1/rpc/public " );
const blockNumber = await provider . getBlockNumber ();
console . log ( " Latest block: " , blockNumber );
w3 = Web3 ( Web3. HTTPProvider ( " https://eth-mainnet.blockreq.com/v1/rpc/public " ))
print ( " Latest block: " , w3.eth.block_number )
import { createPublicClient, http } from " viem " ;
import { mainnet } from " viem/chains " ;
const client = createPublicClient ( {
transport: http ( " https://eth-mainnet.blockreq.com/v1/rpc/public " ) ,
const blockNumber = await client . getBlockNumber ();
console . log ( " Latest block: " , blockNumber);
curl https://eth-beacon.blockreq.com/v1/rpc/public/eth/v1/node/version
# Get current finality checkpoints
curl https://eth-beacon.blockreq.com/v1/rpc/public/eth/v1/beacon/states/head/finality_checkpoints
You can use the public endpoint as a custom RPC in MetaMask:
Field Value Network Name Ethereum (BlockReq Public) RPC URL https://eth-mainnet.blockreq.com/v1/rpc/publicChain ID 1 Currency Symbol ETH Explorer https://etherscan.io
Rate limited to 5 requests/second per IP — exceeding this returns HTTP 429
No SLA — public endpoints are provided on a best-effort basis
No analytics — usage is not tracked in your dashboard
For production workloads, we recommend creating a private endpoint with higher rate limits and full analytics.