Supply data for stablecoin issuance platforms
What is supply data for stablecoin issuance platforms?
Supply data for stablecoin issuance platforms is one record of every mint and burn across all the coins a platform issues for its brands, on every chain, with each coin’s supply worked out from it; platforms sell the service itself as stablecoin as a service or white-label stablecoins.
The platform needs that record to report on each program and show every brand its own supply, and each new coin or chain adds contracts it has to follow.
Goldsky decodes every brand’s mints and burns, merges the chains into one stream and lands it in your warehouse, while the per-brand totals and the API your brands use stay yours.
You can build it two ways: stream every coin’s mints and burns into your warehouse with Turbo Pipelines, or run a hosted subgraph for each coin and chain that keeps supply and serves it over GraphQL.
Who uses supply data for stablecoin issuance platforms?
Stablecoin issuance platforms that run coins for other brands, including bank issuance platforms, and the branded issuers that launch coins through them, such as payments and consumer brands moving to a dollar token of their own.
How an issuance platform tracks supply across its brands
The diagram follows one brand’s mint or burn, on any chain, to the supply figure your API shows that brand. Your setup may differ.
Ways to track supply for every coin on an issuance platform
One pipeline puts every coin’s mints and burns from every chain in a single warehouse table for your SQL; with subgraphs, each coin on each chain gets its own hosted index that your brands’ API queries and adds up.
- Best for
- Many coins and chains, in one warehouse table
- Products
- Turbo
- What you run
- The destination: your database, queue or bucket, or a Postgres database Goldsky hosts
- What you write
- Pipeline YAML and SQL; TypeScript transforms when needed
- Where your data lives
- In your own database or systems
- How results reach you
- Pushed to you
- Best for
- A few coins on a few EVM chains, no warehouse
- Products
- Subgraphs
- What you run
- Nothing; Goldsky runs indexing, storage and the API
- What you write
- A schema and mapping handlers, or a no-code or low-code config for simple contracts
- Where your data lives
- Hosted by Goldsky
- How results reach you
- You query; changes are pushed
| Usual setupOption 1: Stream to your warehouse | Option 2: Hosted subgraphs | |
|---|---|---|
| Best for | Many coins and chains, in one warehouse table | A few coins on a few EVM chains, no warehouse |
| Products | Turbo | Subgraphs |
| What you run | The destination: your database, queue or bucket, or a Postgres database Goldsky hosts | Nothing; Goldsky runs indexing, storage and the API |
| What you write | Pipeline YAML and SQL; TypeScript transforms when needed | A schema and mapping handlers, or a no-code or low-code config for simple contracts |
| Where your data lives | In your own database or systems | Hosted by Goldsky |
| How results reach you | Pushed to you | You query; changes are pushed |
Register each coin and its contracts
Only contracts you know about can be followed, and each one has to map to a brand.
Keep one list of every coin, chain and contract address, with the brand it belongs to, and update it before a coin goes live. A contract with no brand attached produces supply nobody can report on.
Mint and burn each brand’s coin
Each brand’s supply changes whenever its coin is minted for a client or burned in a redemption, on any chain it’s on.
Each coin has its own contract on each chain, so a platform with many brands has many contracts to follow. A coin launched on a new chain without telling the data team is missing from supply until someone notices.
Decode and merge every chain
Handled by Goldsky TurboSupply per brand needs one stream of mints and burns from every coin and chain, each tagged with where it came from.
Every row has to carry its coin, chain, amount, block and transaction. A chain added with a different column layout breaks the merged table or drops rows without warning.
With Goldsky, a Turbo Pipelines pipeline can read each chain as its own source, decode mints and burns, and merge them with
Merge chains in one pipeline (opens in a new tab)UNION ALL, adding a constant chain column to each part.Land the history in your warehouse
Handled by Goldsky TurboReporting and the brands’ API read from the warehouse, so every event needs to be there with its history.
Keep every event from each contract’s first block, so supply can be rebuilt for any date. Delivery can repeat after a restart, so each row keeps a stable ID that your SQL counts once.
Turbo Pipelines can write the merged stream to ClickHouse, which collapses repeated rows on the
Set up the ClickHouse sink (opens in a new tab)primary_keyand applies reorg deletes, or to S3 as Parquet files partitioned by coin and chain.Total supply per brand
Each brand wants one figure: its coin’s supply across every chain.
Your SQL sums mints minus burns per coin and chain, then per brand. Checking the result against each contract’s total supply from time to time shows up a missing event or a missing chain.
Show each brand its supply
Brands check their supply, and some publish it, so the platform gives each one its own view.
Your API or dashboard reads from the warehouse and shows each brand only its own coins. Showing the same figures the platform reports to supervisors avoids two versions of one number.
What to know about streaming every coin into one warehouse
- Goldsky runs the pipeline; the warehouse, the per-brand totals and the brand-facing API are yours.
- Keeping coin contracts in a dynamic table lets a new coin on an existing chain be picked up without a redeploy; a new chain still means a new source.
- Rows carry coin, chain and block, so any brand’s figure can be traced to its events.
- In a warehouse table keyed on the row ID, reorg corrections replace the rows they affect; in append-only files they arrive as rows of their own for your SQL to apply.
Register each coin and its contracts
Only contracts you know about can be followed, and each one has to map to a brand.
Keep one list of every coin, chain and contract address, with the brand it belongs to, and update it before a coin goes live. A contract with no brand attached produces supply nobody can report on.
Mint and burn each brand’s coin
Each brand’s supply changes whenever its coin is minted for a client or burned in a redemption, on any chain it’s on.
Each coin has its own contract on each chain, so a platform with many brands has many contracts to follow. A coin launched on a new chain without telling the data team is missing from supply until someone notices.
Define the supply records
Each subgraph needs to know which events change supply and how to store them.
One schema for every coin keeps queries the same across brands: a record per mint and burn, plus a supply figure per coin. Giving each coin its own layout means your API needs separate code for each.
Index each coin on each chain
Handled by Goldsky SubgraphsEach coin’s supply comes from every mint and burn since its contract was deployed.
Indexing starts at each contract’s deployment block. A start block set too late leaves supply short without any error.
Goldsky Subgraphs runs the same mapping code for every coin, deployed with
Deploy a subgraph to Goldsky (opens in a new tab)goldsky subgraph deployonce per coin and chain, and keeps each index current as blocks arrive.Serve supply over GraphQL
Handled by Goldsky SubgraphsYour API reads each coin’s supply by querying an endpoint.
A brand’s supply data usually shouldn’t be open to anyone, so endpoints should require a key. Your API adds each coin’s chains together before showing a brand its total.
Every subgraph in Subgraphs gets a hosted GraphQL endpoint; turn on the private endpoint and each request needs an API token in the
Set up private endpoints (opens in a new tab)Authorizationheader.Show each brand its supply
Brands check their supply, and some publish it, so the platform gives each one its own view.
Your API queries each coin’s endpoints, adds up the chains and shows each brand only its own coins. If one endpoint falls behind, the total does too, so show the block each figure was read at.
What to know about tracking brand supply with subgraphs
- Each coin on each chain is its own subgraph, so the number to deploy and watch grows with every launch.
- Your API adds the chains together for each brand’s total.
- The schema and mappings decide what’s stored, and changing them means deploying and indexing again.
- Goldsky hosts the indexes and endpoints; the brand-facing API stays yours.
What you control
- Your team
- Register each coin and its contracts
- Total supply per brand
- Show each brand its supply
Security and deployment
- SOC 2 Type IIIndependently audited security controls.
- Dedicated infrastructureSingle-tenant options for production workloads.
- Data residencyCloud, on-premises or co-located.
More use cases that track supply and reserves
- Proof of reserves for stablecoinsKeep a per-chain record of mints, burns and supply, and check it against reserves.
- Stablecoin mint and redemption monitoringRecord every mint and redemption of a stablecoin as it happens, on every chain.
- Continuous proof of reservesCompare onchain supply with reported reserves on a schedule, then publish the ratio or alert on a gap.
- Daily stablecoin supply by chain for PS-01 reportsKeep the daily per-chain supply, issued, redeemed, issuer-held, frozen and lost figures that feed the weekly OCC PS-01 report.
- Month-end stablecoin supply for reserve reportsProduce the month-end supply across all chains that the monthly reserve report and its examination need.
- Stablecoin redemption spike alertsAlert when redemption requests in a single 24-hour period pass 10% of a brand’s outstanding issuance, the point at which the OCC must be told within 24 hours.
- MiCA daily usage cap for stablecoinsTrack the quarterly average of daily transactions and their value against the 1M transactions and €200M a day limits, and warn well before an issuer must stop issuing.
- Stablecoin depeg and manipulation alertsAlert the issuer when its coin trades off peg in its own pools or pool activity looks like manipulation, on every chain it runs on.
- Tokenized money market funds in stablecoin reservesTrack stablecoin reserves held as tokenized money market fund shares and check them against the reserve record.
Use cases built the same way
- Prediction market dataPackage prediction-market trades and positions into datasets for exchanges and funds.
- DAO delegate dashboards and voting power analyticsTrack voting power, delegators and votes per delegate for a token-governed DAO.
- Tokenized fund subscriptions and redemptions across chainsTrack subscriptions and redemptions of a tokenized fund as mints and burns across every chain it’s on.
- Stablecoin distributor revenue shareAttribute holdings, mints and burns to each distributor across wallets and chains.
Track supply for every coin on an issuance platform with Goldsky
We’ll map it to your systems and show you what Goldsky runs, so your team builds the product, not the pipelines underneath it.