Compute Unit Costs

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

New CU Costs

Build and scale apps with lower CU costs on key APIs

Table of Contents

What are Compute Units
NFT API
Transfers API
Token API
Transact
Debug API
Trace API
EVM API
Polygon PoS API
Polygon zkEVM API
Gas Manager & Bundler APIs
Embedded Account APIs
Starknet JSON-RPC APIs
Solana API
Notify & Subscription APIs
Error Codes

What are Compute Units?

Compute units (CUs) are the measure of the total computational resources your apps use on our platform. Different methods consume different amounts of CUs based on their complexity. For example, a lightweight query like eth_blockNumber uses fewer CUs than a more intensive query like eth_getLogs. For more details, please check out the Compute Units page.

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!

MethodCUThroughput CU
getNFTMetadata100 8010
getContractMetadata250 16010
getCollectionMetadata250 24010
getNFTsForOwner600 480100
getContractsForOwner350 320100
getCollectionsForOwner350 360100
getNFTsForContract600 48050
getOwnersForNFT100 8010
getOwnersForContract600 48020
getFloorPrice100 8010
getNFTSales180 16010
computeRarity100 8010
summarizeNFTAttributes100 8010
isHolderOfContract100 8010
searchContractMetadata500 48050
getNFTMetadataBatch600 480100
getContractMetadataBatch600 480100
getSpamContracts600 48010
isSpamContract100 8010
isAirdropNFT100 8010
invalidateContract100 8080
refreshNftMetadata50 4010
reingestContract600 480480
reportSpam010

Transfers API

MethodCU
alchemy_getAssetTransfers150 120

Token API

MethodCU
alchemy_getTokenBalances26 20
alchemy_getTokenMetadata16 10
alchemy_getTokenAllowance19 20

Prices API

MethodCU
tokens/by-symbol40
tokens/by-address40

Transact

MethodCU
alchemy_sendGasOptimizedTransaction2500
alchemy_getGasOptimizedTransactionStatus25
eth_sendPrivateTransaction250
eth_cancelPrivateTransaction250
alchemy_simulateAssetChanges2500
alchemy_simulateExecution2500
Reinforced Transactions$999/month

requires Reinforced Transactions enabled on app

Debug API

MethodCUThroughput CU
debug_traceTransaction170 401000
debug_traceCall170 401000
debug_traceBlockByHash170 401000
debug_traceBlockByNumber170 401000

Trace API

MethodCUThroughput CU
trace_get17 2020
trace_block24 2020
trace_transaction26 4040
trace_call75 4040
trace_rawTransaction75 4040
trace_filter75 4040
trace_replayTransaction2983 803000
trace_replayBlockTransactions2983 803000

Standard EVM JSON-RPC Methods

MethodCUThroughput CU
net_version0
eth_chainId0
eth_syncing0
eth_protocolVersion0
net_listening0
eth_uninstallFilter10
eth_accounts10
eth_blockNumber10
eth_subscribe10
eth_unsubscribe10
eth_feeHistory10
eth_maxPriorityFeePerGas10
eth_createAccessList10
eth_getTransactionReceipt15 20
eth_getUncleByBlockHashAndIndex15 20
eth_getUncleByBlockNumberAndIndex15 20
eth_getTransactionByBlockHashAndIndex15 20
eth_getTransactionByBlockNumberAndIndex15 20
eth_getUncleCountByBlockHash15 20
eth_getUncleCountByBlockNumber15 20
web3_clientVersion15 20
web3_sha315 20
eth_getBlockByNumber16 20
eth_getStorageAt17 20
eth_getTransactionByHash17 20
eth_gasPrice19 20
eth_getBalance19 20
eth_getCode19 20
eth_getFilterChanges20
eth_newBlockFilter20
eth_newFilter20
eth_newPendingTransactionFilter20
eth_getBlockTransactionCountByHash20
eth_getBlockTransactionCountByNumber20
eth_getProof21 20
eth_getBlockByHash21 20
erigon_forks24 20
erigon_getHeaderByHash24 20
erigon_getHeaderByNumber24 20
erigon_getLogsByHash24 20
erigon_issuance24 20
eth_getTransactionCount26 20
eth_call26
eth_getFilterLogs75 60
eth_getLogs75 60
eth_estimateGas87 20
alchemy_getTransactionReceipts250
eth_sendRawTransaction250 40250
eth_getBlockReceipts500 20500
batchCU of method # times called
  • To view the batch request breakdown in the dashboard, click on "raw request"

Polygon PoS Specific Methods

MethodCU
bor_getAuthor10
bor_getCurrentProposer10
bor_getCurrentValidators10
bor_getRootHash10
bor_getSignersAtHash10

Polygon zkEVM Specific Methods

MethodCU
zkevm_batchNumber10
zkevm_batchNumberByBlockNumber10
zkevm_consolidatedBlockNumber10
zkevm_getBatchByNumber10
zkevm_getBroadcastURI10
zkevm_isBlockConsolidated10
zkevm_isBlockVirtualized10
zkevm_verifiedBatchNumber10
zkevm_virtualBatchNumber10
zkevm_estimateFee40
zkevm_estimateGasPrice40

zkSync Era Specific Methods

All zkSync Era specific methods cost 10 CUs, this includes the methods listed below:

Gas Manager & Bundler APIs

Similar to the NFT API, the Gas Manager & Bundler APIs implement "Throughput CU" to count separately toward your applications' throughput!

MethodCUThroughput CU
eth_sendUserOperation1000100
eth_estimateUserOperationGas500 4050
eth_getUserOperationByHash17 2017
eth_getUserOperationReceipt15 2015
eth_supportedEntryPoints5 105
rundler_maxPriorityFeePerGas1010
alchemy_simulateUserOperationAssetChanges25002500
alchemy_requestPaymasterAndData1000100
alchemy_requestGasAndPaymasterAndData1250125

Embedded Account APIs

Similar to the NFT API, the Embedded Account APIs implement "Throughput CU" to count separately toward your applications' throughput!

MethodCUThroughput CU
/signer/auth10050
/signer/lookup10050
/signer/signup1000300
/signer/sign-payload6000300
/signer/whoami10020

Standard Starknet JSON-RPC Methods

MethodCU
starknet_getBlockWithTxHashes16 20
starknet_getBlockWithTxs16 20
starknet_getStateUpdate21 20
starknet_getStorageAt17 20
starknet_getTransactionByHash17 20
starknet_getTransactionByBlockIdAndIndex15 20
starknet_getTransactionReceipt15 20
starknet_getClass19 20
starknet_getClassHashAt19 20
starknet_getClassAt19 20
starknet_getBlockTransactionCount20
starknet_call26 20
starknet_blockNumber10 20
starknet_blockHashAndNumber10 20
starknet_chainId0
starknet_pendingTransactions50 20
starknet_syncing0
starknet_getNonce26 20
starknet_getEvents75 20
starknet_estimateFee87 20
starknet_addInvokeTransaction250 160
starknet_addDeclareTransaction250 160
starknet_addDeployAccountTransaction250 160
starknet_estimateMessageFee87 20

Standard Solana JSON-RPC Methods

MethodCU
getLeaderSchedule5 20
requestAirdrop5 20
getVoteAccounts5
getBlockCommitment5
getBlocksWithLimit5 20
getHealth5 20
getIdentity5 20
getLatestBlockhash7 20
getSlot7 20
getInflationRate8 20
getMaxRetransmitSlot8 20
getRecentPerformanceSamples8 20
getEpochInfo9 20
getTokenAccountBalance9 20
getBlockTime9 20
getHighestSnapshotSlot9 20
sendTransaction10
getEpochSchedule10 20
getStakeActivation10 20
getMaxShredInsertSlot10 20
getVersion10 20
isBlockhashValid10 20
getAccountInfo10
getFeeForMessage10 20
getFees10 20
getConfirmedBlocks10 20
getTokenLargestAccounts10 20
getTokenOwnersByDelegate10
getInflationGovernor10 20
getSlotLeader11 20
getMultipleAccounts11
minimumLedgerSlot11 20
getBlockHeight11 20
simulateTransaction11 20
getFeeCalculatorForBlockhash11
getSignatureStatuses11 20
getRecentBlockhash12 10
getBlocks12 10
getTokenAccountsByOwner12 10
getMinimumBalanceForRentExemption12 10
getBalance12 10
getGenesisHash13 10
getBlockProduction13 10
getTokenSupply14 20
getTransactionCount16
getSlotLeaders16 20
getClusterNodes23 20
getSignaturesForAddress28 10
getFirstAvailableBlock33 40
getConfirmedSignaturesForAddress235 40
getConfirmedTransaction38 40
getTransaction59 40
getBlock66 40
getProgramAccounts117 20
getConfirmedBlock151 40
getInflationReward341 40
getSupply822 160
getLargestAccounts3000
batch*CU of method # times called
  • To view the batch request breakdown in the dashboard, click on "raw request"

Notify and Subscription APIs

Webhook (Notify API) and WebSocket 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:

BandwidthCU
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

Compute unit cost for error codes

ErrorCompute Units
Non-existing methods0
4290
Other 4xx or 5xxCU value of specific endpoint
32600: IP Address not on whitelist0
32600: App is inactive0
32600: Unspecified origin not on whitelist0
ReadMe