BitcoinDatabase.com
All posts
Buyer guides

Best Bitcoin Exchange Reserve Data API for Trading Desks and Risk Teams

We re-measured five widely reported exchange cold addresses eight days apart. They gained 18,143.06 BTC, an apparent 2.70 percent inflow, and four of the five never moved. The whole increase was three sweeps out of one hot wallet that is not on the reserve list, each returning change to the source at an identical 5.03 sat/vB. What to check before you buy reserve data, with vendor API access and pricing verified first-hand.

By the BitcoinDatabase team

August 2026 · 9 min read

Query Console
btc
try:

Hit Run to query the fully-indexed Bitcoin blockchain.

BTC

30-day trend

informational on-chain data · not financial advice

REST API · SQL · dashboards, one indexed dataset. Querying the indexed Bitcoin blockchain ...

The short answer

For a trading desk or a risk team, the best Bitcoin exchange reserve data API is whichever one lets you see the address list and the transactions underneath the number, because the number on its own is close to meaningless. We measured five widely reported exchange cold addresses on 16 August 2026 and again on 24 August 2026. They went from 671,622.49 BTC to 689,765.55 BTC, an apparent inflow of 18,143.06 BTC in eight days. Four of the five addresses did not move. The entire increase came from three sweeps out of one hot wallet that is not on the reserve list, with the change returned to that same wallet and an identical 5.03 satoshi per virtual byte fee on each transfer. No bitcoin entered anyone's control. If your desk trades on reserve prints, that is the failure mode to buy against.

Exchange reserve data gets bought for one of two jobs. Either a desk wants an early read on supply moving toward or away from venues where it can be sold, or a risk and treasury team wants to know how much of an exchange's stated holdings it can see on chain from exchange reserve and exchange balance data. Both jobs are legitimate. Both are badly served by a single aggregate line on a chart, and the reason is structural rather than a quality problem at any particular vendor.

A reserve figure is two components multiplied together. The first is arithmetic over the chain, summing unspent outputs at a set of addresses, which is exact and which nobody gets wrong. The second is an attribution list: somebody decided which addresses belong to exchanges. That list is inference, it is almost never published, and it carries essentially all of the disagreement between providers. You are not buying a measurement. You are buying somebody's opinion about ownership, with arithmetic applied to it.

What an eight day re-measurement actually showed

We track the same five addresses across runs specifically so the deltas are comparable, and the first reading of this set explains why those five and not others. The 16 August reading was taken at block 962,803 and the 24 August reading at block 963,839, mined at 09:16:34 UTC. Both readings were cross-checked against a second independent explorer, which agreed to the satoshi on all five addresses, so there is no measurement dispute to argue about here.

Tracked address16 Aug 202624 Aug 2026Change
3M219KR5vEneNb47ewrPfWyb5jQ2DjxRP6196,082.40214,225.46Plus 18,143.06 BTC, 4 txs
34xp4vRoCGJym3xR7yCVPFHoCNxv4Twseo248,597.59248,597.59Plus 0.0022 BTC, 3 txs
bc1qgdjqv0av3q56jvd82tkdjpy7gdp9ut8tlqmgrp...130,010.08130,010.08No transactions
bc1qjasf9z3h7w3jspkhtgatgpyvvzgpa2wwd2lr0e...96,932.4196,932.41No transactions
1FzWLkAahHooV3kzTgyx6qsswXJ6sCXkSR0.01390.0139No transactions
All five combined671,622.49689,765.55Plus 18,143.06 BTC (2.70%)

Balances are in BTC. The two bech32 addresses are shortened for the table only; in full they are bc1qgdjqv0av3q56jvd82tkdjpy7gdp9ut8tlqmgrpmv24sq90ecnvqqjwvw97 and bc1qjasf9z3h7w3jspkhtgatgpyvvzgpa2wwd2lr0eh5tx44reyn2k7sfc27a4, so every figure above is yours to check.

Read the table row by row and the aggregate falls apart as a signal. A 2.70 percent eight day increase sounds like a trend. It is one address. Three of the five recorded no activity whatsoever, and the largest address in the set, holding 36 percent of the total, saw three transactions that between them changed its balance by about two thousandths of a bitcoin.

The three transactions that were the whole move

Every satoshi of the increase arrived in three transfers, on 17 August at 21:11:32 UTC, 21 August at 11:47:40 UTC, and 23 August at 21:46:03 UTC. They moved 4,735.68, 5,754.215 and 7,653.163 BTC respectively. A fourth transaction on 19 August moved 546 satoshis, which is the dust threshold and not a treasury operation.

The three real ones share a fingerprint that is hard to read any other way. Each pulled a batch of native SegWit outputs, 37 then 97 then 121 of them, from one single address. Each paid a round number into the cold address we track. Each returned its change to that same source address. And each paid an identical 5.03 satoshis per virtual byte, which is a configured fee policy rather than three independent decisions made in three different market conditions.

The source address is bc1qm34lsc65zpw79lxes69zkqmk6ee3ewf0j77s3h. It holds 8,524.23 BTC across 2,308,660 transactions, which is the shape of a busy deposit and hot wallet rather than anything a person operates. It is on no reserve list we have seen. So one operator moved coins from a wallet nobody was counting into a wallet somebody was counting, and the metric recorded a 2.70 percent inflow for an internal transfer.

Note the reverse case is equally true and less visible. Had the hot wallet been on the list from the start, those three transfers would have netted to zero and the eight days would have looked completely flat. The same chain, the same operator, the same behavior, and two opposite readings depending only on which addresses somebody wrote down.

What to check before you buy exchange reserve data

Five questions, in the order they tend to matter.

Can you see the address list? If not, you cannot audit a print, you cannot reproduce a historical series, and you cannot tell a re-attribution from a real flow. A vendor quietly adding an address to its list produces a step change indistinguishable from a large deposit.

Can you query at a block height rather than a date? Daily sampling turns a single sweep into what looks like a session's worth of flow. The three transfers above landed at 21:11, 11:47 and 21:46 UTC on three different days, and a daily snapshot places each of them wherever the sampling boundary happens to fall.

Do you get the transactions, or only the aggregate? This is the one that separates a data product from a chart. Without the underlying transfers you cannot see input counts, fee rates or change destinations, and those are exactly the fields that showed the move above to be internal.

What resolution does your tier actually include? Several vendors gate block level or intraday resolution well above the entry API tier, so the plan you can afford may only answer daily.

Is API access included at all? Often it is not, at the price you first see.

How the main providers compare

Everything below was checked directly, with the date it was checked. Pricing changes, so treat the dates as part of the fact.

ProviderReserve and exchange balance coverageAPI access and price when checkedChecked
CryptoQuantExchange flows and reserves are its signature product, with the broadest per-venue breakdown of anyone here. This is the category leader for the metric itselfAPI access starts at Professional, 109 dollars monthly or 99 dollars a month billed yearly, and that tier is day resolution only. Block level API and 800 requests a minute start at Premium, 799 dollars a month, annual only16 Aug 2026
GlassnodeLong, well documented exchange balance series with a strong methodology write-up and deep historyThe 49 dollar Advanced plan, billed annually, does not include API access. Professional has no published price and states API access is an optional add-on chosen when configuring the plan21 Aug 2026
CoinGlassExchange balance charts across many venues, widely referenced in trading coverageKey required. Worth knowing for your error handling: an unauthenticated call to its v4 exchange balance endpoint returned HTTP 200 with a body of code 401 and the message API key missing, so the HTTP status will not tell you the request failed24 Aug 2026
Coin Metrics, now TalosRigorous, heavily documented network data with a serious research reputationcoinmetrics.io now returns HTTP 301 to talos.com, where there is no published pricing and the only path is a demo request. Documentation remains at docs.coinmetrics.io21 Aug 2026
Blockstream Esplora and mempool.spaceNo reserve product and no attribution at all. Per-address balances only, which is what we used above. Both agreed to the satoshi on all five addressesFree, no key, undisclosed rate limits enforced with HTTP 429. You supply the address list and the arithmetic yourself24 Aug 2026
BitcoinDatabaseNo pre-baked venue attribution. Exact balances for any address at any height, the transactions behind every change, and your own address set as a first-class inputREST and SQL over the indexed chain. SQL is available from the Growth plan and up and costs more credits than a REST lookup24 Aug 2026

The honest summary is that CryptoQuant and Glassnode will give you a better ready-made reserve series than we will, because building and maintaining venue attribution is most of their product and none of ours. If what you want is a chart of exchange balances per venue tomorrow morning, buy one of those. What they will not give you is the address list, and therefore the ability to audit a print like the one above. Those are different purchases and it is worth being clear which one you are making.

Why reserves and proof of reserves are not the same thing

These get conflated constantly, including in coverage that should know better. Exchange reserves is an outside estimate of what a set of addresses appears to hold, assembled by people with no access to the exchange. Proof of reserves is something the exchange itself performs, typically signing messages from addresses it controls and publishing a cryptographic commitment to customer balances so that individual customers can check their inclusion.

The practical difference is liabilities. Reserves counts assets and stops. Proof of reserves is an attempt, imperfect and usually unaudited, to show assets against what is owed. A venue can have rising reserves and deteriorating solvency at the same time, and no amount of address watching will reveal that. Treat a reserve number as a supply observation, never as a solvency signal.

Building the series yourself

If you have decided you want the address list under your control, the work is smaller than it sounds. You need per-address balances at arbitrary block heights, the transactions that changed them, and a place to keep your own attribution set so it can be versioned and reviewed. That is a query problem rather than an infrastructure problem once the chain is already indexed, which is what SQL access over the Bitcoin chain is for.

The operational discipline that matters more than the tooling is treating your attribution list as a dataset with its own change history, because a list edit and a market move produce the same shape in the output. Teams that already run freshness and anomaly monitoring over their data pipelines tend to catch this quickly, since an unexplained step change in a series is exactly the pattern that tooling is built to flag. Everyone else finds out when somebody trades on it.

From there, the same joins that produce a reserve total, or an exchange inflow and outflow series, also produce the checks that keep it honest: input counts and change destinations to spot internal sweeps, fee rates to spot automated treasury scripts, and coin age to separate long-held supply from coins that arrived last week.

What we would tell a desk buying this week

Buy the ready-made series if you need coverage across many venues and you accept the attribution on trust. Buy the underlying data if a reserve print can move a position, because then you need to be able to answer the question the aggregate cannot: was that a deposit, or was that somebody's treasury script tidying up on a Sunday evening at 5.03 satoshis per virtual byte.

Most desks eventually want both, and the sequencing matters less than knowing which number you are looking at. What does not work is treating a single reserve line as a clean measurement of supply on exchanges. It is an opinion about ownership with arithmetic on top, and the arithmetic was never the uncertain part.

This is informational on-chain data and analytics. Nothing here is financial, investment or trading advice.

Query the Bitcoin blockchain yourself

Pull balances, UTXOs, transactions, on-chain metrics and fund flows from the fully indexed Bitcoin blockchain by REST API, SQL and dashboards. Indexed since 2009, new blocks within seconds, no node to run.

Keep reading

More from the BitcoinDatabase blog

Buyer guides

Best Bitcoin Address API for Wallet and Exchange Engineering Teams

Tested first-hand: no major Bitcoin address API returns the script type, and three of them disagree on the genesis address balance by over 50 BTC. What wallet and exchange backends should check before they buy, plus the address type distribution of block 963,670 measured four ways.

Read
Buyer guides

Best Bitcoin On-Chain Data API for Quant Research Teams

For research work the deciding factor is reproducibility, not metric count. Checked first-hand on 21 August 2026: Glassnode's 49 dollar Advanced plan does not include API access and its Professional tier has no published price, while coinmetrics.io now 301-redirects to Talos with pricing behind a demo request. Plus why a fixed adjustment factor for on-chain volume breaks: two blocks six days apart needed corrections of 17.03x and 4.87x.

Read
Data guides

Bitcoin Exchange Reserves: What the Number Actually Measures

No exchange publishes its reserve figure. Every chart you have seen is the sum of addresses a provider believes an exchange controls, and that list is never shown to you. We measured five widely reported exchange cold addresses on 16 August 2026 at block 962,803: they held 671,622 BTC, one address was 37 percent of the total, and a sixth that public lists still carry has held 0.0139 BTC since December 2022.

Read
Compliance

What Is Proof of Reserves? Merkle Trees and Exchange Solvency

Proof of reserves is a check that a crypto exchange holds enough assets to cover customer balances. How the Merkle tree commitment works, how to verify reserve addresses on-chain yourself, and what the method still cannot prove.

Read

Query the whole Bitcoin blockchain

BitcoinDatabase indexes the public Bitcoin blockchain block by block and returns balances, UTXOs, transactions, on-chain metrics and fund flows by REST API, SQL and dashboards, with no node to run.

REST + SQL + dashboards · indexed since 2009 · new blocks within seconds

Informational on-chain data only · not financial, investment or legal advice · AML features are compliance tooling to support your own review.