Does SOPR work?
SOPR below 1 (coins spent at a loss on balance). Mixed: 5 of 30 signals were on within 90 days of a cycle bottom, catching 5 of the 5 bottoms in its record; a year later the price had changed by a median +110%, against +79.4% for a typical day of the same cycles.
- SOPR below 1 (coins spent at a loss on balance): 30 signals; 5 of 30 decided were on within 90 days of a cycle bottom (25 false alarms); it caught 5 of the 5 cycle bottoms in its record.
What followed the signals
| After | Signals | Median change | Mean change | Share up | All days: median | All days: share up | Same cycles: median |
|---|---|---|---|---|---|---|---|
| 7 days | 30 30 independent | +1.5% | +2.0% | 60% | +0.9% | 55% | +1.0% |
| 30 days | 30 30 independent | +4.8% | +14.8% | 67% | +3.4% | 57% | +4.2% |
| 90 days | 30 19 independent | +31.9% | +111% | 67% | +13.7% | 62% | +12.3% |
| 365 days | 30 9 independent | +110% | +578% | 63% | +95.1% | 72% | +79.4% |
Every signal
SOPR below 1 (coins spent at a loss on balance)
| First day | Reading | BTC close | 7 days | 30 days | 90 days | 365 days | Nearest cycle bottom | Near a turn |
|---|---|---|---|---|---|---|---|---|
| 10 Nov 2010 11 days in signal | 0.9284 | $0.24 | 0.0% | −15.0% | +282% | +1095% | 373 days before the 2011 bottom (18 Nov 2011); price −88.3% from it | False alarm |
| 21 Feb 2011 21 days in signal | 0.9970 | $0.8345 | +4.3% | +1.8% | +702% | +412% | 270 days before the 2011 bottom (18 Nov 2011); price −59.3% from it | False alarm |
| 21 May 2011 228 days in signal | 0.8378 | $6.12 | +35.6% | +186% | +90.4% | −16.8% | 181 days before the 2011 bottom (18 Nov 2011); price +199% from it | Hit |
| 9 Oct 2012 14 days in signal | 0.9937 | $11.90 | −0.4% | −8.2% | +14.2% | +1072% | 326 days after the 2011 bottom (18 Nov 2011); price +480% from it | False alarm |
| 17 Dec 2012 4 days in signal | 0.9993 | $13.25 | +1.0% | +11.2% | +258% | +5296% | 395 days after the 2011 bottom (18 Nov 2011); price +546% from it | False alarm |
| 3 Feb 2013 | 0.9992 | $20.59 | +16.4% | +95.9% | +448% | +4425% | 443 days after the 2011 bottom (18 Nov 2011); price +904% from it | False alarm |
| 11 Apr 2013 39 days in signal | 0.9939 | $124.90 | −12.7% | −7.4% | −29.5% | +248% | 510 days after the 2011 bottom (18 Nov 2011); price +5993% from it | False alarm |
| 5 Sep 2013 3 days in signal | 0.9930 | $130.20 | +7.0% | +5.0% | +850% | +271% | 496 days before the 2015 bottom (14 Jan 2015); price −21.1% from it | False alarm |
| 8 Dec 2013 6 days in signal | 0.9842 | $803.96 | +14.4% | +9.4% | −24.2% | −54.6% | 402 days before the 2015 bottom (14 Jan 2015); price +387% from it | False alarm |
| 7 Feb 2014 488 days in signal | 0.9906 | $695.65 | −38.5% | −9.9% | −36.6% | −67.3% | 341 days before the 2015 bottom (14 Jan 2015); price +322% from it | Hit |
| 28 Apr 2016 3 days in signal | 0.9983 | $448.48 | −0.1% | +16.9% | +45.9% | +196% | 470 days after the 2015 bottom (14 Jan 2015); price +172% from it | False alarm |
| 22 Jun 2016 22 days in signal | 0.9937 | $590.56 | +7.8% | +10.3% | +3.2% | +361% | 525 days after the 2015 bottom (14 Jan 2015); price +258% from it | False alarm |
| 4 Nov 2016 | 0.9991 | $702.08 | +1.8% | +9.2% | +43.0% | +949% | 660 days after the 2015 bottom (14 Jan 2015); price +326% from it | False alarm |
| 6 Jan 2017 7 days in signal | 0.9961 | $886.16 | −6.9% | +14.7% | +34.1% | +1838% | 708 days before the 2018 bottom (15 Dec 2018); price −72.6% from it | False alarm |
| 9 Mar 2017 8 days in signal | 0.9988 | $1,191 | −1.5% | −0.9% | +126% | +677% | 646 days before the 2018 bottom (15 Dec 2018); price −63.1% from it | False alarm |
| 15 Jun 2017 6 days in signal | 0.9989 | $2,442 | +11.5% | −19.1% | +58.5% | +162% | 548 days before the 2018 bottom (15 Dec 2018); price −24.4% from it | False alarm |
| 14 Sep 2017 3 days in signal | 0.9967 | $3,243 | +11.5% | +79.6% | +402% | +100.0% | 457 days before the 2018 bottom (15 Dec 2018); price +0.3% from it | False alarm |
| 23 Dec 2017 345 days in signal | 0.9963 | $14,396 | −13.0% | −24.9% | −37.9% | −72.2% | 357 days before the 2018 bottom (15 Dec 2018); price +345% from it | Hit |
| 15 Jul 2019 151 days in signal | 0.9942 | $10,850 | −4.8% | −7.5% | −23.5% | −14.7% | 212 days after the 2018 bottom (15 Dec 2018); price +236% from it | False alarm |
| 4 Sep 2020 10 days in signal | 0.9914 | $10,467 | −0.7% | +2.0% | +85.8% | +377% | 629 days after the 2018 bottom (15 Dec 2018); price +224% from it | False alarm |
| 22 Jan 2021 | 0.9904 | $33,008 | +3.8% | +74.1% | +56.7% | +6.3% | 668 days before the 2022 bottom (21 Nov 2022); price +109% from it | False alarm |
| 27 Feb 2021 | 0.9983 | $46,191 | +5.8% | +24.8% | −22.8% | −18.4% | 632 days before the 2022 bottom (21 Nov 2022); price +193% from it | False alarm |
| 19 Apr 2021 477 days in signal | 0.9956 | $55,680 | −2.9% | −34.0% | −42.9% | −25.5% | 581 days before the 2022 bottom (21 Nov 2022); price +253% from it | Hit |
| 13 Jan 2024 3 days in signal | 0.9941 | $42,839 | −2.7% | +16.6% | +56.8% | +120% | 418 days after the 2022 bottom (21 Nov 2022); price +172% from it | False alarm |
| 20 Mar 2024 7 days in signal | 0.9919 | $67,857 | +2.3% | −5.9% | −4.0% | +24.1% | 485 days after the 2022 bottom (21 Nov 2022); price +331% from it | False alarm |
| 25 Jun 2024 30 days in signal | 0.9853 | $61,797 | +0.4% | +6.5% | +2.5% | +73.7% | 582 days after the 2022 bottom (21 Nov 2022); price +292% from it | False alarm |
| 10 Jan 2025 | 0.9975 | $94,699 | +9.9% | +1.9% | −16.0% | −4.6% | 536 days before the current cycle's bottom so far (30 Jun 2026); price +61.8% from it | False alarm |
| 26 Feb 2025 22 days in signal | 0.9978 | $84,090 | +7.8% | +0.3% | +29.6% | −19.8% | 489 days before the current cycle's bottom so far (30 Jun 2026); price +43.7% from it | False alarm |
| 6 Jun 2025 | 0.9988 | $104,376 | +1.7% | +4.6% | +6.1% | −41.7% | 389 days before the current cycle's bottom so far (30 Jun 2026); price +78.3% from it | False alarm |
| 30 Aug 2025 209 days in signal | 0.9976 | $108,750 | +1.4% | +5.2% | −16.4% | −28.6% | 304 days before the current cycle's bottom so far (30 Jun 2026); price +85.8% from it | Hit |
| Cycle bottom | BTC close | Signal on within 90 days |
|---|---|---|
| 18 Nov 2011 | $2.05 | Yes: the signal from 21 May 2011, which began 181 days before it |
| 14 Jan 2015 | $164.92 | Yes: the signal from 7 Feb 2014, which began 341 days before it |
| 15 Dec 2018 | $3,233 | Yes: the signal from 23 Dec 2017, which began 357 days before it |
| 21 Nov 2022 | $15,760 | Yes: the signal from 19 Apr 2021, which began 581 days before it |
| 30 Jun 2026 | $58,532 | Yes: the signal from 30 Aug 2025, which began 304 days before it |
Method and sources
Signals. Bottom signal: SOPR below 1 (coins spent at a loss on balance). The levels are the ones commonly quoted for this indicator, fixed before any result was looked at. A signal starts on the first day the condition holds after it has been off for at least 30 days, so a run of days counts once (the same rule as the signal lab).
Point in time. Each day's SOPR uses only the coins spent that day and their prices when they were created, so it is point in time as published. Daily readings are closed UTC days from 18 July 2010 to 26 October 2026; the open day is never used.
Outcomes. The change of the BTC daily close from the close of the signal's first day to the close 7, 30, 90 and 365 days later, against the same change from every day the indicator has a reading (the base rate). Signals whose windows overlap share the same price moves, so the tables also count independent signals: windows that do not overlap, counted from the first. Recent signals wait for their outcomes.
Cycle tops and bottoms. A cycle top is an all-time-high close followed by a fall of at least 75% before any higher close; the latest all-time high starts the current cycle. A cycle bottom is the lowest close between two tops; the current cycle's bottom is its lowest close so far, so it can still move. A signal is a hit when a turn of its kind came while it was on or within 90 days either side (from 90 days before its first day to 90 days after its last), and a false alarm otherwise; a signal still on, or ended less than 90 days ago, waits. The verdict compares each signal with the median change of every day in the same four-year halving cycle, so the outsized early years neither flatter nor penalise later signals.
Plans. The chart is Free, so every signal and today's reading are shown to everyone.
Sources. Our own Bitcoin node and BTC/USD price record, through the published chart linked below. Past signals describe what happened; they are not a forecast and nothing here is investment advice.
Questions
Does SOPR work?
How accurate is SOPR?
Has SOPR given false signals?
Is SOPR signalling now?
How is this backtest calculated?
Each signal is the first day SOPR meets its level after at least 30 days without it, using only data that existed that day. We measure the BTC price change 7, 30, 90 and 365 days later against the same change from every day and from the days of the same four-year cycle, and the distance to the nearest cycle top or bottom.
Open the SOPR chartAll free tools
Signals and outcomes are calculated by CryptoKeyhole from our own Bitcoin node and price data, using only data that existed on each day. Past signals describe what happened; they are not a forecast, and nothing here is investment advice.