On-Chain Proof of Holdings & Wealth API — verify wallet balances & prove reserves across 40+ chains
Prove what a wallet holds — at any block, on any chain. Bitquery sums on-chain balance updates into current and point-in-time balances, token holdings and holder proofs, so you can attest reserves, verify wealth and document source of funds with figures anyone can re-run.
query { EVM(network: eth) { BalanceUpdates( where: {BalanceUpdate: {Address: {is: "0x…"}}} ) { Currency { Symbol } balance: sum(of: BalanceUpdate_Amount) } } }
Proving what a wallet holds shouldn't take an indexing team.
Computing a verifiable balance yourself means an archive node per chain, replaying every transfer to reconstruct state, and a fresh pipeline for each token standard — and it still stops at the chain boundary. We summed the balance updates already, so a proof-grade figure is one query across every chain.
Four ways to pull holdings — one schema underneath.
Design your balance query once in GraphQL, then read the same fields as GraphQL streams, Kafka, gRPC or a bulk cloud export. Snapshot once for a report, or watch balances move in real time.
Every kind of balance, decoded into one feed.
A single BalanceUpdates query with sum(of: BalanceUpdate_Amount) reconstructs any balance — current or point-in-time, native or token, one chain or many — with the full update history behind it for audits.
Every balance dataset, one GraphQL endpoint.
From a wallet's live balance to a block-exact proof snapshot and a full holder ranking, the entire holdings surface is one endpoint — no archive node, no per-token indexer. Each dataset is historical and streamable over WebSocket, Kafka or gRPC.
Wallet Balances API
Current native and token balances for any address across 40+ chains — summed from on-chain balance updates, USD-priced.
Read the docs →HistoryHistorical Balance API
Point-in-time balance for any wallet at any block or date — the auditable core of proof-of-reserves and source-of-funds reports.
Read the docs →PortfolioToken Holdings API
A wallet's full ERC-20 and SPL portfolio in one query, each position valued in USD and ranked by size.
Read the docs →ProofProof Snapshot API
Attest a balance at an exact block — a reproducible, third-party-verifiable figure auditors and banks can re-run themselves.
Read the docs →HoldersHolder Verification API
Confirm an address holds a token and rank every holder by balance — verify ownership and concentration at scale.
Read the docs →Cross-chainCross-chain Holdings API
Roll up one entity's wallets across EVM chains and Solana into a single net-worth attestation, on one schema.
Read the docs →The proof products people ship on us.
Each one is a filter on the same indexed balance updates — snapshot once for a report, or subscribe over Kafka and gRPC to keep it live.
Proof-of-reserves attestation
Sum a custodian's wallets at a fixed block to produce a reserves figure auditors and users can independently re-run against the chain.
where: { Block: { Number: { le: "19000000" } } }
Wealth & source-of-funds report
Pull a wallet's full holdings plus the balance-update history behind them, USD-valued, to document how the funds were accumulated.
balance: sum(of: BalanceUpdate_Amount)
Net-worth across every chain
Roll one entity's wallets across EVM chains and Solana into a single attested net-worth figure — one schema, no per-chain glue.
usd: sum(of: BalanceUpdate_AmountInUSD)
}
What teams say about our data
"We did a thorough search of the market for the best onchain data. Bitquery came out on top — and now powers all live prices across Nansen. We don't think of them as a vendor. They're a partner."
Bitquery does the hard work of parsing blockchain transaction data into a usable form so that we don't have to. We use their interface to diagnose issues with complex transactions and their analytics as a starting point for our own.
They proved they had the technology to deliver sophisticated data solutions. We extended our support through the Binance X fellowship — building an open-source library of visualization widgets on their blockchain data.
The complex raw data is available at different levels of detail and from different viewpoints — whether we need simple aggregated transfers or parameters for failed contract calls. The support is responsive, friendly and quick.
Partnering with Bitquery has been highly cost-effective — leveraging their established infrastructure rather than building our own let us rapidly expand our blockchain support and reach a much broader segment of on-chain users.
Bitquery's products are very intuitive and easy to use. We currently use their products to obtain DEX-related trading and liquidity information, which saves us the manpower and tedious technical details required to develop our own system. Their excellent technical team deserves special praise; they provide near-24/7 support and resolve issues quickly. I greatly appreciate their products and work ethic.
Bitquery provides the infrastructure we rely on every day. Fast, reliable, and comprehensive across the chains that matter to our business.
Start free. Scale when you ship.
Query every blockchain on every plan — no chain is paywalled. Move to commercial when you need volume, SLAs and bulk datashares.
- All blockchains, all plans
- 10 requests / minute
- 2 streams for testing
- GraphQL IDE access
- Scalable calls, no throttling
- SQL, Cloud, Kafka & more
- 24/7 engineering access
- Dedicated onboarding & SLA
- Snowflake, BigQuery, S3, Azure
- No setup or infrastructure
- Structured for AI agents & MCP
- Audit data for custodians
Proof-of-holdings questions, answered.
How do I prove a wallet's balance with Bitquery?
Can I get a wallet's balance at a past block or date?
Which chains and tokens are supported?
Can I total one entity's holdings across multiple chains?
Is this suitable for proof-of-reserves and audits?
Can I stream balance changes in real time?
Prove your holdings this week.
Free API key, every chain unlocked, no archive node to run. Snapshot a wallet's balance at any block and stream live changes in your first call.