tron.assets.fungible_balances
dataset provides a transaction-level view of the balances of fungible including TRX and TRC20 tokens on the Tron blockchain.
- Each entry in the model corresponds to a specific transaction that causes a balance change in a particular asset at the transaction level.
- This means a new data entry is only created when a transaction alters an asset’s balance at the transaction level.
- For example, if a wallet receives 1 USDC in 2020 and experiences no further changes until yesterday, the model will have two entries: one for the initial receipt in 2020 and another for the recent change.
Model Caveats
Thetron.assets.fungible_balances
dataset is derived by calculating the net effect of all token transfers for each account, specifically by summing all incoming transfers (credits) and subtracting all outgoing transfers (debits).
This approach is used as the Tron blockchain does not support point-in-time balance queries for TRC20 contracts.
As a result, the model is subject to the following caveats that will result in discrepancies in the balances:
- Balance Changes Without Transfers: Certain operations may modify token balances without generating a transfer event. This can occur through direct contract interactions that adjust balances internally, bypassing the standard transfer log mechanism. Some older TRC20 contracts or legacy blocks may not emit standard transfer events. As a result, balances from these contracts might not be accurately captured.
- Rebasing Tokens: Rebasing tokens automatically adjust their total supply, which can impact individual balances without explicit transfer events. This can lead to discrepancies in balance calculations that rely solely on transfer events.
-
Null Balances:
Zero address
T9yD14Nj9j7xAB4dbGeiX9h8unkKHxuWwb
will show negative balances for most TRC20 tokens due to the way the event logs represent zero address as the sender of assets during token mints, despite the address not holding the assets previously.
Table Columns
Column Name | Description | Example |
---|---|---|
token_type | Type of token asset, either ‘native’ or ‘trc20’. | trc20 |
address | Address of the account. | TYE218dMfzo2TH348AbKyHD2G8PjGo7ESS |
token_address | Token address of the fungible token. | TEkxiTehnzSmSe2XqrBj4w32RUN966rdz8 |
token_name | Name of the fungible token. | USD Coin |
token_symbol | Token symbol of this token. | USDC |
raw_balance_str | Raw balance of tokens as a string to retain precision | 1101950000 |
raw_balance | Raw balance of tokens as a float. | 1101950000.0 |
balance_str | Normalized balance of tokens as a string to retain precision | 1,101.95 |
balance | Normalized balance of tokens as a float. | 1,101.95 |
usd_balance | The amount of tokens in $USD. | 1,101.95 |
usd_exchange_rate | The exchange rate used to calculate the usd_balance . | 1.0 |
transaction_hash | The transaction hash of the block that resulted in the balance. | d34ca27d7dcfdd0feebaea72458b48a24aec41a8e50ecf2b27975cdc054fa6cf |
transaction_index | The index of the transaction within the block. | 1 |
block_timestamp | The timestamp of the block that resulted in the balance. | 2021-07-04 11:29:30 |
block_number | The number of the block that resulted in the balance. | 31,641,759 |
block_hash | The hash of the block that resulted in the balance. | 0x0000000001e2d09ff8d7322804797a046afb97433cfedc15f46b057df5c47dee |
unique_id | Unique identifier for the balance entry. | unique_id_value |
_address_short | Shortened version of the address. | TYE218...Go7ESS |
_token_address_short | Shortened version of the token address. | TEkxiT...rdz8 |
_pseudo_global_order | Pseudo global order for sorting purposes. | 123456789 |
_created_at | Timestamp when the entry was created. | 2025-10-08 12:00:00 |
_updated_at | Timestamp when the entry was last updated. | 2025-10-08 12:00:00 |
_changed_since_full_refresh | Indicator if the entry has changed since the last full refresh. | true |
Model Caveats
- Balance Changes Without Transfers: Certain operations may modify token balances without generating a transfer event.
- This can occur through direct contract interactions that adjust balances internally, bypassing the standard transfer log mechanism.
- Rebasing Tokens: Rebasing tokens automatically adjust their total supply, which can impact individual balances without explicit transfer events.
- Null Balances: Zero address
T9yD14Nj9j7xAB4dbGeiX9h8unkKHxuWwb
will show negative balances for most tokens due to the way the event logs represent zero address as the sender of assets during token mints.