solana.core Table: fact_token_daily_balances Type: Base Table
Description
This table provides daily snapshots of token balances for each account and mint combination on the Solana blockchain. It creates a complete time series by forward-filling the most recent balance when thereās no activity on a given day, ensuring every account-mint combination has a balance record for each day since their first balance change. When multiple balance updates occur within a day, only the last balance is retained, providing a consistent end-of-day view. Important: If an account is left with a 0 balance at the end of the day, it is not included in the table. This means account-mint combinations will ādisappearā from the daily snapshots when their balance reaches zero and āreappearā when they receive tokens again.Key Use Cases
- Daily balance tracking and portfolio analysis over time
- Time-series analysis of token holdings and distribution patterns
- Historical balance lookups for any account-mint combination on any date
- Whale tracking and large holder analysis with daily granularity
- DeFi protocol analytics requiring daily balance snapshots
- Token distribution studies and holder concentration analysis
Important Relationships
- Sources data from
core.fact_token_balancesfor balance change events - Links to
core.fact_token_account_ownersthroughpost_ownerfor ownership attribution - Connects to
price.ez_asset_metadataviamintfor token metadata and pricing - Joins with
core.ez_transfersfor transfer context and flow analysis
Commonly-used Fields
balance_date: The date for the balance snapshot (primary time dimension)account: Token account address holding the balancemint: Token mint address identifying the specific tokenamount: The token balance amount (decimal adjusted) at end of dayowner: The owner of the token account (for attribution)last_balance_change: The last date when this accountās balance actually changed (only tracks dates when account had a positive balance)balance_changed_on_date: Boolean indicating if the balance changed on this specific date
Columns
| Column Name | Data Type | Description |
|---|---|---|
| BALANCE_DATE | DATE | The date for which the balance snapshot is recorded. This field represents the calendar date (in UTC) for the daily balance record, providing the time dimension for balance analysis. |
- Native SOL:
7GgkQ2...(wallet address) - SPL Token:
9xQeWv...(token account address) | | MINT | TEXT | Unique address representing a specific token | | AMOUNT | FLOAT | The accountās balance after the transaction, decimal-adjusted. For SOL, this is in units of SOL (not lamports); for tokens, this is in the tokenās native units (adjusted for mint decimals).
- SOL:
0.23456789(represents 0.23456789 SOL after a transfer) - USDC:
50.00(represents 50 USDC tokens after a transfer) | | OWNER | TEXT | The owner of the token account at the end of the block. Used for block-level attribution of balances and transfers. This is a base58-encoded address.
7GgkQ2...| | LAST_BALANCE_CHANGE | DATE | The date when this account last had an actual balance change that resulted in a positive balance. This field tracks the most recent date when the balance was modified to a positive amount, which may be earlier than the balance_date due to forward-filling of balances on days with no activity. Note that accounts with zero balances are excluded from daily balance tables.