Records
Records are the fundamental unit for calculating Streams API usage. A record is one of the following:- A transaction (
txs) - A log event (
logs) - An internal transaction (
txsInternal)
Charging Structure
Each record costs 10 Compute Units (CUs). Thex-records-charged header in webhook responses shows the exact record count for that delivery.
Only webhooks with
confirmed: true incur charges. Unconfirmed webhooks (confirmed: false) have x-records-charged: 0 and are free.- Unconfirmed — Sent when the transaction is included in a block (free).
- Confirmed — Sent once the block is considered final (charged).
Records by Transaction Type
The number of records charged varies depending on transaction complexity:| Transaction Type | Records Charged |
|---|---|
| Native transfer | 1 record |
| ERC20 transfer | 2 records |
| Single NFT transfer (ERC721) | 11 records |
| Batch NFT transfer (ERC1155) | 2 records |
| ERC721 minting (100 tokens) | 100 records |
Decoded Logs Are Free
Moralis automatically decodes standardized contract events at no additional cost. These do not count as records:erc20Transferserc20ApprovalsnftTransfers
Monitoring Your Usage
Use the/status endpoint (Get Stats) to track your consumption. It provides:
totalLogsProcessedtotalTxsProcessedtotalTxsInternalProcessed

