Rate limits and methods
RPC method classes, account-read units, disabled shared-plan methods, and plan limits.
rpc edge uses per-customer limits, not per-key credit math. A customer can have multiple API keys, but the plan limit is enforced at the customer level unless a specific custom contract says otherwise.
Base RPC limits
| Plan | Base JSON-RPC RPS | Notes |
|---|---|---|
| Free | 10 RPS | live reads, WebSockets, and transaction sending; no gRPC streams |
| Builder | 50 RPS | higher RPC/WebSocket limits and transaction sending; no gRPC streams |
| Trader | 150 RPS | live reads, simulations, sender path where enabled |
| Desk | 300 RPS | higher shared limit plus decoded shreds (SubscribeDeshred) |
| Custom / Enterprise | custom | dedicated limits and topology |
Account-read units
Large account responses can pressure memory, disk, and the validator fast path. On shared plans, account lookup calls use an account-read unit budget.
| Method | Unit accounting |
|---|---|
getAccountInfo | 1 unit |
getMultipleAccounts | 1 unit per requested account |
Production plan baselines:
| Plan | Account-read units |
|---|---|
| Free | 5 units/sec |
| Builder | 25 units/sec |
| Trader | 150 units/sec |
| Desk | 300 units/sec |
| Custom / Enterprise | custom |
Transaction sending
Transaction sending is intentionally available on every public plan. These limits are account-wide, not multiplied by the number of API keys.
| Plan | Transactions sent / sec |
|---|---|
| Free | 5 tx/s |
| Builder | 20 tx/s |
| Trader | 50 tx/s |
| Desk | 100 tx/s |
| Custom / Enterprise | 100 tx/s baseline, custom by agreement |
getMultipleAccounts follows the normal Solana maximum of 100 accounts per request, but large
batches are still weighted by account count and response size.
Available on shared plans
getHealthgetSlotgetLatestBlockhashgetBalancegetAccountInfogetMultipleAccountssimulateTransaction, with separate safety limitssendTransactionand related send methods where transaction sender access is enabledgetLeaderSlots, the rpc edge leader-slot extension for route-aware sender planning
Disabled or restricted on shared plans
These method families are not part of the shared streaming product:
| Family | Examples | Status |
|---|---|---|
| Historical/archive | getBlock, getTransaction, getSignaturesForAddress | disabled on shared plans |
| Broad scans | getProgramAccounts, getLargestAccounts | disabled on shared plans |
| Token-owner/delegate scans | getTokenAccountsByOwner, getTokenAccountsByDelegate | disabled unless explicitly enabled |
| Admin/write controls | setLogFilter, setIdentity, validator admin methods | disabled |
| Airdrops | requestAirdrop | disabled on mainnet |
The future path for heavy account and history calls is a dedicated read layer, provider proxy, or customer-specific infrastructure. The shared product stays focused on streaming and live trading reads.