A compute unit is a measure of the requests needed to query computationally expensive API endpoints. Each request has both price and rate limit cost that is measured in terms of compute units.
โ
All Moralis plans have generous limits on the number of requests you can make per month. Some requests are more expensive than others. By giving some heavy requests higher weight, we ensure that you only pay for what you use and not a cent more.
Rate limit Cost
On the other hand, request rate limit cost refers to the amount of compute units that an API request cost in terms of rate limits.
Endpoints list
Name | Path | Price (Base) | Price (Additional) | Rate Limit Cost |
/block/{block_number_or_hash} | 100 | 0 | 20 | |
/{address}/events | 20 | 0 | 20 | |
/transaction/{transaction_hash} | 10 | 0 | 10 | |
/{address} | 30 | 0 | 20 | |
/transaction/{transaction_hash}/verbose | 20 | 0 | 10 | |
/nft/getMultipleNFTs | 150 | 0 | 20 | |
/{address}/verbose | 50 | 0 | 20 | |
/transaction/{transaction_hash}/internal-transactions | 20 | 0 | 10 | |
/{address}/balance | 10 | 0 | 10 | |
/wallets/balances | 10 | +10 CUs per wallet addresses | 10 | |
/{address}/erc20 | 100 | 0 | 20 | |
/{address}/tokens | 100 | 0 | 20 | |
/{address}/erc20/transfers | 50 | 0 | 20 | |
/erc20/{address}/transfers | 50 | 0 | 20 | |
/{address}/nft | 50 | 0 | 20 | |
/{address}/nft/transfers | 50 | 0 | 20 | |
/block/{block_number_or_hash}/nft/transfers | 20 | 0 | 20 | |
/erc20/metadata | 10 | 0 | 20 | |
/web3/version | 1 | 0 | 1 | |
/erc20/metadata/symbols | 10 | 0 | 10 | |
/erc20/{address}/price | 50 | +50 per token, if you add the query parameter include=percent_change | 20 | |
/erc20/prices | 100 | +50 per token, if you add the query parameter include=percent_change | 20 | |
/erc20/{address}/allowance | 10 | 0 | 20 | |
/nft/{address} | 50 | 0 | 20 | |
/nft/{address}/transfers | 50 | 0 | 20 | |
/nft/{address}/collections | 50 | 0 | 20 | |
/nft/{address}/owners | 50 | 0 | 20 | |
/nft/{address}/metadata | 50 | 0 | 20 | |
/nft/{address}/sync | 50 | 0 | 50 | |
/nft/{address}/{token_id}/metadata/resync | 50 | 0 | 50 | |
/nft/{address}/{token_id} | 20 | 0 | 20 | |
/nft/{address}/{token_id}/owners | 50 | 0 | 20 | |
/nft/{address}/{token_id}/transfers | 20 | 0 | 20 | |
/resolve/{domain} | 10 | 0 | 10 | |
/resolve/{address}/domain | 10 | 0 | 10 | |
/resolve/ens/{domain} | 10 | 0 | 10 | |
/resolve/{address}/reverse | 10 | 0 | 10 | |
/{pair_address}/reserves | 10 | 0 | 10 | |
/{address}/logs | 20 | 0 | 20 | |
/nft/transfers | 50 | 0 | 20 | |
/nft/{address}/trades | 40 | 0 | 20 | |
/nft/{address}/lowestprice | 40 | 0 | 20 | |
/wallets/{address}/chains | 50 | +50 CUs per chains | 50 | |
/market-data/erc20s/top-tokens | 200 | 0 | 20 | |
/market-data/erc20s/top-movers | 200 | 0 | 20 | |
/market-data/nfts/top-collections | 200 | 0 | 20 | |
/market-data/nfts/hottest-collections | 200 | 0 | 20 | |
/contracts-review | 1 | 0 | 10 | |
/info/endpointWeights | 1 | 0 | 10 | |
/wallets/{address}/stats | 50 | 0 | 50 | |
/nft/{address}/stats | 50 | 0 | 50 | |
/nft/{address}/{token_id}/stats | 50 | 0 | 50 | |
/erc20/{token_address}/owners | 50 | 0 | 20 | |
/erc20/{address}/stats | 50 | 0 | 50 | |
/block/{block_number_or_hash}/stats | 50 | 0 | 50 | |
/wallets/{address}/net-worth | 500 | +500 CUs per chains | 50 | |
/wallets/{address}/history | 150 | 0 | 30 |
How to Check Compute Units?
To check the latest compute units of our API offerings, you can check our docs here or use endpointWeights to do so.
Your output for the API request will be as follows:
[
{
"endpoint": "getBlock",
"path": "/block/{block_number_or_hash}",
"price": 100,
"rateLimitCost": 20
},
{
"endpoint": "getContractEvents",
"path": "/{address}/events",
"price": 20,
"rateLimitCost": 20
},
{
"endpoint": "getTransactions",
"path": "/transaction/{transaction_hash}",
"price": 10,
"rateLimitCost": 10
}
]