Overview | EVM Balances | Dune

Historical and current token balances and balance changes across 21 EVM chains.

Overview

Defensible historical and current balances for tax, audit, custodian, and treasury workflows.

Historical wallet holdings shouldn't require an engineering team. Dune reconstructs balances across 21 EVM chains. Tax, audit, custody, and treasury teams query the holdings they need. Every figure traceable to the event that moved it.

Historical coverage

Who this is for

Tax, audit, and reconciliation teams

See what any wallet held at any point in time, down to the transaction that moved each balance.

Compliance and risk teams

Check holdings for any group of addresses across 21 chains, at a specific date or over a date range.

Wallets, custodians, and exchanges

Monitor what your users hold today and how it changes day to day, at scale.

Research and analytics teams

Track how token ownership is distributed and how it shifts over time.

How teams use this dataset

Produce onchain balance sheets

Reconstruct what any address or set of addresses held on any date, by token, in USD. Used for fiscal year-end reporting, audit-period reconstruction, quarterly snapshots, and beneficial ownership disclosure.

Monitor counterparty and market exposure

Track what a defined group of addresses holds over time: exchanges, custodians, lending markets, or any curated list. Filter by token and date range to scope the analysis.

Build portfolio and custody views

Current and historical holdings for any address, at any scale, from a single customer wallet to an entire user base. Same query shape whether you're tracking one account or a million.

Track DEX and protocol liquidity

Daily token holdings across a large address set. Here applied to Uniswap V2 and V3 pools, but the same pattern works for any exchange's hot wallets or a custodian's full address book.

Analyze token ownership distribution

See how a token's supply is distributed across its full holder base, and how that distribution shifts over time. Cut by wallet count, supply share, or holding tier.

Dune vs DIY

Key features Dune DIY (build it yourself)
Get to a defensible historical balance One query Months of indexer work across transfers, traces, and RPC
Add a new EVM chain Change the table prefix Stand up a new indexer per chain
Handle native, wrapped, and chain-specific tokens Normalized in the data itself Per-chain custom logic, brittle to upstream changes
Apply retroactive historical corrections Absorbed upstream. Your queries don't change Re-run your pipeline; reconcile against your old outputs
Query a date-bounded historical range Fast even on date-range queries Scan or rebuild snapshots day-by-day

FAQ

How fresh is the data?

updates, daily_updates, and latest refresh hourly across all 21 chains.

Which tables are in the dataset?

Three per chain: block-level updates, daily granularity in daily_updates, and current-state latest. Same schema across every supported chain.

Does this include Bitcoin, Solana, or other non-EVM chains?

Not in this dataset.

Is this a live wallet API?

No. This is historical analytical balances for warehouse, dashboard, and reporting workflows.

Can this be delivered to my warehouse?

Yes. Get this data into your Snowflake, BigQuery, and Databricks via Dune Datashare. Scope and refresh depend on which chains, addresses, and date ranges you need.

How do I get access?

This dataset is available for enterprise customers only.

Tax & audit

Binance 2025 balance sheet

Token Balance (units) USD
USDT 41.78b $41.75b
ETH 3.89m $11.59b
wBETH 2.96m $9.58b
USDC 2.80b $2.80b
USD1 947.07m $946.75m
LINK 73.27m $905.72m
USDe 460.69m $460.18m
SHIB 65.27t $457.79m
UNI 69.29m $404.66m
PEPE 84.60t $345.85m
Other $3.31b
Total $72.54b

Compliance

Monitor counterparty and market exposure

Track what a defined group of addresses holds over time.

Wallets, custodians & exchanges

Build portfolio and custody views

Current and historical holdings for any address, at any scale.

Research

Analyze token ownership distribution

See how a token's supply is distributed across its full holder base.

Get access

Three tables per chain. Same shape across all 21 EVM chains. Switch chains by switching the prefix.

Updates

Every event that moved a balance, recorded at the block. Each row is a balance-changing event for one address and one token. Transfers, native sends, wrapped-native deposits, miner rewards, all reconstructed into a single schema with the resulting balance.

Granularity

Refresh

Daily Updates

Daily granularity for any address, any token, any date range. Daily balance updates, stored as validity intervals. Each row is valid until the next change.

Example SQL

SELECT d.timestamp as day
, i.token_address
, i.balance
, i.balance_usd
FROM balances_ethereum.daily_updates i
JOIN utils.days d
   ON d.timestamp >= CURRENT_DATE - INTERVAL '30' day
   AND d.timestamp < CURRENT_DATE
   AND d.timestamp >= i.valid_from
   AND d.timestamp <  i.valid_to
WHERE i.address        = 0xd8da6bf26964af9d7eed9e03e53415d37aa96045
  AND i.address_prefix = 'd8'
  AND i.valid_from  <= CURRENT_DATE
   AND i.valid_to   >  CURRENT_DATE - INTERVAL '30' day
ORDER BY d.timestamp

Latest

Current holdings, per address and token. The most recent known balance for every (address, token) pair.

Granularity

Refresh

Request access

Missing a chain or contract? Request coverage.

Ways to access the data

Datashare

Sync the full balances schema to Snowflake, BigQuery, or Databricks. No API limits.

Dune Data Hub

Query the balances schema directly in Dune's SQL editor. Start from a template or write your own.

Dune API

Programmatic access to the balances schema. Same shape, REST-ready for pipelines, integrations, and product features.

Dune MCP

Plug balances data into Claude, Cursor, Codex, and other MCP-compatible agents.