# Compute Unit Costs

> A breakdown of Alchemy's compute unit costs per method, chain, and product.

> For the complete documentation index, see [llms.txt](/docs/llms.txt).

<Tip title="Don't have an API key?" icon="star">
  Unlock millions of requests and free archive data on all chains. [Get started for free](https://dashboard.alchemy.com/signup)
</Tip>

## What are Compute Units and Throughput Compute Units?

For more details, check out the [Compute Units](/docs/reference/compute-units#what-are-compute-units) section and the [Throughput Compute Units](/docs/reference/compute-units#what-are-throughput-compute-units) section.

# EVM: Standard JSON-RPC Methods

| Method                                   | CU                          | Throughput CU |
| ---------------------------------------- | --------------------------- | ------------- |
| net\_version                             | 0                           |               |
| eth\_chainId                             | 0                           |               |
| eth\_syncing                             | 0                           |               |
| eth\_protocolVersion                     | 0                           |               |
| net\_listening                           | 0                           |               |
| eth\_uninstallFilter                     | 10                          |               |
| eth\_accounts                            | 10                          |               |
| eth\_blockNumber                         | 10                          |               |
| eth\_subscribe                           | 10                          |               |
| eth\_unsubscribe                         | 10                          |               |
| eth\_feeHistory                          | 10                          |               |
| eth\_baseFee                             | 10                          |               |
| eth\_maxPriorityFeePerGas                | 10                          |               |
| eth\_blobBaseFee                         | 10                          |               |
| eth\_createAccessList                    | 10                          |               |
| eth\_getTransactionReceipt               | 20                          |               |
| eth\_getUncleByBlockHashAndIndex         | 20                          |               |
| eth\_getUncleByBlockNumberAndIndex       | 20                          |               |
| eth\_getTransactionByBlockHashAndIndex   | 20                          |               |
| eth\_getTransactionByBlockNumberAndIndex | 20                          |               |
| eth\_getUncleCountByBlockHash            | 20                          |               |
| eth\_getUncleCountByBlockNumber          | 20                          |               |
| web3\_clientVersion                      | 20                          |               |
| web3\_sha3                               | 20                          |               |
| eth\_getBlockByNumber                    | 20                          |               |
| eth\_getStorageAt                        | 20                          |               |
| eth\_getTransactionByHash                | 20                          |               |
| eth\_getRawTransactionByHash             | 20                          |               |
| eth\_gasPrice                            | 20                          |               |
| eth\_getBalance                          | 20                          |               |
| eth\_getCode                             | 20                          |               |
| eth\_getBlobSidecars                     | 20                          |               |
| eth\_getFinalizedHeader                  | 20                          |               |
| eth\_getFilterChanges                    | 20                          |               |
| eth\_newBlockFilter                      | 20                          |               |
| eth\_newFilter                           | 20                          |               |
| eth\_simulateV1                          | 40                          |               |
| eth\_newPendingTransactionFilter         | 20                          |               |
| eth\_getBlockTransactionCountByHash      | 20                          |               |
| eth\_getBlockTransactionCountByNumber    | 20                          |               |
| eth\_getProof                            | 20                          |               |
| eth\_getBlockByHash                      | 20                          |               |
| eth\_getAccount                          | 20                          |               |
| eth\_getRootHash                         | 20                          |               |
| eth\_fillTransaction                     | 20                          |               |
| erigon\_forks                            | 20                          |               |
| erigon\_getHeaderByHash                  | 20                          |               |
| erigon\_getHeaderByNumber                | 20                          |               |
| erigon\_getLogsByHash                    | 20                          |               |
| erigon\_issuance                         | 20                          |               |
| eth\_getTransactionCount                 | 20                          |               |
| eth\_getTdByNumber                        | 20                          |               |
| eth\_call                                | 26                          |               |
| eth\_callBundle                          | 40                          |               |
| eth\_callMany                            | 20                          |               |
| eth\_getAccountInfo                      | 60                          |               |
| eth\_getFilterLogs                       | 60                          |               |
| eth\_getLogs                             | 60                          |               |
| eth\_estimateGas                         | 20                          |               |
| eth\_sendRawTransaction                  | 40                          | 250           |
| eth\_sendRawTransactionSync              | 40                          | 250           |
| eth\_getBlockReceipts                    | 20                          | 500           |
| eth\_submitWork                          | 20                          |               |
| batch                                    | CU of method # times called |               |

* To view the batch request breakdown in the Alchemy Dashboard, click on "raw request"

# Solana: Standard JSON-RPC Methods

| Method                            | CU                          | Throughput CU |
| --------------------------------- | --------------------------- | ------------- |
| getLeaderSchedule                 | 20                          |               |
| requestAirdrop                    | 20                          |               |
| getVoteAccounts                   | 20                          |               |
| getBlockCommitment                | 20                          |               |
| getBlocksWithLimit                | 20                          |               |
| getHealth                         | 20                          |               |
| getIdentity                       | 20                          |               |
| getLatestBlockhash                | 20                          |               |
| getSlot                           | 20                          |               |
| getInflationRate                  | 20                          |               |
| getMaxRetransmitSlot              | 20                          |               |
| getRecentPerformanceSamples       | 20                          |               |
| getRecentPrioritizationFees       | 10                          |               |
| getEpochInfo                      | 20                          |               |
| getTokenAccountBalance            | 20                          |               |
| getBlockTime                      | 20                          |               |
| getHighestSnapshotSlot            | 20                          |               |
| sendTransaction                   | 20                          |               |
| getEpochSchedule                  | 20                          |               |
| getStakeActivation                | 20                          |               |
| getMaxShredInsertSlot             | 20                          |               |
| getVersion                        | 20                          |               |
| isBlockhashValid                  | 20                          |               |
| getAccountInfo                    | 10                          |               |
| getFeeForMessage                  | 20                          |               |
| getTokenLargestAccounts           | 20                          |               |
| getInflationGovernor              | 20                          |               |
| getSlotLeader                     | 20                          |               |
| getMultipleAccounts               | 20                          |               |
| minimumLedgerSlot                 | 20                          |               |
| getBlockHeight                    | 20                          |               |
| simulateTransaction               | 20                          |               |
| simulateBundle                    | 20                          |               |
| getSignatureStatuses              | 20                          |               |
| getBlocks                         | 10                          |               |
| getTokenAccountsByOwner           | 10                          |               |
| getMinimumBalanceForRentExemption | 10                          |               |
| getBalance                        | 10                          |               |
| getGenesisHash                    | 10                          |               |
| getBlockProduction                | 10                          |               |
| getTokenSupply                    | 20                          |               |
| getTransactionCount               | 20                          |               |
| getSlotLeaders                    | 20                          |               |
| getClusterNodes                   | 20                          |               |
| getSignaturesForAddress           | 40                          |               |
| getFirstAvailableBlock            | 40                          |               |
| getTransaction                    | 40                          |               |
| getBlock                          | 40                          |               |
| getProgramAccounts                | 20                          |               |
| getInflationReward                | 40                          |               |
| getPriorityFeeEstimate            | 10                          | 20            |
| getSupply                         | 160                         |               |
| getLargestAccounts                | 3000                        |               |
| batch\*                           | CU of method # times called |               |

* To view the batch request breakdown in the Alchemy Dashboard, click on "raw request"

# Solana: DAS APIs (NFT/Token)

| Method               | CU  | Throughput CU |
| -------------------- | --- | ------------- |
| getAsset             | 80  | 200           |
| getAssets            | 480 | 200           |
| getAssetProof        | 160 | 200           |
| getAssetProofs       | 480 | 200           |
| getAssetsByAuthority | 480 | 200           |
| getAssetsByOwner     | 480 | 200           |
| getAssetsByGroup     | 480 | 200           |
| getAssetsByCreator   | 480 | 200           |
| searchAssets         | 480 | 200           |
| getAssetSignatures   | 160 | 200           |
| getNftEditions       | 160 | 200           |
| getTokenAccounts     | 160 | 200           |

# Solana: Photon APIs (ZK Compression)

| Method                                | CU   | Throughput CU |
| ------------------------------------- | ---- | ------------- |
| getCompressedAccount                  | 120  | 100           |
| getCompressedAccountProof             | 120  | 100           |
| getCompressedAccountsByOwner          | 120  | 100           |
| getCompressedBalance                  | 120  | 100           |
| getCompressedBalanceByOwner           | 120  | 100           |
| getCompressedMintTokenHolders         | 120  | 100           |
| getCompressedTokenAccountBalance      | 120  | 100           |
| getCompressedTokenAccountsByDelegate  | 120  | 100           |
| getCompressedTokenAccountsByOwner     | 120  | 100           |
| getCompressedTokenBalancesByOwner     | 120  | 100           |
| getCompressedTokenBalancesByOwnerV2   | 120  | 100           |
| getCompressionSignaturesForAccount    | 120  | 100           |
| getCompressionSignaturesForAddress    | 120  | 100           |
| getCompressionSignaturesForOwner      | 120  | 100           |
| getCompressionSignaturesForTokenOwner | 120  | 100           |
| getIndexerHealth                      | 120  | 100           |
| getIndexerSlot                        | 120  | 100           |
| getLatestCompressionSignatures        | 120  | 100           |
| getLatestNonVotingSignatures          | 120  | 100           |
| getMultipleCompressedAccountProofs    | 120  | 100           |
| getMultipleCompressedAccounts         | 120  | 100           |
| getMultipleNewAddressProofs           | 120  | 100           |
| getMultipleNewAddressProofsV2         | 120  | 100           |
| getTransactionWithCompressionInfo     | 120  | 100           |
| getValidityProof                      | 1200 | 500           |
| getValidityProofV2                    | 1200 | 500           |

# Solana: Yellowstone gRPC

[Yellowstone gRPC](/docs/reference/yellowstone-grpc-overview) is a high-performance streaming service for Solana that delivers real-time blockchain data via gRPC. Pricing is based on **bandwidth:** the amount of data delivered as part of the stream.

| Bandwidth | CU     |
| --------- | ------ |
| 1 TB    | $80 |

* Amount will be pro-rated based on bytes streamed. [Contact us](https://www.alchemy.com/contact-sales) for pre-committed bulk discounts.

# Debug API

| Method                    | CU | Throughput CU |
| ------------------------- | -- | ------------- |
| debug\_traceTransaction   | 40 | 1000          |
| debug\_traceCall          | 40 | 1000          |
| debug\_traceCallMany      | 40 | 1000          |
| debug\_traceBlockByHash   | 40 | 1000          |
| debug\_traceBlockByNumber | 40 | 1000          |
| debug\_getBadBlocks       | 40 | 1000          |
| debug\_getRawHeader       | 40 | 1000          |
| debug\_getRawReceipts     | 40 | 1000          |
| debug\_storageRangeAt     | 40 | 1000          |

# Embedded Account APIs

Similar to the [NFT API](/docs/reference/compute-unit-costs#nft-api), the Embedded Account APIs implement "Throughput CU" to count separately toward your applications' throughput!

| Method               | CU   | Throughput CU |
| -------------------- | ---- | ------------- |
| /signer/auth         | 100  | 50            |
| /signer/lookup       | 20   | 50            |
| /signer/signup       | 1000 | 300           |
| /signer/sign-payload | 6000 | 300           |
| /signer/whoami       | 100  | 20            |

# Gas Manager & Bundler APIs

Similar to the [NFT API](/docs/reference/compute-unit-costs#nft-api), the Gas Manager & Bundler APIs implement "Throughput CU" to count separately toward your applications' throughput!

| Method                                     | CU   | Throughput CU |
| ------------------------------------------ | ---- | ------------- |
| eth\_sendUserOperation                     | 1000 | 100           |
| eth\_estimateUserOperationGas              | 500  | 50            |
| eth\_getUserOperationByHash                | 20   | 17            |
| eth\_getUserOperationReceipt               | 20   | 15            |
| eth\_supportedEntryPoints                  | 10   | 5             |
| rundler\_maxPriorityFeePerGas              | 10   | 10            |
| alchemy\_simulateUserOperationAssetChanges | 2500 | 2500          |
| alchemy\_requestPaymasterAndData           | 1000 | 100           |
| alchemy\_requestGasAndPaymasterAndData     | 1250 | 125           |
| alchemy\_requestFeePayer                   | 1000 | 100           |

* When `eth_sendUserOperation` is called with a valid bundler sponsorship header (`x-alchemy-policy-id`), the CU cost is 3000 instead of the standard 1000.
* When `alchemy_requestFeePayer` is called with `prefundRent = true`, the CU cost is 1250 instead of the standard 1000.

# NFT API

We want builders to be able to use as much of the NFT API as they need without worrying about throughput. Because of that, we have discounted how NFT API requests count towards your applications’ guaranteed throughput by 6-10x. This means you can make more concurrent NFT API requests, and use the “Throughput CU” below to calculate how much you can use!

| Method                   | CU   | Throughput CU |
| ------------------------ | ---- | ------------- |
| getNFTMetadata           | 80   | 10            |
| getContractMetadata      | 160  | 10            |
| getCollectionMetadata    | 240  | 10            |
| getNFTsForOwner          | 480  | 100           |
| getContractsForOwner     | 320  | 100           |
| getCollectionsForOwner   | 360  | 100           |
| getNFTsForContract       | 600  | 50            |
| getOwnersForNFT          | 80   | 10            |
| getOwnersForContract     | 480  | 20            |
| getFloorPrice            | 80   | 10            |
| getNFTSales              | 160  | 10            |
| computeRarity            | 80   | 10            |
| summarizeNFTAttributes   | 80   | 10            |
| isHolderOfContract       | 80   | 10            |
| searchContractMetadata   | 480  | 50            |
| getNFTMetadataBatch      | 480  | 100           |
| getContractMetadataBatch | 480  | 100           |
| getSpamContracts         | 480  | 10            |
| isSpamContract           | 80   | 10            |
| isAirdropNFT             | 80   | 10            |
| invalidateContract       | 80   | 80            |
| refreshNftMetadata       | 40   | 10            |
| reportSpam               | 0    | 10            |

# Portfolio API

| Method                            | CU   |
| --------------------------------- | ---- |
| assets/nfts/by-address            | 1000 |
| assets/nfts/contracts/by-address  | 600  |
| assets/tokens/by-address          | 360  |
| assets/tokens/balances/by-address | 200  |
| /transactions/history/by-address  | 1000 |

# Prices API

| Method            | CU |
| ----------------- | -- |
| tokens/by-symbol  | 40 |
| tokens/by-address | 40 |
| tokens/historical | 40 |

# Token API

| Method                     | CU  |
| -------------------------- | --- |
| alchemy\_getTokenBalances  | 20  |
| alchemy\_getTokenMetadata  | 10  |
| alchemy\_getTokenAllowance | 20  |

# Trace API

| Method                         | CU | Throughput CU |
| ------------------------------ | -- | ------------- |
| trace\_get                     | 20 | 20            |
| trace\_block                   | 20 | 20            |
| trace\_transaction             | 40 | 40            |
| trace\_call                    | 40 | 40            |
| trace\_callMany                | 80 | 3000          |
| trace\_rawTransaction          | 40 | 40            |
| trace\_filter                  | 40 | 40            |
| trace\_replayTransaction       | 80 | 3000          |
| trace\_replayBlockTransactions | 80 | 3000          |

# Arbitrum Trace API

| Method                            | CU | Throughput CU |
| --------------------------------- | -- | ------------- |
| arbtrace\_get                     | 20 | 20            |
| arbtrace\_block                   | 20 | 20            |
| arbtrace\_transaction             | 40 | 40            |
| arbtrace\_call                    | 40 | 40            |
| arbtrace\_callMany                | 80 | 80            |
| arbtrace\_rawTransaction          | 40 | 40            |
| arbtrace\_filter                  | 40 | 40            |
| arbtrace\_replayTransaction       | 80 | 3000          |
| arbtrace\_replayBlockTransactions | 80 | 3000          |

# Transact

| Method                                    | CU   |
| ----------------------------------------- | ---- |
| alchemy\_simulateAssetChanges             | 2500 |
| alchemy\_simulateExecution                | 2500 |

# Transfers API

| Method                     | CU  |
| -------------------------- | --- |
| alchemy\_getAssetTransfers | 120 |

# Utility API

| Method                          | CU  |
| ------------------------------- | --- |
| alchemy\_getTransactionReceipts | 250 |

# Wallet APIs

Similar to the [NFT API](/docs/reference/compute-unit-costs#nft-api), the Wallet APIs implement "Throughput CU" to count separately toward your applications' throughput!

| Method                                     | CU   | Throughput CU |
| ------------------------------------------ | ---- | ------------- |
| wallet_requestAccount                      | 50   | -             |
| wallet_prepareCalls                        | 1750 | 50            |
| wallet_sendPreparedCalls                   | 3000 | 100           |
| wallet_createAccount                       | 50   | -             |
| wallet_createSession                       | 50   | -             |
| wallet_getCallsStatus                      | 20   | -             |
| wallet_listAccounts                        | 10   | -             |
| wallet_formatSign                          | 15   | -             |
| wallet_getAssets                           | 200  | -             |
| wallet_getCapabilities                     | 10   | -             |
| wallet_getCrossChainStatus_v0              | 40   | -             |
| wallet_prepareSign                         | 15   | -             |
| wallet_requestQuote_v0                     | 800  | -             |

# Webhooks and Subscription APIs

[Webhooks](/docs/reference/notify-api-quickstart) and [WebSocket Subscriptions](/docs/websocket-subscriptions) on Alchemy are priced based on **bandwidth:** the amount of data delivered as part of the subscription.

Each subscription type is priced identically per byte:

| Bandwidth | CU  |
| --------- | --- |
| 1 byte    | .04 |

On average, a typical webhook or WebSocket subscription event is about 1000 bytes, so it would consume 40 compute units. Note that this can vary significantly based on the specific event delivered [Subscription API Quickstart](/docs/reference/subscription-api)

# Polygon PoS: Specific Methods

| Method                    | CU |
| ------------------------- | -- |
| bor\_getAuthor            | 10 |
| bor\_getCurrentProposer   | 10 |
| bor\_getCurrentValidators | 10 |
| bor\_getRootHash          | 10 |
| bor\_getSignersAtHash     | 10 |

# Polygon zkEVM: Specific Methods

| Method                          | CU |
| ------------------------------- | -- |
| zkevm\_batchNumber              | 10 |
| zkevm\_batchNumberByBlockNumber | 10 |
| zkevm\_consolidatedBlockNumber  | 10 |
| zkevm\_getBatchByNumber         | 10 |
| zkevm\_getBroadcastURI          | 10 |
| zkevm\_isBlockConsolidated      | 10 |
| zkevm\_isBlockVirtualized       | 10 |
| zkevm\_verifiedBatchNumber      | 10 |
| zkevm\_virtualBatchNumber       | 10 |
| zkevm\_estimateFee              | 40 |
| zkevm\_estimateGasPrice         | 40 |

# Starknet: Standard JSON-RPC Methods

| Method                                    | CU   |
| ----------------------------------------- | ---- |
| starknet\_getBlockWithTxHashes            | 20   |
| starknet\_getBlockWithTxs                 | 20   |
| starknet\_getStateUpdate                  | 20   |
| starknet\_getStorageAt                    | 20   |
| starknet\_getTransactionByHash            | 20   |
| starknet\_getTransactionByBlockIdAndIndex | 20   |
| starknet\_getTransactionReceipt           | 20   |
| starknet\_getClass                        | 20   |
| starknet\_getClassHashAt                  | 20   |
| starknet\_getClassAt                      | 20   |
| starknet\_getBlockTransactionCount        | 20   |
| starknet\_call                            | 20   |
| starknet\_blockNumber                     | 20   |
| starknet\_blockHashAndNumber              | 20   |
| starknet\_chainId                         | 0    |
| starknet\_pendingTransactions             | 20   |
| starknet\_syncing                         | 0    |
| starknet\_getNonce                        | 20   |
| starknet\_getEvents                       | 20   |
| starknet\_estimateFee                     | 20   |
| starknet\_addInvokeTransaction            | 160  |
| starknet\_addDeclareTransaction           | 160  |
| starknet\_addDeployAccountTransaction     | 160  |
| starknet\_estimateMessageFee              | 20   |
| starknet\_getBlockWithReceipts            | 20   |
| starknet\_traceBlockTransactions          | 80   |
| starknet\_specVersion                     | 10   |
| starknet\_getTransactionStatus            | 20   |
| starknet\_simulateTransactions            | 20   |
| starknet\_getCompiledCasm                | 20   |
| starknet\_getMessagesStatus              | 20   |
| starknet\_getStorageProof                | 20   |
| starknet\_traceTransaction               | 20   |

# zkSync Era: Specific Methods

| Method                                          | CU |
| ----------------------------------------------- | -- |
| zks\_estimateFee                                | 10 |
| zks\_estimateGasL1ToL2                          | 10 |
| zks\_gasPerPubdata                              | 10 |
| zks\_getAllAccountBalances                       | 10 |
| zks\_getBaseTokenL1Address                      | 10 |
| zks\_getBlockDetails                            | 10 |
| zks\_getBridgeContracts                         | 10 |
| zks\_getBridgehubContract                       | 10 |
| zks\_getBytecodeByHash                          | 10 |
| zks\_getConfirmedTokens                         | 10 |
| zks\_getFeeParams                               | 10 |
| zks\_getL1BatchBlockRange                       | 10 |
| zks\_getL1BatchDetails                          | 10 |
| zks\_getL1GasPrice                              | 10 |
| zks\_getL2ToL1LogProof                          | 10 |
| zks\_getL2ToL1MsgProof                          | 10 |
| zks\_getMainContract                            | 10 |
| zks\_getProtocolVersion                         | 10 |
| zks\_getRawBlockTransactions                    | 10 |
| zks\_getTestnetPaymaster                        | 10 |
| zks\_getTransactionDetails                      | 10 |
| zks\_L1BatchNumber                              | 10 |
| zks\_L1ChainId                                  | 10 |
| zks\_sendRawTransactionWithDetailedOutput       | 20 |

# Ethereum Beacon: Standard HTTP API Methods

| Method                                                         | CU  |
| -------------------------------------------------------------- | --- |
| /eth/v2/beacon/blocks/\{block\_id}/attestations                | 20  |
| /eth/v1/beacon/blocks/\{block\_id}/root                        | 20  |
| /eth/v1/beacon/blinded\_blocks/\{slot}                         | 20  |
| /eth/v1/beacon/blob\_sidecars/\{block\_id}                     | 20  |
| /eth/v1/beacon/genesis                                         | 20  |
| /eth/v1/beacon/headers                                         | 20  |
| /eth/v1/beacon/headers/\{block\_id}                            | 20  |
| /eth/v1/beacon/pool/voluntary\_exits                           | 20  |
| /eth/v1/beacon/states/\{state\_id}/committees                  | 20  |
| /eth/v1/beacon/states/\{state\_id}/finality\_checkpoints       | 20  |
| /eth/v1/beacon/states/\{state\_id}/fork                        | 20  |
| /eth/v1/beacon/states/\{state\_id}/pending\_consolidations     | 20  |
| /eth/v1/beacon/states/\{state\_id}/root                        | 20  |
| /eth/v1/beacon/states/\{state\_id}/sync\_committees            | 20  |
| /eth/v1/beacon/states/\{state\_id}/validator\_balances         | 20  |
| /eth/v1/beacon/states/\{state\_id}/validators                  | 20  |
| /eth/v1/beacon/states/\{state\_id}/validators/\{validator\_id} | 20  |
| /eth/v1/beacon/rewards/sync\_committee/\{block\_id}            | 20  |
| /eth/v1/beacon/rewards/blocks/\{block\_id}                     | 20  |
| /eth/v1/beacon/rewards/attestations/\{epoch}                   | 20  |
| /eth/v1/config/deposit\_contract                               | 20  |
| /eth/v1/config/fork\_schedule                                  | 20  |
| /eth/v1/config/spec                                            | 20  |
| /eth/v1/node/peer\_count                                       | 20  |
| /eth/v1/node/peers                                             | 20  |
| /eth/v1/node/syncing                                           | 20  |
| /eth/v1/node/version                                           | 20  |
| /eth/v2/validator/aggregate\_attestation                       | 20  |
| /eth/v1/validator/duties/attester/\{epoch}                     | 20  |
| /eth/v1/validator/duties/proposer/\{epoch}                     | 20  |
| /eth/v1/validator/duties/sync/\{epoch}                         | 20  |
| /eth/v1/validator/sync\_committee\_contribution                | 20  |
| /eth/v2/beacon/blocks/\{block\_id}                             | 20  |
| /eth/v1/beacon/blinded\_blocks/\{block\_id}                    | 20  |
| /eth/v1/beacon/blobs/\{block\_id}                              | 20  |
| /eth/v1/beacon/states/\{state\_id}/pending\_deposits           | 20  |
| /eth/v1/beacon/states/\{state\_id}/proposer\_lookahead         | 20  |
| /eth/v1/beacon/states/\{state\_id}/randao                      | 20  |
| /eth/v1/beacon/states/\{state\_id}/validator\_identities       | 20  |

# Aptos: Standard REST API Methods

| Method                                                         | CU  |
| -------------------------------------------------------------- | --- |
| /v1/                                                           | 20  |
| /v1/accounts/\{address}                                        | 20  |
| /v1/accounts/\{address}/balance/\{asset\_type}                 | 20  |
| /v1/accounts/\{address}/events/\{creation\_number}             | 20  |
| /v1/accounts/\{address}/events/\{event\_handle}/\{field\_name} | 20  |
| /v1/accounts/\{address}/module/\{module\_name}                 | 20  |
| /v1/accounts/\{address}/modules                                | 20  |
| /v1/accounts/\{address}/resource/\{resource\_type}             | 20  |
| /v1/accounts/\{address}/resources                              | 20  |
| /v1/accounts/\{address}/transactions                           | 20  |
| /v1/blocks/by\_height/\{block\_height}                         | 20  |
| /v1/blocks/by\_version/\{version}                              | 20  |
| /v1/estimate\_gas\_price                                       | 20  |
| /v1/-/healthy                                                  | 20  |
| /v1/spec                                                       | 20  |
| /v1/tables/\{table\_handle}/item                               | 20  |
| /v1/tables/\{table\_handle}/raw\_item                          | 20  |
| /v1/transactions                                               | 20  |
| /v1/transactions/batch                                         | 20  |
| /v1/transactions/by\_hash/\{txn\_hash}                         | 20  |
| /v1/transactions/by\_version/\{txn\_version}                   | 20  |
| /v1/transactions/encode\_submission                            | 20  |
| /v1/transactions/simulate                                      | 20  |
| /v1/view                                                       | 20  |

# Bitcoin: Standard JSON-RPC Methods

| Method                                                    | CU  |
| --------------------------------------------------------- | --- |
| getbestblockhash                                          | 10  |
| getblock                                                  | 10  |
| getblockchaininfo                                         | 10  |
| getblockcount                                             | 10  |
| getblockhash                                              | 10  |
| getblockheader                                            | 10  |
| getblockstats                                             | 10  |
| getdifficulty                                             | 10  |
| getmempoolancestors                                       | 10  |
| getmempooldescendants                                     | 10  |
| getmempoolinfo                                            | 10  |
| getrawmempool                                             | 10  |
| gettxout                                                  | 10  |
| gettxoutproof                                             | 10  |
| getchaintips                                              | 10  |
| getchaintxstats                                           | 10  |
| getblocktemplate                                          | 10  |
| submitblock                                               | 10  |
| decoderawtransaction                                      | 10  |
| decodescript                                              | 10  |
| estimatesmartfee                                          | 10  |
| getconnectioncount                                        | 10  |
| getindexinfo                                              | 10  |
| getmemoryinfo                                             | 10  |
| validateaddress                                           | 10  |
| verifymessage                                             | 10  |
| gettxoutsetinfo                                           | 10  |
| testmempoolaccept                                         | 10  |
| sendrawtransaction                                        | 10  |
| submitpackage                                             | 10  |

# Celestia Bridge: Standard RPC Methods

| Method                                                    | CU  |
| --------------------------------------------------------- | --  |
| blob.Get                                                  | 20  |
| blob.GetAll                                               | 20  |
| blob.Submit                                               | 20  |
| blob.GetCommitmentProof                                   | 20  |
| blob.GetProof                                             | 20  |
| blob.Included                                             | 20  |
| state.AccountAddress                                      | 20  |
| state.Balance                                             | 20  |
| state.BalanceForAddress                                   | 20  |
| state.SubmitPayForBlob                                    | 20  |
| state.Transfer                                            | 20  |
| header.GetByHash                                          | 20  |
| header.GetByHeight                                        | 20  |
| header.GetRangeByHeight                                   | 20  |
| header.LocalHead                                          | 20  |
| header.NetworkHead                                        | 20  |
| header.SyncState                                          | 20  |
| header.SyncWait                                           | 20  |
| header.WaitForHeight                                      | 20  |
| share.GetEDS                                              | 20  |
| share.GetNamespaceData                                    | 20  |
| share.GetRange                                            | 20  |
| share.GetRow                                              | 20  |
| share.GetSamples                                          | 20  |
| share.SharesAvailable                                     | 20  |
| blobstream.GetDataRootTupleInclusionProof                 | 20  |
| da.Submit                                                 | 20  |
| da.Get                                                    | 20  |
| fraud.Get                                                 | 20  |

# Citrea: Specific Methods

| Method                                      | CU |
| ------------------------------------------- | -- |
| citrea\_getL2StatusHeightsByL1Height        | 20 |
| citrea\_getLastCommittedL2Height            | 20 |
| citrea\_getLastProvenL2Height               | 20 |
| citrea\_sendRawDepositTransaction           | 20 |
| citrea\_syncStatus                          | 20 |
| ledger\_getHeadL2Block                      | 20 |
| ledger\_getHeadL2BlockHeight                | 20 |
| ledger\_getL2BlockByHash                    | 20 |
| ledger\_getL2BlockByNumber                  | 20 |
| ledger\_getL2BlockRange                     | 20 |
| ledger\_getL2GenesisStateRoot               | 20 |
| ledger\_getLastScannedL1Height              | 20 |
| ledger\_getLastVerifiedBatchProof           | 20 |
| ledger\_getSequencerCommitmentByIndex       | 20 |
| ledger\_getSequencerCommitmentsOnSlotByHash | 20 |
| ledger\_getSequencerCommitmentsOnSlotByNumber | 20 |
| ledger\_getVerifiedBatchProofsBySlotHeight  | 20 |

# Linea: Specific Methods

| Method                                        | CU |
| --------------------------------------------- | -- |
| linea\_estimateGas                            | 20 |
| linea\_getProof                               | 20 |
| linea\_getTransactionExclusionStatusV1        | 20 |

# MegaETH: Specific Methods

| Method                    | CU |
| ------------------------- | -- |
| eth\_getWithdrawalProof   | 20 |

# Sui: Standard Methods

| Method                                   | CU |
| ---------------------------------------- | -- |
| sui\_devInspectTransactionBlock           | 20 |
| sui\_dryRunTransactionBlock              | 20 |
| sui\_executeTransactionBlock             | 20 |
| sui\_getChainIdentifier                  | 20 |
| sui\_getCheckpoint                       | 20 |
| sui\_getCheckpoints                      | 20 |
| sui\_getEvents                           | 20 |
| sui\_getLatestCheckpointSequenceNumber   | 20 |
| sui\_getMoveFunctionArgTypes             | 20 |
| sui\_getNormalizedMoveFunction           | 20 |
| sui\_getNormalizedMoveModule             | 20 |
| sui\_getNormalizedMoveModulesByPackage   | 20 |
| sui\_getNormalizedMoveStruct             | 20 |
| sui\_getObject                           | 20 |
| sui\_getProtocolConfig                   | 20 |
| sui\_getTotalTransactionBlocks           | 20 |
| sui\_getTransactionBlock                 | 20 |
| sui\_multiGetObjects                     | 20 |
| sui\_multiGetTransactionBlocks           | 20 |
| sui\_tryGetPastObject                    | 20 |
| sui\_tryMultiGetPastObjects              | 20 |
| suix\_getAllBalances                      | 20 |
| suix\_getAllCoins                         | 20 |
| suix\_getBalance                         | 20 |
| suix\_getCoinMetadata                    | 20 |
| suix\_getCoins                           | 20 |
| suix\_getCommitteeInfo                   | 20 |
| suix\_getDynamicFieldObject              | 20 |
| suix\_getDynamicFields                   | 20 |
| suix\_getLatestBridge                    | 20 |
| suix\_getLatestSuiSystemState            | 20 |
| suix\_getOwnedObjects                    | 20 |
| suix\_getReferenceGasPrice               | 20 |
| suix\_getStakes                          | 20 |
| suix\_getStakesByIds                     | 20 |
| suix\_getTotalSupply                     | 20 |
| suix\_queryEvents                        | 20 |
| suix\_queryTransactionBlocks             | 20 |
| suix\_resolveNameServiceAddress          | 20 |
| unsafe\_batchTransaction                 | 20 |
| unsafe\_mergeCoins                       | 20 |
| unsafe\_moveCall                         | 20 |
| unsafe\_pay                              | 20 |
| unsafe\_payAllSui                        | 20 |
| unsafe\_paySui                           | 20 |
| unsafe\_publish                          | 20 |
| unsafe\_requestAddStake                  | 20 |
| unsafe\_requestWithdrawStake             | 20 |
| unsafe\_splitCoin                        | 20 |
| unsafe\_splitCoinEqual                   | 20 |
| unsafe\_transferObject                   | 20 |
| unsafe\_transferSui                      | 20 |

# Tron: Standard HTTP Methods

| Method                                                    | CU  |
| --------------------------------------------------------- | --- |
| /wallet/accountpermissionupdate                           | 20  |
| /wallet/broadcasthex                                      | 20  |
| /wallet/broadcasttransaction                              | 20  |
| /wallet/clearabi                                          | 20  |
| /wallet/createaccount                                     | 20  |
| /wallet/createassetissue                                  | 20  |
| /wallet/createtransaction                                 | 20  |
| /wallet/deploycontract                                    | 20  |
| /wallet/estimateenergy                                    | 20  |
| /wallet/freezebalance                                     | 20  |
| /wallet/freezebalancev2                                   | 20  |
| /wallet/getaccount                                        | 20  |
| /wallet/getaccountbalance                                 | 20  |
| /wallet/getaccountnet                                     | 20  |
| /wallet/getaccountresource                                | 20  |
| /wallet/getassetissuebyid                                 | 20  |
| /wallet/getassetissuebyname                               | 20  |
| /wallet/getblock                                          | 20  |
| /wallet/getblockbynum                                     | 20  |
| /wallet/getblockbyid                                      | 20  |
| /wallet/getblockbylatestnum                               | 20  |
| /wallet/getblockbylimitnext                               | 20  |
| /wallet/getburntrx                                        | 20  |
| /wallet/getchainparameters                                | 20  |
| /wallet/getcontract                                       | 20  |
| /wallet/getcontractinfo                                   | 20  |
| /wallet/getdelegatedresource                              | 20  |
| /wallet/getdelegatedresourceaccountindex                  | 20  |
| /wallet/getdiversifier                                    | 20  |
| /wallet/getenergyprices                                   | 20  |
| /wallet/getexchangebyid                                   | 20  |
| /wallet/getincomingviewingkey                             | 20  |
| /wallet/getnewshieldedaddress                             | 20  |
| /wallet/getnodeinfo                                       | 20  |
| /wallet/getnowblock                                       | 20  |
| /wallet/getpaginatedassetissuelist                        | 20  |
| /wallet/getproposalbyid                                   | 20  |
| /wallet/gettransactionbyid                                | 20  |
| /wallet/gettransactioninfobyid                            | 20  |
| /wallet/gettransactionlistfrompending                     | 20  |
| /wallet/triggersmartcontract                              | 20  |
| /wallet/triggerconstantcontract                           | 20  |
| /wallet/transferasset                                     | 20  |
| /wallet/unfreezebalance                                   | 20  |
| /wallet/unfreezebalancev2                                 | 20  |
| /wallet/unfreezeasset                                     | 20  |
| /wallet/updateaccount                                     | 20  |
| /wallet/validateaddress                                   | 20  |
| /wallet/createshieldedcontractparameters                  | 20  |
| /wallet/createspendauthsig                                | 20  |
| /wallet/delegateresource                                  | 20  |
| /wallet/exchangecreate                                    | 20  |
| /wallet/exchangeinject                                    | 20  |
| /wallet/exchangetransaction                               | 20  |
| /wallet/exchangewithdraw                                  | 20  |
| /wallet/getakfromask                                      | 20  |
| /wallet/getassetissuebyaccount                            | 20  |
| /wallet/getassetissuelist                                 | 20  |
| /wallet/getassetissuelistbyname                           | 20  |
| /wallet/getavailableunfreezecount                         | 20  |
| /wallet/getbandwidthprices                                | 20  |
| /wallet/getblockbalance                                   | 20  |
| /wallet/getcandelegatedmaxsize                            | 20  |
| /wallet/getcanwithdrawunfreezeamount                      | 20  |
| /wallet/getdelegatedresourceaccountindexv2                | 20  |
| /wallet/getdelegatedresourcev2                            | 20  |
| /wallet/getexpandedspendingkey                            | 20  |
| /wallet/getnkfromnsk                                      | 20  |
| /wallet/getpendingsize                                    | 20  |
| /wallet/getspendingkey                                    | 20  |
| /wallet/gettransactionfrompending                         | 20  |
| /wallet/gettransactioninfobyblocknum                      | 20  |
| /wallet/gettriggerinputforshieldedtrc20contract           | 20  |
| /wallet/getzenpaymentaddress                              | 20  |
| /wallet/isshieldedtrc20contractnotespent                  | 20  |
| /wallet/listexchanges                                     | 20  |
| /wallet/listproposals                                     | 20  |
| /wallet/participateassetissue                             | 20  |
| /wallet/proposalapprove                                   | 20  |
| /wallet/proposaldelete                                    | 20  |
| /wallet/scanshieldedtrc20notesbyivk                       | 20  |
| /wallet/scanshieldedtrc20notesbyovk                       | 20  |
| /wallet/undelegateresource                                | 20  |
| /wallet/updateasset                                       | 20  |
| /wallet/updateenergylimit                                 | 20  |
| /wallet/updatesetting                                     | 20  |
| /wallet/votewitnessaccount                                | 20  |
| /wallet/withdrawexpireunfreeze                            | 20  |

# Tron: Solidity HTTP Methods

| Method                                                    | CU  |
| --------------------------------------------------------- | --- |
| /walletsolidity/estimateenergy                            | 20  |
| /walletsolidity/getaccount                                | 20  |
| /walletsolidity/getassetissuebyid                         | 20  |
| /walletsolidity/getassetissuebyname                       | 20  |
| /walletsolidity/getassetissuelist                         | 20  |
| /walletsolidity/getassetissuelistbyname                   | 20  |
| /walletsolidity/getavailableunfreezecount                 | 20  |
| /walletsolidity/getblock                                  | 20  |
| /walletsolidity/getblockbyid                              | 20  |
| /walletsolidity/getblockbylatestnum                       | 20  |
| /walletsolidity/getblockbylimitnext                       | 20  |
| /walletsolidity/getblockbynum                             | 20  |
| /walletsolidity/getburntrx                                | 20  |
| /walletsolidity/getcandelegatedmaxsize                    | 20  |
| /walletsolidity/getcanwithdrawunfreezeamount              | 20  |
| /walletsolidity/getdelegatedresource                      | 20  |
| /walletsolidity/getdelegatedresourceaccountindex          | 20  |
| /walletsolidity/getdelegatedresourceaccountindexv2        | 20  |
| /walletsolidity/getexchangebyid                           | 20  |
| /walletsolidity/getnowblock                               | 20  |
| /walletsolidity/getpaginatedassetissuelist                | 20  |
| /walletsolidity/gettransactionbyid                        | 20  |
| /walletsolidity/gettransactioncountbyblocknum             | 20  |
| /walletsolidity/gettransactioninfobyblocknum              | 20  |
| /walletsolidity/gettransactioninfobyid                    | 20  |
| /walletsolidity/isshieldedtrc20contractnotespent          | 20  |
| /walletsolidity/listexchanges                             | 20  |
| /walletsolidity/scanshieldedtrc20notesbyivk               | 20  |
| /walletsolidity/scanshieldedtrc20notesbyovk               | 20  |
| /walletsolidity/triggerconstantcontract                   | 20  |

# Compute unit cost for error codes

| Error                                        | Compute Units                 |
| -------------------------------------------- | ----------------------------- |
| Non-existing methods                         | 0                             |
| `429, 403`                                   | 0                             |
| Other `4xx` or `5xx`                         | CU value of specific endpoint |
| `32600: IP Address not on whitelist`         | 0                             |
| `32600: App is inactive`                     | 0                             |
| `32600: Unspecified origin not on whitelist` | 0                             |