Skip to main content

Month-end stablecoin supply for reserve reports

What it is

A stablecoin reserve report token schedule is the month-end count of tokens outstanding on every chain: the supply side of the monthly reserve report, which some call the stablecoin attestation report.

Under the GENIUS Act, a registered accounting firm examines that report each month and the issuer’s CEO and CFO certify it, so each chain’s figure has to trace back to a specific block; the weekly PS-01 report, on forms the OCC revised in October 2026 subject to OMB approval, is a separate filing.

New York’s DFS asks the same of the stablecoins it supervises: at least once a month, an independent CPA attests to the end-of-day count of outstanding units on the last business day and on one randomly chosen day.

Goldsky finds the last block before month end on each chain and reads total supply from the token contract, while the reserve holdings, the examination and the certification stay with your custodians, your accounting firm and your executives.

You can build it two ways: keep a supply history in your warehouse with Turbo Pipelines and read it at the month-end block, or find that block with Feeds and read total supply once per chain over Edge RPC.

Who it’s for

Payment stablecoin issuers, the platforms that issue coins for other brands, and the finance teams that prepare their monthly reserve reports.

How a month-end token schedule is produced

The diagram follows one month, from the supply changes on each chain to the report your CEO and CFO certify. Your setup may differ.

Goldsky, step 2: TurboRead supply at each changeTotal supply at each mint’s or burn’s block
Blockchains, step 1: Supply changesMints and burns all month
Your business, step 4: Close the monthYour reporting calendar hits month end
Goldsky, step 3: TurboKeep the supply historyPer chain, in your warehouse
Goldsky, step 5: FeedsFind the month-end blockThe last block before midnight, per chain
Your business, step 6: Read month-end supplyLatest figure at that block, summed
Your business, step 7: CustodianReport the reservesYour custodian states month-end holdings
Your business, step 8: Accounting firmExamine the reportA registered accounting firm tests it
Your business, step 9: Certify and publishYour CEO and CFO sign it
  • Goldsky
  • Your provider

Ways to produce a stablecoin reserve report token schedule

The pipeline stores supply at every mint and burn, so any date’s figure can be traced and read again; month-end RPC reads give one figure per chain, which your team stores.

Best for
A traceable supply history, readable at any date
Products
TurboFeeds
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
Month-end figures from a short script, no pipeline
Products
FeedsEdge
What you run
Your own client code
What you write
JSON-RPC calls, and the decoding of what comes back
Where your data lives
Read from the chain
How results reach you
Returned when you call

Option 1: Produce a reserve report token schedule from a streamed supply history

A pipeline reads your token’s total supply at the block of every mint and burn on each chain and keeps that history in your warehouse. At month end you find each chain’s last block before the cut-off and take the latest supply figure at or before it.

When to keep a supply history for the reserve report

Your examiners want to see how supply moved through the month, or you need figures for dates other than month end, and you already run a warehouse.

What you’ll need

  • Goldsky Turbo
  • Goldsky Feeds
  • Your token’s contract address on each chain
  • A data warehouse
  • Custodian statements of month-end reserve holdings
  • A registered accounting firm to examine the report
  1. Mint and burn tokens through the month

    Supply on each chain moves every time tokens are minted or redeemed.

    Each chain records its own changes, and a token can be on several. For a short time the newest blocks can still be rewritten, so figures near the cut-off should be read once those blocks have settled.

  2. Read supply at every change

    Handled by Goldsky Turbo

    Reading the contract’s total supply at the block of each mint and burn gives an exact figure for any point in the month.

    Each reading is tied to its block and chain and taken from the contract itself, so it matches what the examiner can check on the chain. A reading that fails has to be retried or flagged, not left blank.

    A Turbo Pipelines transform can call _gs_eth_call with totalSupply()(uint256) at each mint’s or burn’s block number, so every row carries the supply right after that change.

    Read contract state at a block (opens in a new tab)
  3. Keep the supply history

    Handled by Goldsky Turbo

    The month-end figure is read from this history, so every reading needs to sit in your warehouse.

    Store chain, block, time and supply for each change. A history with gaps means some month-end figure can’t be traced to a reading.

    Turbo Pipelines can write the readings to S3 as Parquet files, partitioned by chain and date with partition_columns, for your warehouse to query.

    Write Parquet files to S3 (opens in a new tab)
  4. Close the month

    The report is cut at a fixed time on the last day of the month, set by your reporting calendar.

    Fix the cut-off time and time zone in writing before the month starts. Two teams cutting at different hours produce two different figures for the same report.

  5. Find the month-end block on each chain

    Handled by Goldsky Feeds

    Each chain has its own block times, so the cut-off has to become a block number per chain.

    The right block is the last one at or before the cut-off. Using the first block after it pulls the next month’s mints and burns into this month’s figure.

    Goldsky’s Feeds Blocks endpoint returns that block: call it with timestamp_lte set to the cut-off, sort=number_desc and limit=1.

    Turn a timestamp into a block (opens in a new tab)
  6. Read month-end supply

    The schedule’s figure for each chain is its supply at that chain’s month-end block.

    Take the latest reading at or before the block on each chain, then add the chains up. Keep the block numbers with the figures, since the examiner checks supply at those blocks.

  7. Get month-end reserves from your custodians

    The other side of the report is the cash and securities that back the tokens, held by banks and custodians.

    Each custodian states its holdings at the same cut-off as the token schedule. A statement dated a day off makes the report compare figures from two different moments.

  8. Have the report examined

    A registered accounting firm tests the report before it’s published.

    The firm checks the token schedule against the chain at the stated blocks, and the reserves against custodian records. Every figure it can’t trace becomes a question that holds up the report.

  9. Certify and publish the report

    The issuer’s CEO and CFO certify the report before it’s published.

    They certify what the examined report shows, so any late change goes back through the examination. Listing the block used on each chain lets readers repeat the supply figures.

What to know about keeping a supply history for the reserve report

  • Every supply change is stored with its block, so a month-end figure can be rebuilt and checked again at any time.
  • Goldsky runs the pipeline; the warehouse, the month-end query and the cut-off rules are yours.
  • If your warehouse table isn’t keyed on the row ID, reorg corrections arrive as rows of their own and the month-end query has to apply them.
  • The month-end block comes from a separate lookup per chain, so its cut-off has to match your reporting calendar.

Option 2: Produce a reserve report token schedule with month-end RPC reads

At month end you find each chain’s last block before the cut-off with the Blocks feed, then read total supply at that block over RPC. A handful of reads per chain gives the schedule, with no pipeline to run.

When to read month-end supply over RPC

You need only the month-end figures, your token is on EVM chains the Blocks feed covers, and an analyst or a short script can run the reads each month.

What you’ll need

  • Goldsky Feeds
  • Goldsky Edge
  • Your token’s contract address on each chain
  • A short script or notebook to run the reads
  • Somewhere to store the figures and the blocks they came from
  • Custodian statements of month-end reserve holdings
  • A registered accounting firm to examine the report
  1. Mint and burn tokens through the month

    Supply on each chain moves every time tokens are minted or redeemed.

    Each chain records its own changes, and a token can be on several. For a short time the newest blocks can still be rewritten, so figures near the cut-off should be read once those blocks have settled.

  2. Close the month

    The report is cut at a fixed time on the last day of the month, set by your reporting calendar.

    Fix the cut-off time and time zone in writing before the month starts. Two teams cutting at different hours produce two different figures for the same report.

  3. Find the month-end block on each chain

    Handled by Goldsky Feeds

    Each chain has its own block times, so the cut-off has to become a block number per chain.

    The right block is the last one at or before the cut-off. Using the first block after it pulls the next month’s mints and burns into this month’s figure.

    Goldsky’s Feeds Blocks endpoint returns that block: call it with timestamp_lte set to the cut-off, sort=number_desc and limit=1.

    Turn a timestamp into a block (opens in a new tab)
  4. Read total supply at the month-end block

    Handled by Goldsky Edge

    The contract’s total supply at the month-end block is the figure for that chain.

    Read it at the exact block number, not at the latest block, so the figure can be repeated. A read taken later in the day includes mints and burns from the new month.

    Edge RPC responds to eth_call for totalSupply() with the month-end block number as blockNumber, one call per chain.

    Call eth_call at a block (opens in a new tab)
  5. Add up and store the schedule

    The schedule is each chain’s figure plus the total, kept with the blocks they came from.

    Store the chain, block, time and supply for every read, then the sum. If the reads live only in a script’s output, the examiner has nothing to trace.

  6. Get month-end reserves from your custodians

    The other side of the report is the cash and securities that back the tokens, held by banks and custodians.

    Each custodian states its holdings at the same cut-off as the token schedule. A statement dated a day off makes the report compare figures from two different moments.

  7. Have the report examined

    A registered accounting firm tests the report before it’s published.

    The firm checks the token schedule against the chain at the stated blocks, and the reserves against custodian records. Every figure it can’t trace becomes a question that holds up the report.

  8. Certify and publish the report

    The issuer’s CEO and CFO certify the report before it’s published.

    They certify what the examined report shows, so any late change goes back through the examination. Listing the block used on each chain lets readers repeat the supply figures.

What to know about reading month-end supply over RPC

  • You get the figure at one block per chain, with no history of how supply moved during the month.
  • Your script runs the reads and stores the results; Goldsky serves the block lookup and the RPC.
  • A read at a fixed block number gives the same answer every time, so the examiner can repeat it.
  • A chain the Blocks feed doesn’t cover needs its month-end block found another way.

What you control

Your team
  • Close the month
  • Read month-end supply
  • Certify and publish the report
Your providers
  • Custodian
  • Accounting firm

Security and deployment

  • SOC 2 Type IIIndependently audited security controls.
  • Dedicated infrastructureSingle-tenant options for production workloads.
  • Data residencyCloud, on-premises or co-located.

Produce a stablecoin reserve report token schedule 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.

© Endless Sky Inc. All rights reserved.

PrivacyTermsSecurity

System status