Skip to main content

Stablecoin Balance API

Bitquery's stablecoin APIs return real-time transfers, trades, prices and balances across chains. The queries below look up the stablecoin balance of an address on Solana, Ethereum and Tron.

Stablecoin Balance of an Address​

Solana​

The query below returns the FDUSD balance of 9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM on Solana. It reads V2 BalanceUpdates, which keep about 8 hours of balance changes, so it returns nothing for an address whose balance has not changed in that time. Run the FDUSD balance query in the IDE.

query MyQuery {
Solana {
BalanceUpdates(
where: {BalanceUpdate: {Account: {Owner: {is: "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"}}, Currency: {MintAddress: {is: "9zNQRsGLjNKwCUU5Gq5LR8beUCPzQMVMqKAi3SSZh54u"}}}}
orderBy: {descendingByField: "BalanceUpdate_Balance_maximum"}
) {
BalanceUpdate {
Balance: PostBalance(maximum: Block_Slot)
Currency {
Name
Symbol
}
}
}
}
}

Ethereum​

The query below returns the USDT and USDC balances of 0xF977814e90dA44bFA03b6295A0616a897441aceC on Ethereum. Without the Currency filter, Balances returns every token the address holds, airdropped spam tokens included.

query {
EVM(network: eth, dataset: combined) {
Balances(
where: {
Balance: {
Address: {
is: "0xF977814e90dA44bFA03b6295A0616a897441aceC"
}
}
Currency: {
SmartContract: {
in: [
"0xdac17f958d2ee523a2206206994597c13d831ec7"
"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"
]
}
}
}
) {
Currency {
Symbol
SmartContract
}
Balance {
Amount(selectWhere: { gt: "0" })
AmountInUSD
}
}
}
}

Tron​

Below query will give you USDT balance for address TUTQj7VJ1QjR3t2GJByvrP25yZNFcj38VJ on Tron.

query MyQuery {
Tron(dataset: combined) {
Balances(
where: {Balance: {Address: {is: "TUTQj7VJ1QjR3t2GJByvrP25yZNFcj38VJ"}}, Currency: {SmartContract: {is: "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t"}}}
) {
Currency {
Name
}
Balance {
Address
Amount(selectWhere: {gt: "0"})
}
}
}
}

More balance examples for EVM chains are on the EVM Balance API page.

Holder examples for EVM chains are on the Token Holder API page.

Top Holders of a Stablecoin on Solana​

Bitquery does not serve a complete top-holder list for USDC or USDT on Solana, so this section has no query. The two Solana APIs fall short in different ways:

  • V2 BalanceUpdates keeps about 8 hours of balance changes, so a holder list built from it leaves out every account that did not move in that time. On 9 October 2026 such a query found 6 of the 10 largest USDC token accounts, even though it returned 25,000 rows.
  • V1 transfers cover the full history, but a balance needs every transfer since the token was first minted. V1 refuses a USDC holder query that starts in October 2020: it estimates 274 billion rows to read, and its estimated run time is over the 2,000-second limit. On 7 October 2026 alone, 552,152 addresses received USDC, so one day of history already needs at least 23 requests of 25,000 rows each.
Build with Bitquery

Ready to run this in production?

Get an API key and run these queries in minutes, or talk to us about plans and enterprise delivery.