> ## Documentation Index
> Fetch the complete documentation index at: https://docs.chainstack.com/llms.txt
> Use this file to discover all available pages before exploring further.

<AgentInstructions>

## Submitting Feedback

If you encounter incorrect, outdated, or confusing documentation on this page, submit feedback:

POST https://docs.chainstack.com/feedback

```json
{
  "path": "/docs/limits",
  "feedback": "Description of the issue"
}
```

Only submit feedback when you have something specific and actionable to report.

</AgentInstructions>

# Throughput guidelines

> View Chainstack platform limits for node deployments, API requests, concurrent connections, and resource quotas across different subscription plan tiers.

## Rate limits

### Solana-specific

* Solana Mainnet:
  * Developer plan: 5 requests per second (RPS)
  * Growth plan: 50 requests per second (RPS)
* Solana Devnet:
  * Developer plan: 25 requests per second (RPS)
  * Growth plan: 250 requests per second (RPS)

### Arbitrum-specific

* Arbitrum Mainnet: `debug_traceBlockByNumber` 20 RPS on all plans

### BNB Smart Chain-specific

<Warning>
  **BSC limitation**: On Binance Smart Chain, `eth_getProof` currently only works with the `"latest"`, `"earliest",` `"safe"`, `"finalized"`, `"pending"` block tags. Using specific block numbers will result in an error. This limitation will be addressed in a future update.
</Warning>

### Cronos-specific

* Cronos Mainnet archive: `debug_traceBlockByNumber` 10 RPS on all plans

### All other protocols

For global plan RPS limits across all other protocols, see [Requests per second (RPS) plan limits](/docs/rps-plan-limits).

## EVM Range limits

For `eth_newFilter` requests, Developer subscription plan users get capped at 10,000 blocks per request.

For the `eth_getLogs`, the caps are:

* Developer plan — 100 blocks
* Growth plan — 10,000 blocks
* Pro plan — 10,000 blocks
* Business plan — 10,000 blocks
* Enterprise — 10,000 blocks. Customization available on request.

<Info>
  Learn more about `eth_getLogs` limits by reading [Understanding eth\_getLogs limitations](/docs/understanding-eth-getlogs-limitations).
</Info>

For users on the Developer subscription plan, Chainstack applies a specific range limit for certain requests.

This limit is designed to optimize the performance and resource allocation for our users on this plan.

## EVM disabled debug methods

The following debug methods are disabled on EVM chains:

* `debug_executionWitness`
* `debug_executionWitnessByBlockHash`
* `debug_executePayload`

## Custom tracers on EVMs

Custom JavaScript tracers are available as customized solutions on the [Enterprise plan](https://chainstack.com/pricing/) on [dedicated nodes](/docs/dedicated-node).

## Ethereum `eth_simulateV1` supports only full node

Running [eth\_simulateV1 | Ethereum](/reference/ethereum-simulatev1) will yield only a full node response—i.e. the data from the latest 128 blocks. Archive data is not supported for this call and the node will respond with `missing trie node`.

## Fantom method limits

The following limits are applied on all subscription plans:

* `debug_traceBlockByNumber`: 5 RPS
* `debug_traceBlockByHash`: 5 RPS

## Solana method limits

The following per-method RPS limits apply identically across all regions:

| Method                    | RPS                                                           |
| ------------------------- | ------------------------------------------------------------- |
| `getBlockTime`            | 500                                                           |
| `getBlock`                | 400                                                           |
| `getTokenSupply`          | 300                                                           |
| `getTokenAccountsByOwner` | 80                                                            |
| `getSupply`               | 2                                                             |
| `getLargestAccounts`      | 0 — available on [Dedicated Nodes](/docs/dedicated-node) only |
| `getTokenLargestAccounts` | 0 — disabled                                                  |

[`getProgramAccounts`](/reference/solana-getprogramaccounts) — unfiltered requests to large programs are blocked; always use `dataSize` or `memcmp` filters:

* Chainstack Global Network `global1` RPS: 3
* Chainstack Cloud London `lon1` RPS: 10
* Chainstack Cloud New York City `nyc1` RPS: 3

<Note>
  The `getConfirmedBlock` method was removed in Agave 2.0 and returns `Method not found` on current validators. Use [`getBlock`](/reference/solana-getblock) instead.
</Note>

Architectural limits (set by Solana, not Chainstack):

* `getBlocks`: 500,000 blocks range — [Solana architecture limit](https://solana.com/docs/rpc/http/getblocks).
* `getBlocksWithLimit`: 500,000 blocks range — [Solana architecture limit](https://solana.com/docs/rpc/http/getblockswithlimit).

## Solana accounts excluded from indexing

The following Solana accounts are excluded from the `program-id` secondary index and cannot be queried with [`getProgramAccounts`](/reference/solana-getprogramaccounts). Use [`getTokenAccountsByOwner`](/reference/solana-gettokenaccountsbyowner) instead:

* `TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA` — SPL Token Program
* `kinXdEcpDQeHPEuQnqmUgtYykqKGVFq6CeVX5iAHJq6` — Kin

## Solana method availability

The following methods are available only on the paid plans:

* `getProgramAccounts`
* `getLargestAccounts` — this method is available only on [Dedicated Nodes](/docs/dedicated-node).
* `getSupply`
* `getTokenAccountsByOwner`

## Solana archive methods availability

While most methods are supported on Solana [Global Nodes](/docs/global-elastic-node), only the following methods can fetch archive data:

* `getSignaturesForAddress`
* `getTransaction`
* `getBlock`
* `getBlocks`
* `getBlockHeight`
* `getBlockTime`
* `getBlocksWithLimit`

Note that this is only true for mainnet as there are no Solana archive nodes for Devnet.
