# ETH Exchange Reserves: Ether Held on Exchanges and Netflow

> ETH exchange reserves by exchange: ETH and WETH held in labelled exchange wallets, the share of ETH supply they hold and daily inflows, outflows and netflow.

Markdown copy of https://voltfincrypto.com/apps/eth-exchange-reserves

**Question:** How much ETH do exchanges hold, what share of the ETH supply is that and is it flowing in or out?

- Kind: Dashboard in Voltfin Vantage
- Topic: [Markets and trading](https://voltfincrypto.com/topics/trading)
- Chains: Ethereum, Base, Arbitrum, OP Mainnet
- Status: Planned. The data is not published yet, so this page states no figure; each figure will open its receipt when it is.

Exchanges hold ETH for their customers in wallets that can be read on-chain. This dashboard adds up the ETH and WETH in every labelled exchange wallet at each day's last block, shows the daily flow in and out and sets the total beside the whole ETH supply, so the share sitting on exchanges is measured, not estimated.

ETH that leaves exchanges goes somewhere: into self-custody, staking deposits, DeFi, spot ETF custodians or company treasuries. The second page sets exchange balances beside staked ETH and ETF holdings, so a fall in exchange reserves can be read against where the ETH went.

Balances in layer 2 exchange wallets are shown on their own, since ETH on a rollup is backed by ETH already locked on mainnet and adding the two would count it twice.

## Blueprint

### Overview

ETH on exchanges, the daily netflow and the share of supply.

- **ETH on exchanges** (ETH): ETH and WETH held in labelled exchange wallets on Ethereum at the latest day's last block.
- **Netflow, latest day** (ETH): ETH sent into labelled exchange wallets minus ETH sent out on the latest complete day.
- **Share of ETH supply on exchanges** (%): ETH on exchanges as a share of total ETH supply on the same day.
- **30-day change** (ETH): The change in ETH held on exchanges against thirty days earlier.
- **ETH on exchanges over time** (ETH): ETH and WETH in labelled exchange wallets at each day's end over the selected period, stacked by exchange.
- **Daily netflow** (ETH): Each day's net flow into or out of exchange wallets, with inflows and outflows shown on either side.

### Where ETH sits

Exchanges compared, with exchange balances beside staking and ETFs.

- **Exchanges covered** (count): Exchanges with at least one labelled wallet read on Ethereum.
- **ETH in layer 2 exchange wallets** (ETH): ETH held in labelled exchange wallets on covered layer 2s, reported apart from mainnet.
- **Reserves by exchange** (ETH): ETH and WETH held by each exchange at the latest day's end.
- **Where ETH supply sits**: ETH on exchanges beside ETH staked, ETH held by spot ETFs and the rest of the supply, with each one's change over the selected period.

Filters: Exchange (Every labelled exchange); Period (Last 30, 90 or 365 days).

## How it will be measured

- Exchange wallets are addresses each exchange publishes in its reserve lists, plus hot wallets and deposit addresses identified by their sweeps, each labelled with its source.
- Balances are native ETH from eth_getBalance plus WETH balanceOf for the same wallets at each day's last block; staked ETH and liquid staking tokens held by exchanges are counted apart, not as ETH.
- Netflow is ETH sent into labelled exchange wallets minus ETH sent out, from traces and WETH Transfer logs, with transfers between one exchange's own wallets removed.
- The share of supply divides exchange balances on Ethereum by total ETH supply on the same day; layer 2 exchange balances are reported separately and never added to it.

## Data it needs

- `exchange_balances_daily` (to build): Balances held in labelled exchange wallets per asset, chain and exchange at day end, and net flows in and out.
- `address_labels` (to build): Labels for known addresses: exchanges, bridges, protocols, funds, treasuries, sanctioned addresses and known attackers.
- `eth_supply_daily` (to build): Daily ETH issued to validators, ETH burned through the EIP-1559 base fee, and the resulting net change in ETH supply.
- `eth_staking_daily` (to build): Active validators, ETH staked, deposits, withdrawals and the entry and exit queues on the Ethereum beacon chain, by day, with staking-provider labels where known.
- `etf_holdings_daily` (to build): Holdings and daily flows of spot crypto ETFs per fund, from issuer-published holdings, matched to custody addresses where they are disclosed.
- Source: eth_getBalance and WETH balanceOf of labelled exchange wallets at each day's last block
- Source: Native ETH transfers from traces and WETH Transfer logs into and out of those wallets
- Source: Exchange-published reserve address lists and sweep-identified deposit addresses (off-chain labels with sources)
- Source: Total ETH supply, beacon chain deposits and spot ETF holdings on the same days

## Questions

### How much ETH is on exchanges?

The headline figure here is the ETH and WETH held in labelled exchange wallets on Ethereum at the latest day's last block, with each exchange's part. Totals published elsewhere differ mainly in which wallets they include, which is why every wallet here carries a source.

### What does ETH leaving exchanges mean?

ETH withdrawn from exchanges moves to wallets, staking, DeFi or custodians and is no longer immediately available to sell on that exchange. Large outflows are often read as holders moving to long-term storage, but an exchange moving funds to a new wallet looks the same until that wallet is labelled.

### Is WETH counted as ETH on exchanges?

Yes. WETH is ETH wrapped one for one in a contract, and exchanges hold both, so the dashboard adds WETH balances to native ETH for the same wallets. Staked ETH and liquid staking tokens are shown separately, because they cannot be withdrawn instantly.

### Does staked ETH held by exchanges count?

Not in the headline figure. Exchanges that stake customer ETH hold validator balances or liquid staking tokens, which need an exit before they become ETH again. They are shown as their own series, beside the liquid ETH on exchanges.

### Why are layer 2 exchange balances shown separately?

ETH on a rollup is a claim on ETH locked in the rollup's bridge on Ethereum. Adding exchange balances on layer 2s to those on mainnet would count the same ETH twice, so the dashboard keeps them apart.

## Glossary

- **WETH**: Wrapped ether, an ERC-20 token backed one for one by ETH held in its contract.
- **Netflow**: Value sent into exchange wallets minus value sent out over a period; positive means more arrived than left.
- **Liquid supply**: ETH not locked in staking, bridges or long-term contracts, and so free to move or be sold.

## Related apps

- [Bitcoin Exchange Reserves and Netflows](https://voltfincrypto.com/apps/bitcoin-exchange-reserves)
- [Proof of Reserves Tracker: Exchange Wallet Balances](https://voltfincrypto.com/apps/proof-of-reserves-tracker)
- [Ethereum ETF Holdings by Issuer, Fees and Staking](https://voltfincrypto.com/apps/ethereum-etf-holdings)
- [Total ETH Staked and Ethereum Staking Ratio](https://voltfincrypto.com/apps/total-eth-staked)
- [Stablecoin Exchange Inflows and Outflows: USDT and USDC](https://voltfincrypto.com/apps/stablecoin-exchange-inflows-outflows)
- [Crypto Liquidations Today: Longs vs Shorts](https://voltfincrypto.com/apps/crypto-liquidations-today)

Build it in Voltfin Studio: https://app.voltfincrypto.com/signup?next=%2F
