How to get an Ethereum RPC endpoint in 2026

TL;DR
Public Ethereum RPC endpoint options are ideal for prototyping, but most production applications quickly outgrow them. Shared infrastructure means rate limits during peak traffic, dropped WebSocket sessions, and 429 errors precisely when reliability matters most. In this guide, you’ll learn when a public Ethereum RPC endpoint is sufficient, and when to upgrade to managed infrastructure.
What is an Ethereum RPC endpoint?
An RPC (Remote Procedure Call) endpoint is the URL your application uses to communicate with an Ethereum node. Every interaction with Ethereum—reading balances, calling smart contracts, sending transactions—goes through JSON-RPC methods like eth_call, eth_getBalance, and eth_sendRawTransaction.
Without an RPC endpoint, your app cannot read chain state or send transactions. Because RPC sits between your app and Ethereum, endpoint reliability directly affects user experience and transaction success.
Ethereum RPC endpoint options
Think of RPC choices as a maturity curve: public for early testing, managed for production, self-hosted for maximum control.
Public Ethereum RPC endpoint
Best for: Development, learning, prototyping, low-traffic testing
Public RPC endpoints are shared infrastructure run by the community. They’re free, require no authentication, and work immediately. For Sepolia testnet, https://rpc.sepolia.org provides community-maintained access.
The reality:
- Rate limits: Shared endpoints throttle aggressive usage. When you hit limits, requests fail with 429 errors.
- Unpredictable performance: Response times vary based on total load from all users. During network congestion, latency spikes.
- No SLA: Community endpoints can disappear, change URLs, or go offline without notice.
- Limited features: Archive data, debug traces, and advanced RPC methods often unavailable.
⚠️ Important: There is no official Ethereum Foundation public RPC for mainnet. Any “free mainnet RPC” you find online is community-run with unknown reliability guarantees.
Private-managed Ethereum RPC endpoint
Best for: Production applications, high-traffic dapps, businesses requiring uptime guarantees
Managed RPC providers (like Chainstack) operate dedicated or isolated infrastructure with authentication, monitoring, and support. You get your own endpoint with defined capacity.
What you gain:
- Predictable performance: Dedicated or better-isolated capacity means your traffic doesn’t compete with others.
- Higher rate limits: API keys with defined request budgets. No surprise 429 errors during traffic spikes.
- SLA-backed uptime: Provider guarantees (typically 99.9% or higher). When downtime happens, you know who to contact.
- Archive & debug access: Full historical state queries and transaction traces without maintaining your own archive node.
- WebSocket stability: Persistent connections for real-time event monitoring without constant reconnection.
The trade-off: Cost. You pay for reliability, but you eliminate the hidden costs of downtime, debugging rate limit issues, and lost users.
Chainstack Self-Hosted
Best for: Data sovereignty, compliance requirements, enterprise security policies
Chainstack Self-Hosted deploys Ethereum nodes directly in your cloud infrastructure (AWS, GCP, Azure, etc.), while Chainstack handles all the operational complexity. This gives you data sovereignty without the operational burden of running nodes yourself.
How it works:
- Your infrastructure: Nodes run in your account. Data never leaves your network.
- Chainstack manages: Deployment, monitoring, upgrades, scaling, and troubleshooting. You get enterprise-grade node operations without hiring a DevOps team.
- Full control: Your nodes, your data, your compliance requirements met. Perfect for regulated industries or enterprises with strict data governance policies.
The key difference: This isn’t “run Geth yourself.” It’s “Chainstack runs it for you, in your infrastructure.” You get the benefits of data sovereignty and managed operations—no choosing between them.
Typical use cases:
- Financial institutions with data residency requirements
- Enterprises that cannot send data to third-party infrastructure
- Teams that need SOC 2 / ISO compliance with node access in their own VPC
- Organizations requiring audit trails showing data never left their network
Learn more: Deploy Chainstack Self-Hosted Ethereum nodes
Quick comparison: which option fits your needs?
| Type | Reliability | Cost | Best For |
|---|---|---|---|
| Public RPC | Shared, variable | Free | Development, prototyping |
| Private Managed | SLA-backed, predictable | Pay-per-use or subscription | Production applications |
| Chainstack Self-Hosted | Data sovereignty + managed ops | Your infrastructure costs + Chainstack fee | Compliance, data residency, enterprise |
HTTPS vs WebSockets
Transport protocol choice affects connection patterns and suitability for different application types. HTTPS and WebSockets provide different trade-offs in connection model and responsiveness.
| HTTPS | WebSockets |
|---|---|
| Request-response model | Persistent connection |
| Each query requires a new connection | Lower latency for frequent queries |
| Suitable for: intermittent queries, simple integrations | Suitable for: real-time monitoring, event-driven applications |
Which Ethereum network should you use in 2026?
- Ethereum Mainnet: Production applications with real economic value. Every transaction costs real ETH in gas fees. Use mainnet only when your smart contracts are audited and thoroughly tested.
- Sepolia Testnet: The recommended testnet for dapp and smart contract development. Sepolia is long-term supported and has a stable validator set. Use Sepolia for integration testing and staging environments. Chain ID: 0xaa36a7 (11155111)
- Hoodi Testnet: Designed for validator and staking-provider testing. If you build validator tooling or staking infrastructure, use Hoodi. For most dapps, use Sepolia.
💡 Need testnet ETH? Chainstack provides both Sepolia and Hoodi faucets, so you can fund test wallets quickly during development and QA.
How to get a private Ethereum RPC endpoint using Chainstack

- Log in to the Chainstack console (or sign up if needed).
- Create a new project.
- Select Ethereum as the blockchain.
- Choose the network:
- Ethereum Mainnet for production
- Ethereum Sepolia or Hoodi Testnet for testing
- Deploy a managed RPC node.
- Open the project dashboard and copy the generated HTTPS and WebSocket RPC endpoints.
Test your endpoint in 10 seconds
curl -X POST "$ETH_RPC_URL" \ -H "Content-Type: application/json" \ --data '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}'Expected:
- Mainnet returns chain ID 0x1
- Sepolia returns chain ID 0xaa36a7 (11155111)
Connect from your application
- Using ethers.js:
import { JsonRpcProvider } from "ethers";
const provider = new JsonRpcProvider(process.env.ETH_RPC_URL);
const blockNumber = await provider.getBlockNumber();
console.log(`Current block: ${blockNumber}`);- Using web3.js:
import { Web3 } from "web3";
const web3 = new Web3(process.env.ETH_RPC_URL);
const blockNumber = await web3.eth.getBlockNumber();
console.log(`Current block: ${blockNumber}`);Using Chainlist

Chainlist can be used to add Ethereum to wallets (for example, Rabby, Rainbow, or MetaMask), but it does not provide RPC infrastructure. It typically relies on public or community RPC endpoints, so for production usage any RPC URL obtained via Chainlist should be replaced with a managed RPC endpoint such as Chainstack.
Production readiness checklist
Before launching your application, verify these infrastructure requirements:
- Fallback provider configured: Have a backup RPC endpoint. If your primary fails, your app should automatically retry with a secondary provider.
- Request timeouts set: Configure reasonable timeouts (5-10s for standard calls, 30s+ for archive queries). Don’t let requests hang indefinitely.
- Retry logic implemented: Transient failures happen. Implement exponential backoff for failed requests.
- Chain ID validated: Always verify you’re connected to the expected network. Accidentally using testnet in production causes obvious problems.
- Monitoring enabled: Track RPC response times, error rates, and request volumes. Set up alerts for degraded performance.
- API keys secured: Never commit RPC URLs to Git. Use environment variables or secret management tools.
Troubleshooting common issues
| Issue | Likely Cause | How to Fix |
|---|---|---|
429 Too Many Requests | You are exceeding your RPC plan limits or polling too aggressively. | Add caching, reduce polling frequency, batch requests where possible, and add a fallback RPC provider. |
Wrong chain ID (eth_chainId) | Your app is pointed to the wrong network endpoint (Mainnet vs Sepolia). | Verify eth_chainId on startup and fail fast if it doesn’t match expected (0x1 Mainnet, 0xaa36a7 Sepolia). |
Request timeouts (ETIMEDOUT) | Endpoint latency spikes, poor region routing, or temporary provider load. | Add retries with exponential backoff, set realistic timeouts, and use a region closer to your backend. |
| WebSocket disconnects | Idle timeouts or unstable long-lived connections. | Implement auto-reconnect with jitter, heartbeat/ping logic, and backfill missed events using eth_getLogs. |
| Transactions stuck in pending | Gas fee too low or nonce management issues under load. | Use dynamic fee estimation, monitor pending nonce, and support replacement/cancel transaction strategy. |
| Historical queries fail | You’re using a full node endpoint for archive-level queries. | Switch to an archive-capable RPC endpoint for deep historical state or wide-range analytics queries. |
Conclusion
Getting an Ethereum RPC endpoint in 2026 is straightforward: choose Sepolia for testing, Mainnet for production, and prefer managed private RPC over shared public endpoints when reliability matters. Use HTTPS for standard calls and WSS for real-time subscriptions. Before launch, validate chain ID, set retries/timeouts, and add fallback providers. That gives you a stable RPC layer you can scale with as traffic grows.
The expensive mistake is not paying for RPC. It’s discovering too late that your current endpoint cannot support your traffic profile.
Deploy your Ethereum RPC node on Chainstack and get enterprise-grade infrastructure in under 60 seconds.
FAQ
Yes. Both work with standard JSON-RPC providers.
No. Most teams start with managed RPC providers and only move to self-hosting when they need maximum decentralization or have specialized requirements. Running nodes is operationally complex and expensive.
Almost never. Public endpoints can work for development and experimentation, but production applications require predictable uptime backed by SLAs, higher rate limits to handle real traffic, responsive support when issues arise, and archive access for historical queries. The hidden cost of “free” infrastructure typically appears during peak traffic, when downtime and rate limits directly impact users and revenue.
Use Sepolia for dapp and smart contract development. Use Hoodi only if you’re building validator tooling or testing staking infrastructure. For 95% of developers, Sepolia is the right choice.
Managed providers typically offer stronger uptime guarantees, higher throughput tiers, and support channels. Public endpoints are still valuable for development, but they are best-effort by design.
Migrate without downtime by using a fallback provider pattern. Set your Chainstack endpoint as the primary RPC, keep your existing public endpoint as a secondary fallback, and run both in parallel for 24–48 hours while monitoring latency and error rates. Once performance is stable and consistent, remove the public fallback. Most modern Web3 libraries support this setup natively through FallbackProvider or equivalent multi-endpoint configurations.
Track latency (p95/p99), error rate, rate-limit responses (429), WebSocket reconnect frequency, and chain sync/block lag. Alert on threshold breaches before users are affected.




