# Bitcoin HODL Waves: Supply by Coin Age Band

> Bitcoin HODL waves: the share of BTC supply in each coin-age band, from under a day to over ten years, day by day since 2009, read from the UTXO set.

Markdown copy of https://voltfincrypto.com/apps/bitcoin-hodl-waves

**Question:** How much of Bitcoin's supply has not moved in one, two, five or ten years?

- Kind: Dashboard in Voltfin Vantage
- Topic: [Bitcoin](https://voltfincrypto.com/topics/bitcoin)
- Chains: Bitcoin
- Status: Planned. The data is not published yet, so this page states no figure; each figure will open its receipt when it is.

HODL waves split Bitcoin's supply by coin age: how long each unspent output has sat since the transaction that created it. Stack the age bands day by day and the chart forms waves, as coins that move rejoin the youngest band and coins that stay still drift into older ones. This dashboard rebuilds the bands from the UTXO set at each day's last block, back to the first blocks.

Read the young bands for activity and the old ones for coins that stay put. A swelling band under one month means coins are changing hands, often during large price moves, while a growing share over five years means more of the supply is staying still, including coins that may never move again. Unlike the long-term holder split, which draws one line at 155 days, the waves keep every band, so a shift between one and two years shows up as itself.

A second view weights each band by the value its coins had when they last moved: the realized-cap HODL waves. It shows where the network's cost basis sits, which a count of bitcoin alone cannot.

## Blueprint

### HODL waves

Today's age bands and how they moved over time.

- **Moved in the last 30 days** (%): Share of supply in outputs created within the last 30 days, at the latest day's last block.
- **Unmoved for a year or more** (%): Share of supply in outputs at least one year old at the latest day's last block.
- **Unmoved for five years or more** (%): Share of supply in outputs at least five years old at the latest day's last block.
- **Unmoved for ten years or more** (%): Share of supply in outputs at least ten years old at the latest day's last block.
- **HODL waves** (%): Share of supply in each of the twelve age bands at every day's last block over the selected period.
- **Supply by age band today** (BTC): Bitcoin in each age band at the latest day's last block, from under a day to over ten years.
- **Band change, 30 days** (BTC): Bitcoin gained or lost by each band over the last 30 days, from coins that moved and coins that aged into it.
- **Realized-cap HODL waves** (%): Each band's share of realized cap, its coins valued at the price of the day they last moved.
- **Exchange-held coins by age** (BTC): Bitcoin in labelled exchange wallets split by age band, the moves that reset age without a change of owner.

Filters: Period (Since 2009, the last five years or the last year).

## How it will be measured

- Each unspent output is aged from the timestamp of the block that created it to the day's last block, and its value is added to one of twelve bands from under a day to over ten years.
- Band shares divide each band's bitcoin by all unspent bitcoin at the same block, so the bands always add up to the whole supply.
- Realized-cap waves value each output at the price of the day it was created, from an on-chain BTC/USD oracle where one existed and a named off-chain daily price before that.
- Moving coins between one's own addresses resets their age, and so do exchange consolidations; labelled exchange wallets are shown apart so their internal moves can be set aside.

## Data it needs

- `bitcoin_supply_daily` (to build): Bitcoin issued, supply by coin age band and by output script type (including coins whose public keys are already exposed), supply last moved long ago, and cost-basis measures.
- `native_prices_daily` (to build): Reference prices of major assets read from on-chain oracle feeds (Chainlink latestRoundData) at each day's last block, with each round's update time.
- `address_labels` (to build): Labels for known addresses: exchanges, bridges, protocols, funds, treasuries, sanctioned addresses and known attackers.
- Source: Bitcoin UTXO set at each day's last block: value and creation block of every unspent output
- Source: Block timestamps, for each output's age
- Source: BTC/USD oracle rounds on Ethereum since the feed began, and a named off-chain daily price before that
- Source: Labelled exchange addresses, with the source of each

## Questions

### What are HODL waves?

A chart of Bitcoin's supply split into bands by how long ago each coin last moved, stacked over time. Coins that move reset to the youngest band, so busy markets show as swelling young bands and quiet years as thickening old ones.

### How much bitcoin has not moved in years?

The page shows the share of supply unmoved for one, five and ten years or more at the latest day's last block, each with the read behind it. Part of the oldest band is believed lost, but the chain cannot tell lost coins from patient ones.

### How do HODL waves differ from long-term holder supply?

Long-term holder supply draws one line, usually at 155 days, and splits supply in two. HODL waves keep a dozen bands, so you can see which ages are growing or shrinking rather than a single total.

### What are realized-cap HODL waves?

The same bands weighted by the value coins had when they last moved instead of by the number of bitcoin. A large young band in realized terms means many coins changed hands at recent prices.

### Does moving coins to a new wallet reset their age?

Yes. The chain only sees that an output was spent and new ones were created, so a transfer between your own addresses makes those coins young again. Exchange wallet reshuffles do the same, which is why labelled exchange coins are shown apart.

## Glossary

- **Coin age**: Time since an unspent output was created, which is when its coins last moved.
- **UTXO set**: Every unspent transaction output at a block: together, the whole spendable bitcoin supply.
- **Realized cap**: The value of every coin at the price when it last moved, added up across the supply.

## Related apps

- [Bitcoin Long-Term Holders and Short-Term Holder Supply](https://voltfincrypto.com/apps/bitcoin-long-term-short-term-holder-supply)
- [Dormant Bitcoin Wallets Waking Up](https://voltfincrypto.com/apps/dormant-bitcoin-wallets)
- [Bitcoin Realized Price and MVRV Ratio](https://voltfincrypto.com/apps/bitcoin-realized-price-mvrv)
- [How Much Bitcoin Does Satoshi Have? Satoshi-Era Coins Unspent](https://voltfincrypto.com/apps/satoshi-era-bitcoin-unspent)
- [Bitcoin UTXO Set Size: Unspent Outputs and Dust](https://voltfincrypto.com/apps/bitcoin-utxo-set-size)
- [Bitcoin Halving Countdown and Block Reward](https://voltfincrypto.com/apps/bitcoin-halving-countdown)

Build it in Voltfin Studio: https://app.voltfincrypto.com/signup?next=%2F
