Spending by age
spending
Bitcoin spent each day by how long it had been unspent (twelve age bands), with coin-days destroyed and dormancy, from our own node since 2009. The reading is the last point of each series; each series' history is on get_chain_series.
| Units | BTC per day by age band; coin-days; days |
|---|---|
| Computed at | 2026-10-12 |
| History | served |
Note
Bitcoin spent each UTC day, by how long it had been unspent, with coin-days destroyed and dormancy (coin-days per BTC moved). From our own node, every block since 2009. Descriptive: not a signal.
History
Bitcoin moved, by how long it had been held
Bitcoin spent each day, split by how long since it last moved. Under a day includes coins created and spent on the same day. The line is the day's total, served on its own.
Mondays are drawn here; every day is in the explorer. A day's flow is that day's alone, not the week's. Open in the explorer →
What this cannot be read as
Day-granular: a coin's age counts from the UTC day of its block's header time. Supply excludes OP_RETURN outputs, the genesis coinbase and the two BIP30-overwritten coinbases, and includes coins that are lost or unspendable but not provably so.
gavel-btc Bitcoin Core node, getblock verbosity 3 (chain-cohort-pass.js)
Coin-days destroyed
Each coin spent that day times the days since it last moved, added up.
Mondays are drawn here; every day is in the explorer. A day's flow is that day's alone, not the week's. Open in the explorer →
What this cannot be read as
Day-granular: a coin's age counts from the UTC day of its block's header time. Supply excludes OP_RETURN outputs, the genesis coinbase and the two BIP30-overwritten coinbases, and includes coins that are lost or unspendable but not provably so.
gavel-btc Bitcoin Core node, getblock verbosity 3 (chain-cohort-pass.js)
Dormancy
Coin-days destroyed over bitcoin spent: the amount-weighted age, in days, of what moved that day. Days on which no bitcoin was spent are absent, with the reason.
Mondays are drawn here; every day is in the explorer. A day's flow is that day's alone, not the week's. Open in the explorer →
What this cannot be read as
Day-granular: a coin's age counts from the UTC day of its block's header time. Supply excludes OP_RETURN outputs, the genesis coinbase and the two BIP30-overwritten coinbases, and includes coins that are lost or unspendable but not provably so.
gavel-btc Bitcoin Core node, getblock verbosity 3 (chain-cohort-pass.js)
Full payload
Every field as the API serves it
| id | spending | ||
|---|---|---|---|
| name | Spending by age | ||
| date | 2026-10-12 | ||
| series | 15 entries[
{
"series_id": "chain.cohort.spent_btc",
"date": "2026-10-12",
"value": 756165.76458097,
"unit": "BTC",
"kind": "exact",
"vintage_id": "chain_series@2026-10-13T02:01:36.863Z"
},
{
"series_id": "chain.cohort.spent_age.under_1d_btc",
"date": "2026-10-12",
"value": 620692.19800233,
"unit": "BTC",
"kind": "exact",
"vintage_id": "chain_series@2026-10-13T02:01:36.863Z"
},
{
"series_id": "chain.cohort.spent_age.1d_1w_btc",
"date": "2026-10-12",
"value": 108543.17454611,
"unit": "BTC",
"kind": "exact",
"vintage_id": "chain_series@2026-10-13T02:01:36.863Z"
},
{
"series_id": "chain.cohort.spent_age.1w_1m_btc",
"date": "2026-10-12",
"value": 7637.54649495,
"unit": "BTC",
"kind": "exact",
"vintage_id": "chain_series@2026-10-13T02:01:36.863Z"
},
{
"series_id": "chain.cohort.spent_age.1m_3m_btc",
"date": "2026-10-12",
"value": 5088.70563658,
"unit": "BTC",
"kind": "exact",
"vintage_id": "chain_series@2026-10-13T02:01:36.863Z"
},
{
"series_id": "chain.cohort.spent_age.3m_6m_btc",
"date": "2026-10-12",
"value": 1267.64792143,
"unit": "BTC",
"kind": "exact",
"vintage_id": "chain_series@2026-10-13T02:01:36.863Z"
},
{
"series_id": "chain.cohort.spent_age.6m_12m_btc",
"date": "2026-10-12",
"value": 2287.76317025,
"unit": "BTC",
"kind": "exact",
"vintage_id": "chain_series@2026-10-13T02:01:36.863Z"
},
{
"series_id": "chain.cohort.spent_age.1y_2y_btc",
"date": "2026-10-12",
"value": 3207.70170869,
"unit": "BTC",
"kind": "exact",
"vintage_id": "chain_series@2026-10-13T02:01:36.863Z"
},
{
"series_id": "chain.cohort.spent_age.2y_3y_btc",
"date": "2026-10-12",
"value": 5713.37453794,
"unit": "BTC",
"kind": "exact",
"vintage_id": "chain_series@2026-10-13T02:01:36.863Z"
},
{
"series_id": "chain.cohort.spent_age.3y_5y_btc",
"date": "2026-10-12",
"value": 1090.05536196,
"unit": "BTC",
"kind": "exact",
"vintage_id": "chain_series@2026-10-13T02:01:36.863Z"
},
{
"series_id": "chain.cohort.spent_age.5y_7y_btc",
"date": "2026-10-12",
"value": 292.81802832,
"unit": "BTC",
"kind": "exact",
"vintage_id": "chain_series@2026-10-13T02:01:36.863Z"
},
{
"series_id": "chain.cohort.spent_age.7y_10y_btc",
"date": "2026-10-12",
"value": 297.75260185,
"unit": "BTC",
"kind": "exact",
"vintage_id": "chain_series@2026-10-13T02:01:36.863Z"
},
{
"series_id": "chain.cohort.spent_age.over_10y_btc",
"date": "2026-10-12",
"value": 47.02657056,
"unit": "BTC",
"kind": "exact",
"vintage_id": "chain_series@2026-10-13T02:01:36.863Z"
},
{
"series_id": "chain.cohort.cdd",
"date": "2026-10-12",
"value": 11073653.2379,
"unit": "BTC_days",
"kind": "exact",
"vintage_id": "chain_series@2026-10-13T02:01:36.863Z"
},
{
"series_id": "chain.cohort.dormancy",
"date": "2026-10-12",
"value": 14.6445,
"unit": "days",
"kind": "exact",
"vintage_id": "chain_series@2026-10-13T02:01:36.863Z"
}
] | ||
| note | Bitcoin spent each UTC day, by how long it had been unspent, with coin-days destroyed and dormancy (coin-days per BTC moved). From our own node, every block since 2009. Descriptive: not a signal. | ||
| history | Each series through time: /v1/onchain/series/{series_id} | ||
| licence |
|
Where this comes from
| REST | GET https://api.bitcoincreditstack.com/v1/onchain/spending |
|---|---|
| MCP | get_indicator({ id: "spending" }) |
The same figures, the same names and dates. Connect your AI →