Bitcoin security budget · methodology

How these figures are computed

Every figure on these pages is generated from one file, from public inputs, on a declared basis. Nothing is typed by hand. Where a choice exists, all the options are published, not just the one used.

The core ratio

Annualised miner revenue divided by market capitalisation. Miner revenue is a flow and market capitalisation is a stock, so the ratio asks what share of the protected value is spent protecting it. Today that is 0.82%.

The three bases, and which one is published

BasisRatioGap / yrMarket cap to cover it
Trailing-year revenue over spot market cap0.92%$1.23B$23.58B
Trailing-year revenue over average market cap0.86%$2.12B$40.68B
Spot run-rate revenue over spot market cap (published)0.82%$2.75B$52.95B

Three ways to measure the same ratio, all published. None of the three closes the gap.

The published figure is the third: spot run-rate revenue over spot market capitalisation. It answers the present-tense question, and it is the least flattering of the three to the argument these pages make, producing the largest gap. Why that matters is set out on why different sources give different figures.

Inputs, and where each comes from

InputSourceHow it is used
Block rewards, last 1,008 blocksmempool.spaceannualised at 52,560 blocks/yr for the run-rate basis
Daily miner revenue and feesblockchain.com chartstrailing-365-day sums; fee share; the epoch history
BTC price and market capitalisationCoinGeckothe denominator, and the dollar restatements
Adequate-spend bandAlden, McAvity, Hasuthe 1% target is a round heuristic inside their published range, not a derived floor

Rules the generator enforces

No typed numbers. Every figure on every page is read from the figures file at build time; a page cannot contain a number the file does not carry. Constants are labelled as constants. The block subsidy and the miner-redirect block height are protocol facts, not readings. Forward figures assume nothing about price. The 2028, 2032 and 2036 ratios halve the subsidy on schedule and hold the fee component flat; price appears in both the numerator and the denominator and cancels, so no price forecast is involved or implied.

Dates, updates and history

Each page states the asof date of the figures it quotes, which is the date of the underlying data and usually lags the calendar by a day. The figures are regenerated from source and the pages rebuilt together, so they cannot disagree with each other. A dated snapshot is written on each refresh and kept permanently, so a citation made today still resolves to the numbers it was made against: the current one is /security-budget/2026-09-11/.

Machine-readable

The current figures are at data.json, with CORS enabled so a page or notebook can fetch them directly. The figures as this estate has published them are at history.csv and history.json, one row per asof date.

The BSI as a daily series since 2009 is at bsi-series.csv and bsi-series.json — 6,446 rows, reconstructed from blockchain.info's own miner-revenue, fee, price and supply charts. Because price cancels out of the ratio, the numerator is the subsidy actually paid (the daily increase in supply) plus fees, so the series needs no historical price judgement; only the fee term is converted at a daily average rate. Two bases are given, matching the two this page describes. All of it is CC BY 4.0: use it, and cite this page.

Corrections

If a figure here is wrong, the fix goes into the generator or its inputs, never into a page, and every page carrying that figure is rebuilt in the same pass. Dated snapshots are never edited after the fact, so the record of what was published on a given day stays intact. Corrections are noted on the about page.

Sources

Figures as of 2026-09-11 · generated 2026-09-12 from the same data file that feeds the FAQ’s sizing section. How these figures are computed · about & corrections. Machine-readable: data.json, history.csv, bsi-series.csv (daily, since 2009). Dated permalink: /security-budget/2026-09-11/.