Stock-to-Flow: a useful idea and a broken model
Bitcoin's most famous price model failed. Here's the math, the history, and what to take from it.
S2F is two things — keep them separate
(a) The S2F ratio. Stock divided by new annual production. Pure math, applies to any commodity. Bitcoin's ratio is well-defined, public, and doubles every halving. Nothing wrong with it.
(b) The S2F price model. A 2019 paper by an analyst writing as PlanB fit Bitcoin's price to its S2F ratio. It looked great in 2020. It hasn't tracked since 2022 and currently predicts Bitcoin should be ~10× higher than it actually is.
Most demos teach (b) without ever flagging that it broke. We'll do (a) properly, then look at (b) honestly — alongside a different model that's still holding up. The point isn't to pick a winner. It's to learn how to evaluate models that look convincing.
Layer 1 — the ratio (math)
Stock
The total existing supply of an asset. For Bitcoin, this is all BTC mined so far — currently ~19.86 million BTC.
Flow
The new production added annually. For Bitcoin, this is BTC mined each year through block rewards. Cuts in half every ~4 years.
S2F Ratio
Stock divided by Flow. Roughly: how many years of current production would be needed to match what already exists. Higher = scarcer in this specific sense.
The Formula
For Bitcoin: S2F = Total Mined BTC / BTC Mined Per Year
⚙️ Interactive S2F Calculator
Halving timeline — the math and the history, kept apart
Each row shows the S2F ratio at that halving (a math fact) and what Bitcoin's price did in that era (a history fact). They are not the same thing. Halving schedules have been public since 2009, so any halving-driven move on the announcement date itself is at most a partial surprise — the schedule is already in everyone's spreadsheet.
Math: Block reward 50 BTC. S2F starts near 0 and grows toward ~1.5.
History: Bitcoin trades from ~$0.001 (first listed price 2010) to ~$12 by Nov 2012. Tiny market, mostly hobbyists.
Math: Block reward halves to 25 BTC. S2F reaches ~8 by end of era.
History: Price ~$12 at halving, hit ~$1,150 in late 2013, crashed to ~$200 in 2015, recovered to ~$650 by next halving.
Math: Block reward 12.5 BTC. S2F reaches ~22.
History: Price ~$650 at halving, peaked ~$19,800 Dec 2017, crashed to ~$3,200 in late 2018, ~$8,800 by next halving.
Math: Block reward 6.25 BTC. S2F reaches ~56.
History: Price ~$8,800 at halving, peaked ~$69,000 Nov 2021, crashed to ~$15,500 in late 2022, ~$64,000 by next halving.
Math: Block reward 3.125 BTC. S2F ~120.
History (so far): Halving April 2024 at ~$64,000. ATH ~$108,000 in late 2024 / early 2025. Currently in a drawdown.
Math: Reward continues halving every ~210,000 blocks. By ~2140, new issuance rounds to zero.
History: Not written yet. Anyone claiming to know what each era's price will do is selling something.
Layer 2 — the price model (and how it broke)
Two models, two fates
In March 2019, an analyst writing as PlanB fit Bitcoin's market value to its S2F ratio with a
power-law regression. The fit was stunning in-sample: ln(market value) = 3.3 × ln(SF) + 14.6
with R² ≈ 95%. The model became famous and informed a generation of price predictions.
In 2019, a different researcher (Harold Burger) fit Bitcoin's price to time instead of S2F:
price = 10^(-17.0159 + 5.8451 × log₁₀(d)) where d is days since the genesis
block. Same kind of math (power law in log-log space), completely different independent variable.
Both fit the data through 2020. The chart below shows how each one has done since — against actual price.
Predicted vs actual price
Log scale Y. Orange = actual BTC/USD (CryptoCompare daily closes). Purple dashed = PlanB's S2F price model. Green dashed = Burger's Power Law.
Why one broke and the other (so far) hasn't
PlanB's S2F model assumes scarcity drives price. But:
- It's a one-variable model of a multi-driver system. Bitcoin's price is also moved by interest rates, ETF flows, regulatory regime, narrative cycles, and global liquidity. A single supply-side variable can't capture that.
- It was fit to ~10 years of history and projected as a law. No out-of-sample validation. When BitMEX Research reproduced it in 2020, they showed the apparent strength of the fit was driven by the shared upward trend of both variables — a known statistical pitfall (Falsifying Stock-to-Flow).
- Halving schedules have been public since 2009. Markets price in known information. Post-halving "rallies" are at most partial surprises around an expectations-resolution event, not pure scarcity-driven moves.
Burger's Power Law uses time as its only variable. That's also fragile, but:
- It allows a corridor, not a single line. Bitcoin spends roughly equal time above and below the central trend, within a factor of ~2–3.
- It survived 2022. S2F predicted ~$100k–$288k by end-2021 and didn't recover. The Power Law sat much lower and stayed inside its band.
- It still might break. The next halving cycle is its real test. The point isn't that this model is right — it's that as of today, evidence hasn't broken it.
The skill being practiced here isn't picking a winner. It's the discipline of continuing to test models against new data and stopping trust in the ones that diverge.
Comparing to other assets — six properties, no winners
"Hardness" is too vague to be useful. Below are six concrete properties of money. Different assets win on different ones; no asset wins on all of them. There's no overall verdict — that depends on what you're using money for.
| Property | Bitcoin | Gold | Silver | Fiat (USD) |
|---|---|---|---|---|
| Stock-to-Flow Existing supply ÷ annual new production |
~120 19.86M ÷ 164k/yr |
~59 208k tonnes ÷ 3.5k/yr |
~22 1.74M tonnes ÷ 25k/yr |
< 1 Issuance unbounded |
| Verifiability Can you check it's real, yourself? |
High Run a node — verify supply, signatures, history at zero cost |
Moderate Density / acid test in hand; tungsten counterfeits exist |
Moderate Same as gold; less commonly counterfeited |
Moderate Watermarks/UV for cash; bank balance = trust the bank |
| Divisibility How small can you split it? |
High 100M sats per BTC; 1 sat ≈ a fraction of a cent |
Low Physically hard; assay required when divided |
Low Same as gold |
Moderate Cents physically; digital can go further |
| Portability Can you move it across borders? |
High Weightless; 12 words memorized = any amount |
Low Heavy; declarable / often confiscated at borders |
Very low Even heavier per dollar than gold |
Moderate Cash declared above $10k; wires require a bank cooperating |
| Censorship resistance Can someone stop you from holding or sending it? |
High Self-custody + Tor or Lightning routes around most blocks |
Moderate Hard to stop in person, easy to stop at borders / banks |
Moderate Same as gold |
Low Bank-frozen accounts, OFAC lists, payment-rail bans |
| Durability Does it survive time? |
Moderate Network durable; individual access depends on key management |
Very high Doesn't tarnish; survives millennia |
Moderate Tarnishes; corrodes |
Low Inflation erodes purchasing power; bank failure erases balances |
Honest read: gold beats Bitcoin on durability and 5,000-year track record. Bitcoin beats gold on portability, divisibility, and verifiability. Fiat beats both on day-to-day liquidity at the cost of supply discipline. There's no asset that wins on every property — that's why money has always been a portfolio question.
Key takeaways
- The S2F ratio is well-defined math. Bitcoin's S2F doubles at every halving. Nothing controversial.
- The S2F price model (PlanB) has not tracked since ~2022. Currently predicts ~10× higher than actual price.
- The Power Law (Burger) is still inside its corridor as of April 2026 — but that's not a guarantee about the future.
- One simple variable rarely explains a multi-driver system. Both models use one variable; one survived, one didn't. That's information about which variable, not proof either is correct.
- Halving schedules are public. Markets price in known events; treat post-halving rallies as expectations-resolution, not pure scarcity miracles.
- "Hardest money ever" is a slogan, not a measurement. Bitcoin and gold each win on different concrete properties.
What this demo doesn't teach you
- Whether Bitcoin will go up. The future is not in this dataset.
- Whether scarcity causes value. Beanie Babies were scarce.
- What Bitcoin's price will do at the next halving. If anyone knew, the price would already reflect it.
- Whether a model that's working today will keep working. That's the test that runs continuously, not one we can finish.