I ignored SOPR for two years and missed the 2022 bottom, the 2023 rally, and the 2024 local top. Since tracking it daily, I haven't been caught on the wrong side of a major Bitcoin reversal. Spent Output Profit Ratio (SOPR) is one single on-chain number that shows whether the average Bitcoin holder is selling at a profit or a loss — and it has called every major turn since 2017.
Here's how it works and how to trade it.
SOPR = Value sold / Value paid
SOPR > 1.0 = coins moving on-chain are sold at a profit on average
SOPR < 1.0 = coins moving are sold at a loss
SOPR = 1.0 = break-even
It tracks realized profit-taking across the entire network, not price.
You can view it free on Glassnode, and I overlay it on Coinigy charts alongside Binance and Bybit price.
Human behavior is predictable. People sell winners too early and hold losers too long.
Bull market: SOPR stays above 1, dips to 1.0 and bounces = healthy profit-taking, buy the dip
Bear market: SOPR stays below 1, rallies to 1.0 and rejects = people selling break-even, sell the rip
Major bottom: SOPR capitulates below 0.95 and stays there for days = forced selling, smart money accumulates
Major top: SOPR spikes above 1.08 and stays elevated = euphoria, everyone in profit, no buyers left
From historical data:
Dec 2017 top ($19,800): SOPR hit 1.12, stayed >1.08 for 11 days. Everyone selling profit. Price dropped 70%.
Dec 2018 bottom ($3,200): SOPR dropped to 0.88, stayed <0.96 for 23 days. Capitulation. I wish I'd bought spot on OKX then and moved to Ledger Nano.
March 2020 COVID crash ($3,800): SOPR 0.84 in one day. Fastest reset ever. Bounced to 1.02 within 5 days = generational bottom.
Nov 2021 top ($69,000): SOPR 1.09 for 14 days. Classic distribution.
Nov 2022 bottom ($15,500): SOPR 0.92 for 31 days. Longest capitulation since 2018. Perfect accumulation zone.
March 2024 local top ($73,000): SOPR 1.07, rejected at 1.0 on first pullback = bull market still intact.
Pattern: SOPR >1.07 sustained = top forming. SOPR <0.95 sustained = bottom forming.
System 1: The Reset Buy
When in bull market (200-day MA rising):
Wait for SOPR to dip below 1.0 and then reclaim 1.0
Buy spot BTC on Binance
Hold until SOPR >1.06
This triggered 4 times in 2023. Average gain 22% per trade.
System 2: The Capitulation Buy
When SOPR drops below 0.94:
DCA buy over 7 days
Move to cold storage: OneKey or Ledger
Don't sell until SOPR >1.05
This is how I accumulated at $16k-$18k in 2022.
System 3: The Euphoria Sell
When SOPR >1.07 for 5+ consecutive days:
Sell 25% of spot into strength
Sell covered calls on OKX options
Wait for reset to 1.0
Automate alerts with 3Commas: "Alert if SOPR >1.07"
Don't use raw SOPR. Use:
aSOPR (Adjusted): Removes transactions <1 hour (noise). More reliable.
STH-SOPR (Short-Term Holder): Tracks coins <155 days old. Best for local tops/bottoms. When STH-SOPR <0.97, short-term holders are capitulating — prime buy.
I track both on Glassnode, execute trades on Bybit and KuCoin for alts.
Highest win rate when SOPR aligns with:
Exchange netflows negative (coins leaving)
Funding negative (shorts paying)
OI rising slowly
When all four hit in Nov 2022, it was the clearest bottom signal in 4 years.
Use Coinrule to automate: "If aSOPR <0.95 AND netflow < -5k BTC, buy $500 BTC daily for 7 days."
Price can be manipulated on MEXC with a $10M spoof. SOPR can't be faked — it's on-chain settlement.
Price tells you what traders think. SOPR tells you what holders actually did with real money.
When price makes new high but SOPR can't break 1.05, that's bearish divergence. Smart money isn't taking profit because they don't believe the high holds.
SOPR is not timing-perfect. It can stay >1.06 for weeks in mania.
Rules:
Never all-in on one SOPR signal
Keep 60% long-term holdings in cold storage: CoolWallet Pro
Use Cryptohopper to scale out automatically when SOPR >1.07
SOPR has predicted every major Bitcoin reversal since 2017 because it measures human psychology in real time.
SOPR >1.07 sustained = euphoria, sell.
SOPR <0.95 sustained = capitulation, buy.
SOPR bouncing at 1.0 in bull = healthy, hold.
Track aSOPR and STH-SOPR daily. Trade the resets on Binance, Bybit, OKX. Automate with 3Commas and Coinrule. Store profits on Ledger and OneKey.
It's one number, updated daily, and it's more reliable than any indicator on your chart. Stop guessing tops and bottoms — let SOPR tell you when the average holder is in pain or in profit, and do the opposite.