Summary
Solana RPC providers differ less in the base JSON-RPC endpoint they expose and more in the advanced capabilities layered on top: archive history, WebSocket subscriptions, priority fee and transaction landing support, dedicated node capacity, and observability. This article lists the provider categories you will encounter and explains which advanced features matter for trading bots, indexers, wallets, and analytics pipelines. It also shows how to verify those features yourself before you commit to a provider.
Solana's JSON-RPC surface is standardized, so almost every provider will answer getLatestBlockhash or getAccountInfo. The real differentiator is what sits around that endpoint: historical data depth, subscription transports, transaction landing helpers, dedicated capacity, and the tooling you need to debug a failed transaction at 2am. This article lists the provider categories that offer those advanced features and gives you a way to test each claim yourself.
What "advanced" means for a Solana RPC provider
Before comparing names, agree on a definition. For Solana specifically, advanced provider features usually fall into these buckets:
- Historical depth. Full archive state so you can query old slots, signatures, and account states without hitting a pruning wall.
- Subscription transports. WebSocket support for
accountSubscribe,logsSubscribe,slotSubscribe, andsignatureSubscriberather than HTTP polling only. - Transaction landing support. Priority fee estimation,
sendTransactionwith skip-preflight options, and sometimes Jito bundle endpoints. - Dedicated capacity. A node or cluster reserved for your workload instead of shared rate-limited pools.
- Observability. Request-level metrics, logs, and the ability to see why a call failed.
- Extended APIs. Token, NFT, or DAS-style indexed endpoints layered on top of raw RPC.
A provider can be excellent at the base endpoint and still offer none of the above. That is the distinction this list is about.
Provider categories that ship advanced features
1. Managed RPC platforms with archive and WebSocket tiers
This is the most common category. Providers here run Solana nodes and expose HTTP plus WebSocket endpoints, often with an archive tier you enable per project. OnFinality fits here: it offers a Solana RPC API over both HTTP and WebSocket, and you can move up to dedicated nodes when shared throughput is no longer enough. The advanced features to look for in this category are archive access, WebSocket subscriptions, and a documented path from shared to dedicated infrastructure.
2. Dedicated node and node-as-a-service providers
Some teams skip shared endpoints entirely and rent a Solana node or cluster. This is the right category when you need predictable throughput, custom plugins, or a private endpoint that only your services can reach. The advanced features here are capacity guarantees, your choice of node version, and direct access to logs and metrics. OnFinality's dedicated node offering is designed for this pattern.
3. Indexed API providers
A separate group sells indexed data rather than raw RPC: token balances, NFT metadata, transaction history in a queryable form. These are useful for analytics and wallet UIs, but they are not a drop-in replacement for a Solana RPC endpoint. Treat them as a complement, not a substitute.
4. Public and community endpoints
Public endpoints are fine for a quick test or a hackathon prototype. They are not where you find advanced features, and they are not built for production traffic. Use them to confirm your client code works, then move on.
Quick recommendation by workload
| Your workload | Feature you actually need | Provider category to start with |
|---|---|---|
| Wallet or dApp front end | Reliable HTTP RPC + WebSocket for account changes | Managed RPC platform |
| Trading bot | Low-latency send, priority fee data, dedicated capacity | Dedicated node or managed platform with dedicated tier |
| Indexer or analytics pipeline | Archive history, getSignaturesForAddress, getBlock on old slots | Managed platform with archive tier |
| NFT or token dashboard | Indexed token/NFT APIs plus base RPC | Indexed API provider + managed RPC |
| Protocol team running own infra | Full node control, custom plugins | Node-as-a-service / dedicated node |
If you are unsure, start with a managed platform that can scale into dedicated capacity, so you do not have to migrate providers later.
How to verify advanced features before you commit
Marketing pages are not proof. Run these checks against any candidate endpoint.
Check 1: Does WebSocket actually work?
// Node.js example using the ws package
import WebSocket from "ws";
const ws = new WebSocket("wss://solana.api.onfinality.io/public-ws");
ws.on("open", () => {
ws.send(
JSON.stringify({
jsonrpc: "2.0",
id: 1,
method: "slotSubscribe",
params: [],
})
);
});
ws.on("message", (data) => {
console.log("slot notification:", data.toString());
});
If you receive slot notifications, the subscription transport is live. If the connection opens but no notifications arrive, the provider may be proxying WebSocket without real subscription support.
Check 2: Is history actually archived?
Query a signature or block from well in the past. A pruned node will return an error or null for old slots.
curl https://solana.api.onfinality.io/public \
-X POST \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "getBlock",
"params": [<OLD_SLOT>, {"encoding": "json", "maxSupportedTransactionVersion": 0}]
}'
Replace <OLD_SLOT> with a slot you know is old. If it returns block data, archive depth is real.
Check 3: Can you see your own traffic?
Ask for a dashboard or metrics endpoint. Providers that offer advanced features usually expose request counts, error rates, and latency per method. If there is no visibility, you will be debugging blind.
Check 4: What happens at the rate limit?
Send a burst of requests and watch the response. A provider that returns clean 429 responses with headers is easier to work with than one that silently drops calls.
Advanced features worth paying for
Not every advanced feature earns its cost. Here is a short list of the ones that usually do, and the ones that usually do not.
| Feature | Worth it when | Often not worth it when |
|---|---|---|
| Archive history | You run indexers, analytics, or compliance queries | You only read current account state |
| WebSocket subscriptions | You need real-time account or slot updates | You poll on a slow schedule anyway |
| Dedicated capacity | Traffic is bursty or latency-sensitive | You are pre-launch with low traffic |
| Priority fee APIs | You send transactions and care about landing | You only read data |
| Indexed token/NFT APIs | You build wallet or marketplace UIs | You only need raw chain data |
Endpoint and chain settings for Solana
When you configure a client, keep the network settings consistent with the endpoint you use. For Solana mainnet, the native currency is SOL with 9 decimals, and the standard block explorer is explorer.solana.com. OnFinality exposes a public HTTP endpoint at https://solana.api.onfinality.io/public and a WebSocket endpoint at wss://solana.api.onfinality.io/public-ws for evaluation. For production, use a project-scoped endpoint from your Solana RPC API dashboard so traffic is attributed and rate limits are predictable.
If you are testing against devnet, use the Solana Devnet network page for the matching configuration rather than mixing mainnet and devnet URLs in the same client.
Common pitfalls when picking a Solana RPC provider
- Assuming WebSocket support from an HTTP endpoint. They are separate transports. Test both.
- Confusing indexed APIs with RPC. A token API is not a Solana node. You still need an RPC endpoint for on-chain reads and sends.
- Ignoring archive depth until you need it. Migrating to an archive provider mid-project is more disruptive than starting with one.
- Overlooking failover. Any single endpoint can have a bad day. Configure a secondary provider or a dedicated node as backup.
- Not measuring. Without request-level metrics you cannot tell whether a provider is slow or your client is.
Key Takeaways
- Solana RPC is standardized; advanced features are what separate providers.
- The features that matter most are archive history, WebSocket subscriptions, transaction landing support, dedicated capacity, and observability.
- Provider categories to consider: managed RPC platforms, dedicated node providers, indexed API providers, and public endpoints (for testing only).
- Verify claims with a WebSocket subscription test, an old-slot
getBlockcall, and a burst test before committing. - OnFinality offers a Solana RPC API over HTTP and WebSocket, with a path to dedicated nodes when shared capacity is not enough.
- Always keep a failover endpoint configured for production.
Frequently Asked Questions
Do all Solana RPC providers support WebSocket?
No. Many expose HTTP only. If you need accountSubscribe or slotSubscribe, confirm WebSocket support explicitly and test it.
What is an archive Solana RPC node? It is a node that retains historical ledger data so you can query old slots, blocks, and signatures. Non-archive nodes prune this data and will fail historical queries.
Can I use a public Solana RPC endpoint in production? Public endpoints are best for testing and prototypes. For production, use a project-scoped endpoint from a managed provider or a dedicated node.
How do I compare Solana RPC providers fairly? Test the same methods against each candidate, measure latency and error rates under your own traffic pattern, and check which advanced features you actually use. See how to choose an RPC provider for a structured approach.
Does OnFinality offer dedicated Solana nodes? Yes. OnFinality provides a Solana RPC API and dedicated node options. See RPC pricing and supported RPC networks for current details.
Next steps
Pick one workload, list the advanced features it needs, and test two or three providers against that list. If you want a starting point, review the Solana RPC API page, check RPC pricing, and compare supported RPC networks before you commit.