Summary
Solana RPC (Remote Procedure Call) is the standard interface that allows applications to interact with the Solana blockchain. Every transaction submission, account query, and data subscription flows through an RPC endpoint. Choosing the right RPC provider is critical for performance, reliability, and cost, especially as your application scales. This guide covers the fundamentals of Solana RPC, explains the differences between public and private endpoints, and provides actionable criteria for selecting a provider that meets your production needs.
In practice, the useful question is not just whether an endpoint exists. Teams should check Solana methods, devnet support, request patterns, and whether shared or dedicated access fits the workload. That turns the page from a definition into a decision tool: it helps you decide what to test first, what belongs in staging, and when a production workload may need stronger isolation or clearer request visibility. If you already know the network you need, open /networks/solana-devnet after using this checklist so you can test the endpoint against your real methods.
Key Takeaways
- Solana RPC is the gateway for applications to read state, send transactions, and subscribe to updates on the Solana blockchain.
- Public RPC endpoints (e.g., api.mainnet.solana.com) are free but rate-limited and unsuitable for production workloads.
- Private RPC providers offer dedicated or shared nodes with higher rate limits, better reliability, and lower latency.
- Key selection criteria include availability documents, geographic distribution, support for WebSocket subscriptions, and pricing model.
What is Solana RPC?
Solana RPC (Remote Procedure Call) is a JSON-RPC 2.0 API that allows clients to communicate with the Solana blockchain. It provides methods for querying account balances, retrieving block data, sending transactions, and subscribing to real-time events via WebSocket. Every dApp, wallet, or bot that interacts with Solana relies on an RPC endpoint.
The Solana Foundation maintains public endpoints for each cluster (mainnet, devnet, testnet), but these are shared infrastructure with rate limits and no support terms. For production applications, a private RPC provider is essential to ensure reliability and performance.
- HTTP methods: getAccountInfo, getBalance, sendTransaction, simulateTransaction, etc.
- WebSocket methods: accountSubscribe, logsSubscribe, programSubscribe, etc.
- State commitment levels: processed, confirmed, finalized.
Solana RPC decision checklist
Use this checklist to turn the Solana RPC question into a practical infrastructure decision instead of a generic provider comparison.
Start with the workflow you need to support, then verify the endpoint, method coverage, test environment, and next step before relying on it in production.
- List the exact RPC methods, chains, and environments your app will call.
- Test with the same request pattern your frontend, backend, bot, dashboard, or indexer will use.
- Check whether archive, trace, WebSocket, testnet, analytics, or dedicated-node access is actually required.
- Review pricing, usage visibility, and upgrade paths before moving sustained traffic.
| Criterion | What to check | Why it matters |
|---|---|---|
| Workload fit | Does the provider support the Solana RPC methods and environments your product depends on? | A provider that works for a quick read may still be a poor fit for wallets, trading systems, indexers, or release pipelines. |
| Operational visibility | Can the team see request volume, errors, limits, and usage patterns? | Visibility makes it easier to debug failed requests and plan capacity before users feel the problem. |
| Scaling path | Is there a clear path from shared RPC to higher-capacity plans or dedicated nodes? | The right starting point should not force a rebuild when traffic or reliability requirements increase. |
Public vs Private Solana RPC Endpoints
Public endpoints like https://api.mainnet.solana.com are free and easy to use for development and testing. However, they impose strict rate limits (e.g., 100 requests per 10 seconds per IP) and offer no documents on availability or latency. They are not suitable for production applications with real users.
Private RPC providers offer dedicated or shared nodes with higher rate limits, lower latency, and service-level agreements (SLAs). They often provide additional features such as archive data, WebSocket support, and geographic load balancing. Choosing a private provider is a standard practice for any serious Solana project.
- Public endpoints: free, rate-limited, no support terms, best for prototyping.
- Private endpoints: paid, scalable, reliable, with support and monitoring.
- OnFinality offers both shared and dedicated Solana RPC nodes across multiple clusters.
Key Criteria for Choosing a Solana RPC Provider
When evaluating Solana RPC providers, consider the following factors to ensure your application's performance and reliability:
| Criterion | What to check | Why it matters |
|---|---|---|
| support and monitoring options | Look for providers offering consistent availability availability documents. | Downtime directly impacts user experience and can lead to lost transactions or revenue. |
| Rate Limits | Understand the maximum requests per second (RPS) allowed on each plan. | Insufficient rate limits cause request throttling and application errors. |
| Geographic Distribution | Check if the provider has endpoints in multiple regions (e.g., US, EU, Asia). | Closer endpoints reduce latency and improve transaction submission success rates. |
| WebSocket Support | Ensure the provider supports persistent WebSocket connections for real-time subscriptions. | Many dApps rely on WebSocket for live updates on accounts, transactions, and programs. |
| Archive Data Access | Does the provider offer historical state access beyond the current slot? | Archive nodes are needed for analytics, backtesting, and certain dApp features. |
| Pricing Model | Compare pay-as-you-go, monthly subscriptions, and dedicated node pricing. | Choose a model that aligns with your traffic patterns and budget. |
How to Test and Monitor Solana RPC Performance
Before committing to a provider, run benchmarks using tools like solana-bench or custom scripts. Measure latency for common methods (getBalance, getLatestBlockhash, sendTransaction) and test WebSocket subscription stability. Monitor availability and response times over several days to identify any patterns.
After deployment, continue monitoring with application performance management (APM) tools. Set up alerts for high latency or error rates. Many providers, including OnFinality, offer dashboards and API metrics to help you track performance.
- Use the Solana CLI to test endpoints:
solana balance --url <endpoint>. - Simulate transaction load with custom scripts.
- Check WebSocket reconnection behavior under network interruptions.
Getting Started with OnFinality Solana RPC
OnFinality provides reliable Solana RPC endpoints for mainnet, devnet, and testnet. With both shared and dedicated node options, you can scale from development to production seamlessly. All endpoints support HTTP and WebSocket, and dedicated nodes include full archive access.
To get started, sign up for an OnFinality account, create an API key, and choose your preferred Solana network. You can also explore the dedicated node option for maximum performance and control.
- Instant API key generation.
- Support for mainnet, devnet, and testnet.
- Dedicated nodes with customizable configurations.
- 24/7 technical support and monitoring.
Frequently Asked Questions
What is the difference between Solana RPC and Solana JSON-RPC?
Solana RPC and Solana JSON-RPC refer to the same thing: the JSON-RPC 2.0 API that allows clients to interact with the Solana blockchain. The terms are used interchangeably.
Can I use the public Solana RPC endpoint for production?
No, public endpoints (e.g., api.mainnet.solana.com) are rate-limited and have no support terms. They are intended for development and testing only. For production, use a private RPC provider like OnFinality.
What are the rate limits for Solana public RPC?
The public mainnet endpoint typically allows 100 requests per 10 seconds per IP. This is insufficient for most production applications.
Does OnFinality support Solana WebSocket subscriptions?
Yes, OnFinality Solana RPC endpoints support both HTTP and WebSocket methods, including accountSubscribe, logsSubscribe, and programSubscribe.
How do I choose between a shared and dedicated Solana RPC node?
Choose a shared node for lower cost and moderate traffic. Choose a dedicated node for more predictable resource planning, high throughput, and full control. OnFinality offers both options.