Compute Units (CUs)
We use Compute Units as an alternative to the ‘pay-per-click’ method. It provides more flexibility and economy, and also reflects the individual character of usage
Last updated
We use Compute Units as an alternative to the ‘pay-per-click’ method. It provides more flexibility and economy, and also reflects the individual character of usage
Last updated
In RPC Fast API, we don’t use the "pay-per-request" system. It is common among other blockchain services to measure the RPC request usage. Instead, we charge clients according to the Compute Units (CU) system. Here you’ll find answers to the main questions about CUs explained.
Each pricing plan has a certain balance of CUs (300M, 500M, or custom). It is a balance that allows you to use methods with a specific price for the application. More RPC requests you have, the more methods or Compute Units you use. It enables you to optimize your spending and calculate the usage more precisely. Summing up, you only pay for procedures you apply.
We calculate the cost of each method according to the computational capacities, time, and CPU spent on each action. Some requests take much more CUs than others.
BSC, Ethereum & Polygon
Ethereum only
Polygon API
All simulations have a fixed price of 2000 CU.
We count all requests received from every single account. Each payment plan has its limitations. Regardless of their number, we charge you with calculating the whole number of CUs for all apps.
RPC Fast API charges the subscription by bandwidth, 0,04 CU for every byte.
After you spend all CUs in your subscription, the request will fail and return an HTTPS 429 error with an error code -32005.
In the free plan, you have 300M of CUs; in the Growth plan, there are 500M. The number gets updated monthly. In the Enterprise plan, we set the custom amount of Compute Units that will suit your business’ large size.
Method | CUs |
---|---|
Method | CUs |
---|---|
eth_call
25
trace_get
17
web3_sha3
15
trace_call
75
eth_chainId
5
eth_getCode
19
eth_getLogs
65
eth_syncing
5
net_version
5
trace_block
24
erigon_forks
24
eth_accounts
5
eth_gasPrice
19
eth_getProof
21
trace_filter
75
eth_newFilter
20
eth_subscribe
10
net_listening
5
erigon_issuance
24
eth_getBalance
19
trace_callMany
75
eth_blockNumber
5
eth_estimateGas
75
eth_unsubscribe
10
eth_getStorageAt
17
eth_getFilterLogs
75
trace_transaction
26
eth_getBlockByHash
21
eth_newBlockFilter
20
web3_clientVersion
5
eth_uninstallFilter
10
erigon_getLogsByHash
24
eth_getBlockByNumber
16
eth_getBlockReceipts
500
eth_getFilterChanges
20
trace_rawTransaction
75
erigon_getHeaderByHash
24
eth_sendRawTransaction
200
eth_getTransactionCount
26
parity_getBlockReceipts
500
trace_replayTransaction
2800
alchemy_getTokenBalances
26
alchemy_getTokenMetadata
16
erigon_getHeaderByNumber
24
eth_getTransactionByHash
17
alchemy_getAssetTransfers
150
alchemy_getTokenAllowance
19
eth_getTransactionReceipt
15
eth_sendPrivateTransaction
250
eth_cancelPrivateTransaction
250
trace_replayBlockTransactions
2800
alchemy_getTransactionReceipts
250
eth_newPendingTransactionFilter
20
eth_getBlockTransactionCountByHash
20
eth_getBlockTransactionCountByNumber
20
eth_getTransactionByBlockHashAndIndex
15
eth_getTransactionByBlockNumberAndIndex
15
eth_protocolVersion
5
eth_createAccessList
10
eth_feeHistory
10
eth_maxPriorityFeePerGas
10
eth_getUncleByBlockHashAndIndex
15
eth_getUncleByBlockNumberAndIndex
15
eth_getUncleCountByBlockHash
15
eth_getUncleCountByBlockNumber
15
bor_getAuthor
15
bor_getCurrentProposer
15
bor_getCurrentValidators
15
bor_getRootHash
15
bor_getSignersAtHash
15
eth_getTransactionReceiptsByBlock
250