On-chain metrics · Exchange reserve data
Bitcoin exchange reserves: exchange balance data and charts
Bitcoin exchange reserves is the total BTC held in addresses believed to belong to exchanges. Every published reserve figure is an address list somebody assembled by inference, with simple arithmetic over the chain on top, and the arithmetic was never the uncertain part.
REST API · SQL · dashboards · indexed from genesis
Hit Run to query the fully-indexed Bitcoin blockchain.
BTC
30-day trend
informational on-chain data · not financial advice
The chain records balances exactly and nobody disagrees about them. The address list is a judgment call, it is rarely published, and it is where the differences between providers come from. We keep re-measuring the same set to show what that means in practice. On 16 August 2026, at block 962,803, five widely reported exchange cold addresses held 671,622.49 BTC between them. We measured the identical five addresses again on 24 August 2026 at block 963,839, mined at 09:16:34 UTC. They held 689,765.55 BTC. That is 18,143.06 more BTC in eight days, an increase of 2.70 percent, the sort of move that gets written up as coins flowing onto exchanges.
Four of the five addresses did not move. Between them they changed by less than four thousandths of a single bitcoin, and three of them recorded no transactions at all. The entire 18,143.06 BTC came from one address, in four transactions, and one of those four was a 546 satoshi dust output. Three real transfers produced the whole eight day move.
Then it gets more specific. All three transfers were sweeps out of the same single address, a hot wallet with 2,308,660 transactions on it that is not on the reserve list at all. Each one pulled a pile of native SegWit outputs from that wallet, paid a round number into the cold address we track, and sent the change straight back to the source. All three paid an identical 5.03 satoshis per virtual byte, which is what an automated treasury script looks like rather than a market. No bitcoin entered anyone's control during those eight days. One operator moved coins from an address that was not being counted into an address that was, and a reserve series recorded it as a 2.70 percent inflow.
That is the structural problem with reserve data, and it is not fixable by better arithmetic. A fixed address list turns internal treasury housekeeping into apparent flow, and it misses real deposits into any address nobody has attributed yet. BitcoinDatabase gives you the layer underneath: exact balances for any address at any height, the transactions that changed them, and the ability to define your own address set rather than inherit somebody else's. Both explorers we checked agreed to the satoshi on all five addresses, so the disagreement was never in the numbers. This is informational on-chain data and analytics, not financial, investment or trading advice.
Indexed from genesis queryable in seconds
On-chain data not financial advice
Why it works
What you get with Exchange reserve data
Your address set, not an inherited one
Reserve totals are decided by which addresses go on the list, and most providers never publish theirs. Define your own set, version it, and see exactly how the total responds when you add or remove an address. The single largest address in the set above is 36 percent of it, so one attribution decision moves the headline by roughly 248,000 BTC.
Balances at any height, not just now
Every balance is available as of any block, so a reserve series is a real historical measurement rather than a chart stitched together from whatever was recorded that day. That is what makes an eight day delta auditable: you can recompute both endpoints from the chain and get the same numbers we did.
The transactions behind every move
A change in the total always ties back to specific transactions, with their inputs, outputs, fee rates and counterparties. That is the only way to tell a genuine deposit from an internal sweep, and it is the difference between reporting an inflow and understanding one.
Side by side
The same five addresses, eight days apart, measured first-hand
Every balance below was read from the indexed chain and cross-checked against a second independent explorer, which agreed to the satoshi on all five. The 16 August figures were taken at block 962,803 and the 24 August figures at block 963,839, mined 09:16:34 UTC. Nothing here is estimated or modeled.
| Tracked cold address | Balance 16 Aug 2026 | Balance 24 Aug 2026 | What changed in eight days |
|---|---|---|---|
| 3M219KR5vEneNb47ewrPfWyb5jQ2DjxRP6 | 196,082.40 BTC | 214,225.46 BTC | Plus 18,143.06 BTC across 4 transactions |
| 34xp4vRoCGJym3xR7yCVPFHoCNxv4Twseo | 248,597.59 BTC | 248,597.59 BTC | Plus 0.0022 BTC despite 3 transactions |
| bc1qgdjqv0av3q56jvd82tkdjpy7gdp9ut8tlqmgrp... | 130,010.08 BTC | 130,010.08 BTC | Unchanged, no transactions at all |
| bc1qjasf9z3h7w3jspkhtgatgpyvvzgpa2wwd2lr0e... | 96,932.41 BTC | 96,932.41 BTC | Unchanged, no transactions at all |
| 1FzWLkAahHooV3kzTgyx6qsswXJ6sCXkSR | 0.0139 BTC | 0.0139 BTC | Unchanged, still carried on public lists |
| All five combined | 671,622.49 BTC | 689,765.55 BTC | Plus 18,143.06 BTC, an increase of 2.70% |
The two bech32 addresses are shortened above only so the table stays readable. In full they are bc1qgdjqv0av3q56jvd82tkdjpy7gdp9ut8tlqmgrpmv24sq90ecnvqqjwvw97 and bc1qjasf9z3h7w3jspkhtgatgpyvvzgpa2wwd2lr0eh5tx44reyn2k7sfc27a4, so you can verify every figure yourself. The three transfers that produced the whole move landed on 17 August at 21:11:32 UTC (4,735.68 BTC from 37 inputs), 21 August at 11:47:40 UTC (5,754.215 BTC from 97 inputs) and 23 August at 21:46:03 UTC (7,653.163 BTC from 121 inputs). Every input in all three came from one address, bc1qm34lsc65zpw79lxes69zkqmk6ee3ewf0j77s3h, which holds 8,524.23 BTC across 2,308,660 transactions and appears on no reserve list we have seen. Each transfer returned its change to that same source address and paid exactly 5.03 satoshis per virtual byte. Read together, that is one operator rebalancing between two of its own wallets, recorded by the metric as a 2.70 percent inflow.
What it handles
The indexed Bitcoin chain, queryable your way
Look up an address, a transaction, a UTXO, the rich list or an on-chain metric, by REST API, SQL or dashboard. The same authoritative data, reconciled block-by-block against the canonical chain, without running a node.
- Track exchange balance totals across any address set you define
- Read exact balances as of any block height, not just the current tip
- See the transactions that moved a reserve total, with fee rates and counterparties
- Separate internal treasury sweeps from genuine deposits and withdrawals
- Build inflow and outflow series from the underlying transfers
- Version an attribution list and measure how much each address decides
- Rebuild reserve history since the 2009 genesis block in SQL
- Join exchange balances to coin age, address type and price in one query
{
"address": "bc1qxy2k…l0wdv8",
"balance_btc": 68432.10,
"balance_usd": 4612165420,
"tx_count": 1284,
"unspent_outputs": 37,
"first_seen": "2014-02-09"
}
Why BitcoinDatabase
One platform, queryable three ways
Not a raw node to sync, not an indexer to build, and not five vendors to stitch together. The fully-indexed Bitcoin blockchain, available as a REST API, as SQL, and as dashboards, on one authoritative dataset.
REST API
Typed JSON for addresses, transactions, balances, UTXOs and metrics. Drop it into apps, wallets, explorers and agents with curl, Python or any HTTP client.
SQL access
Run SQL directly against the indexed Bitcoin dataset for ad-hoc analysis, cohorts and exports, the same data the API and dashboards read from.
Compliance-first
Informational on-chain data and analytics only. Entity labels and flow tracing are framed as tooling to support a regulated team's own review, not accusations.
Good questions
Questions about Exchange reserve data
Explore more
More ways to query Bitcoin with BitcoinDatabase
Bitcoin proof of reserves API
Verify reserve addresses, balances and control claims against the indexed chain.
Learn moreBitcoin rich list
The largest balances ranked, with labels and historical snapshots.
Learn moreBTC address balance API
Get exact balances and UTXOs for any address, in batches.
Learn moreBitcoin exchange flow API
Measure bitcoin moving into and out of exchanges: inflows, outflows and net flow.
Learn moreOn-chain metrics
Active addresses, realized cap, SOPR, HODL waves and exchange flows.
Learn moreBitcoin active addresses
Daily active address counts, historical series and entity-adjusted numbers from the indexed chain.
Learn moreStop running a node. Just query Bitcoin.
Run your first query now and get on-chain data back by REST API, SQL or dashboard, indexed from the genesis block. Informational on-chain data only, not financial advice.
Indexed from genesis · REST · SQL · dashboards · addresses, transactions, UTXOs, metrics