Daily Yields
This guide outlines how to retrieve daily yield accrual data for various stablecoins using our GraphQL API. Depending on the stablecoin, yield values can be queried as aggregated data for specific stablecoins or for individual holders.
Aggregated Yield Data by Stablecoin
For most of our stablecoins, we provide aggregated yield and supply data per chain. This includes chain-specific queries with a prefix for other stablecoins.
The snippets below use Metamask USD (mUSD) as an example. You can find all supported stablecoins and chain prefixes below
Aggregated data
# Fetches aggregated data for mUSD on Mainnet, Linea, and BSC
query GetMusdStablecoin {
mainnet: musd_mainnet_stablecoins {
id
claimed
minted
accruedYield
supply
lastUpdate
}
linea: musd_linea_stablecoins {
id
claimed
minted
accruedYield
supply
lastUpdate
}
bsc: musd_bsc_stablecoins {
id
claimed
minted
accruedYield
supply
lastUpdate
}
}You can also get daily snapshots for yield and supply for these stablecoins.
Daily Yield Snapshots
# Fetches daily yield snapshots for mUSD on Mainnet
query GetMusdDailyYields {
musd_mainnet_yieldStats_collection(interval: day) {
id
timestamp
amount
blockNumber
}
}Daily Supply Snapshots
# Fetches daily supply snapshots for mUSD on Mainnet
query GetMusdDailySupply {
musd_mainnet_supplyStats_collection(interval: day) {
id
timestamp
amount
blockNumber
}
}Supported Stablecoins and Prefixes
The following table lists the stablecoins that support prefixed queries and the corresponding prefixes for each chain.
| Stablecoin | Ticker | Prefixes |
|---|---|---|
| USDhl | USDHL | usdhl_hyperevm_ |
| Braid Dollar | USDZ | usdz_mainnet_, usdz_arbitrum_ |
| Dfns Rewards | 0fns | dfns_mainnet_ |
| Startale USD | USDSC | usdsc_soneium_ |
| MANTRA USD | mantraUSD | mantrausd_mantra_ |
| Metamask USD | mUSD | musd_mainnet_, musd_linea_, musd_binance_ |
| Daylight USD | GRID | grid_plasma_ |
Yield Snapshots on Ethereum
For stablecoins like Noble Dollar (USDN), Wrapped $M ($wM), Usual (UsualM), and USDai, use the MHolderSnapshots and
MHolders queries that return yield information for $M Earners on Ethereum.
For Noble Dollar (USDN)
This query returns daily snapshots of accrued yield for a given USDN holder. You can specify a starting date with the
from parameter. If from is omitted, it defaults to the last 30 days.
# Fetches daily yield snapshots for a USDN holder
query UsdnYieldSnapshots($address: String!, $from: String) {
MHolderSnapshots(address: $address, from: $from) {
balance
accruedYield
timestamp
principal
}
}Example: Get accrued yield snapshots for a USDN holder since April 1st, 2025.
{
"address": "0x83Ae82Bd4054e815fB7B189C39D9CE670369ea16",
"from": "2025-04-01"
}To get only the current values for USDN holders, you can use the MHolders query.
# Fetches current yield values for the top 100 USDN holders
query GetUsdnHolders {
MHolders(first: 100) {
address
balance
accruedYield
}
}For Wrapped $M ($wM) / Usual (UsualM)
This query returns daily snapshots of accrued yield for a given wM holder. Like the previous query, it supports the
from parameter and defaults to the last 30 days if omitted.
# Fetches daily yield snapshots for a wM holder
query WmYieldSnapshots($address: String!, $from: String) {
WMHolderSnapshots(address: $address, from: $from) {
balance
accruedYield
timestamp
principal
}
}Example: Get accrued yield snapshots for a wM holder since April 1st, 2025.
{
"address": "0x4Cbc25559DbBD1272EC5B64c7b5F48a2405e6470",
"from": "2025-04-01"
}For USDai on Arbitrum
This query retrieves current yield values for USDai holders on Arbitrum.
# Fetches current yield values for USDai holders on Arbitrum
query GetUsdaiArbitrumData {
WMHoldersArbitrum {
address
balance
accruedYield
claimedYield
unclaimedYield
}
}Yield Snapshots on Solana
Use MSolanaYieldSnapshots to retrieve daily yield snapshots for $M earners on Solana.
# Fetches daily yield snapshots for all $M earners on Solana
query GetMSolanaDailyYields {
MSolanaYieldSnapshots {
address
dayTimestamp
balance
accruedYield
earned
}
}The address and date filters are optional. For date ranges, use day_timestamp_gte and day_timestamp_lte.
# Fetches daily yield snapshots for a specific holder in a time range
query GetMSolanaDailyYieldsForAddress($address: String!, $from: String!, $to: String!) {
MSolanaYieldSnapshots(address: $address, day_timestamp_gte: $from, day_timestamp_lte: $to, orderDirection: desc) {
address
dayTimestamp
balance
accruedYield
earned
fromTs
}
}All timestamps are in seconds.
address: is the earner's Solana addressdayTimestamp: timestamp for the day entrytimestamp: timestamp at which theearnedvalue got calculatedearned: yield accrual betweenfromTstotimestampvalueaccruedYield: total earnings
Example holder: USDKY BVo3...eVjc
{
"address": "BVo36cZqxD6KUJGhHPZvBDPbe1Q5fR7ekYDj1mbReVjc",
"from": "2025-01-01",
"to": "2025-01-31"
}Supported Solana earners
Currently, the query above will provide information for the following earners
| Earner | Vault's token account |
|---|---|
| USDKY | BVo36cZqxD6KUJGhHPZvBDPbe1Q5fR7ekYDj1mbReVjc |
| USDK | EHNaRY1ZdtaoPVMqE3TW6pacACzEoU1e9V1ToLyavowN |
| wM | 7upNeuSPSpinN7zzEsrxMe6p3N6tMub67dkkm5LFBTvp |
| USD+ | 67GWo9en5KtPfeZn5LWrCyhL2w31rf1oqeCoszPUKsAs |
| XO | GeBTfYujk4JLr2MBCZznMTLTGch1QrUyYcMKen4KUFU2 |

