stablecoins.core.supply_daily table gives a daily snapshot of total supply for every tracked stablecoin deployment, alongside two circulating supply figures with different levels of adjustment, and registry metadata (issuer, peg mechanism, stablecoin type) joined in.
Unique Key: date, chain, token_address
Table Columns
Sample Query
Compare an issuer’s reported-style circulating supply against Allium’s adjusted circulating supply for a single productWhy adjusted_circulating_supply differs from other providers
Most third-party aggregators (issuer transparency pages, DeFiLlama, CoinGecko) publish a single “circulating supply” figure that is calculated as:
circulating_supply, and it should reconcile with those sources within a few percent. adjusted_circulating_supply is a second, more conservative figure that most providers don’t compute at all: it removes an additional layer of supply that is technically outstanding (it still counts toward total_supply) but is economically inert — locked away where it cannot trade or move without first passing through another contract.
Because this extra layer isn’t subtracted by most other sources, Allium’s
adjusted_circulating_supply is expected to run lower than the
“circulating supply” reported elsewhere for the same token. That is by design,
not a data quality issue.The two exclusion layers
The non-issuer-basis layer covers supply that is still sitting in the
totalSupply() count, but isn’t free-floating:
- Bridge escrows — when a stablecoin is bridged with a lock-and-mint design, the locked tokens on the source chain back a wrapped copy on the destination chain. They can’t move again until the wrapped copy is burned, so they aren’t part of the tradeable float.
- Stablecoin/protocol collateral — tokens locked inside another stablecoin’s minting contract (e.g. USDC backing USDe) or a DeFi protocol’s treasury/reserve. These are committed to backing something else, not available to trade.
- Savings-vault deposits — the underlying token held inside a yield-bearing wrapper for that same token (e.g. USDS inside sUSDS). The vault is a large holder, not an end user.
- Frozen / banned addresses — balances the issuer has blacklisted. Still counted in
totalSupply(), but permanently inaccessible.
stablecoins.core.supply_daily surfaces only the two final supply figures (circulating_supply and adjusted_circulating_supply) — it does not expose a separate exclusion-amount or per-address breakdown column. None of the excluded supply is “missing” — it all still exists on-chain and is included in total_supply. Allium just separates out the portion that is contractually or technically committed elsewhere, to answer a different question than “what has been minted”: what supply is actually free to trade in markets right now?
When to use which column
- Use
circulating_supplywhen reconciling against an issuer’s published circulating supply, CoinGecko, or DeFiLlama’s default figure. - Use
adjusted_circulating_supplywhen you need the real, tradeable float — for example, market-cap-to-float ratios, liquidity analysis, or any use case where bridge-locked or collateral-locked supply would overstate what’s actually available.
Legacy Schema
Legacy Schema
crosschain.stablecoin.supply_beta is deprecated in favor of stablecoins.core.supply_daily above. It was never documented on this site; it exposed total_supply/circulating_supply/non_circulating_supply (plus USD variants) at a date, chain, token_address grain, without the adjusted-circulating-supply methodology described above.