Base is Coinbase's OP Stack L2 and one of the fastest-growing EVM chains. If you're building on Base or need a reliable RPC for wallet integrations and indexers, this guide has your endpoint URLs, code snippets, and everything you need to connect in under a minute.
Base RPC URLs
Public endpoint (no sign-up)
https://rpc.nodeflare.app/base/publicNo API key, no account. Works immediately. Rate-limited per IP (2 requests/second) — suitable for development and one-off queries.
Free keyed endpoint
https://rpc.nodeflare.app/base/v1/YOUR_KEYGet a free key at nodeflare.app — no credit card required. The free tier includes:
- 2,000,000 compute units/month — no credit card
- Up to 10 requests/second
eth_getLogs,trace_*,debug_*— heavy methods available on the free tier- WebSocket for real-time subscriptions
- Multi-region nodes (US-East, US-West, EU, Asia) with automatic failover
Quick test
curl https://rpc.nodeflare.app/base/public \
-X POST \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'Expected response:
{"jsonrpc":"2.0","id":1,"result":"0x..."}Connect with ethers.js
import { ethers } from 'ethers';
const provider = new ethers.JsonRpcProvider(
'https://rpc.nodeflare.app/base/v1/YOUR_KEY'
);
const block = await provider.getBlockNumber();
console.log('Base block:', block);Connect with viem
import { createPublicClient, http } from 'viem';
import { base } from 'viem/chains';
const client = createPublicClient({
chain: base,
transport: http('https://rpc.nodeflare.app/base/v1/YOUR_KEY'),
});
const block = await client.getBlockNumber();Connect with web3.py
from web3 import Web3
w3 = Web3(Web3.HTTPProvider('https://rpc.nodeflare.app/base/v1/YOUR_KEY'))
print(w3.eth.block_number)WebSocket for real-time subscriptions
wss://rpc.nodeflare.app/base/ws/v1/YOUR_KEYconst ws = new WebSocket('wss://rpc.nodeflare.app/base/ws/v1/YOUR_KEY');
ws.onopen = () => ws.send(JSON.stringify({
jsonrpc: '2.0', id: 1,
method: 'eth_subscribe',
params: ['newHeads'],
}));
ws.onmessage = (e) => console.log(JSON.parse(e.data));Base chain details
| Property | Value |
|---|---|
| Chain ID | 8453 |
| Native token | ETH |
| Block time | ~2 seconds |
| Stack | OP Stack (Optimistic Rollup) |
| L1 | Ethereum |
| Explorer | basescan.org |
| Public RPC | https://rpc.nodeflare.app/base/public |
| Keyed RPC | https://rpc.nodeflare.app/base/v1/YOUR_KEY |
| WebSocket | wss://rpc.nodeflare.app/base/ws/v1/YOUR_KEY |
What is Base?
Base is an OP Stack L2 launched by Coinbase. It's designed for consumer crypto apps — low fees, high throughput, and full EVM compatibility. Because it's backed by Coinbase and inherits Ethereum's security via optimistic fraud proofs, it's become a major destination for DeFi protocols, onchain social apps, and NFT platforms.
Key properties:
- EVM-compatible — all Ethereum tooling works: ethers.js, viem, Hardhat, Foundry
- Low fees — typical transactions cost a fraction of a cent
- High throughput — designed for consumer-scale workloads
- Coinbase integration — easy onboarding via Coinbase Wallet and Coinbase Pay
Why use a keyed endpoint instead of the public one?
The public endpoint is shared across all users on the same IP range. At peak hours you may hit rate limits or see increased latency. A free NodeFlare key gives you:
- An isolated path — your traffic doesn't compete with other users
eth_getLogssupport — essential for indexers and event listeners- 10× higher rate limits vs the public endpoint
- WebSocket for
eth_subscribeand real-time block streaming
At 2M compute units/month on the free tier, a typical DeFi app or indexer running a few hundred queries per minute stays well within the limit. See the rate limits reference for per-method compute unit weights.
Add Base to MetaMask
To add Base with NodeFlare's endpoint in MetaMask:
- Open MetaMask → network selector → Add network → Add a network manually.
- Fill in:
| Field | Value |
|---|---|
| Network name | Base |
| New RPC URL | https://rpc.nodeflare.app/base/public |
| Chain ID | 8453 |
| Currency symbol | ETH |
| Block explorer URL | https://basescan.org |
- Click Save.
For a keyed endpoint, swap /public for /v1/YOUR_KEY after signing up.
Getting started
- Go to nodeflare.app — no credit card required
- Your Base endpoint is ready immediately:
https://rpc.nodeflare.app/base/v1/YOUR_KEY - Swap your existing RPC URL — nothing else changes in your code