What is SOPR, and how is it different from MVRV Z-Score?
SOPR calculates the value of coins that have actually been moved (spent) at the moment they're moved, divided by the value those same coins had when they were originally acquired, producing a ratio — this is a realized-view indicator, counting only coins that genuinely underwent an on-chain movement, reflecting whether the positions being closed out at this exact moment are, overall, profitable or at a loss. MVRV Z-Score, by contrast, is an unrealized-view indicator, calculating the overall deviation between the market cap of the entire Circulating Supply and its realized cost basis — it doesn't require coins to actually be moved, and instead reflects the overall paper profit-or-loss state across all holders.
This distinction matters: MVRV Z-Score answers "if everyone sold right now, what would the overall paper profit/loss picture look like," while SOPR answers "right at this moment, among the coins actually being sold, are the sellers profiting or taking a loss." SOPR is generally more sensitive to real-time market sentiment than MVRV Z-Score, since it focuses only on the portion of supply where an actual transaction is genuinely occurring.
Why does SOPR matter, and what kind of market psychology is it trying to capture?
The core design of SOPR is to quantify two distinct market behavior patterns: collective profit-taking and collective loss-realization. During an uptrend, SOPR generally stays above 1, meaning most coins being moved are being sold at a profit; but a commonly observed phenomenon is that if SOPR dips below 1 during an uptrend and quickly recovers above 1 again, this "retest of 1" process is often read as the market "retesting" holders' psychological support — the value around 1 represents the break-even point for a large number of holders, and if sell pressure at this level gets effectively absorbed (SOPR recovering quickly above 1), it's generally treated as a signal of relatively healthy market structure.
Conversely, during a downtrend, SOPR staying persistently below 1 indicates the market is in a phase of widespread loss realization; if this phase persists long enough and the losses run deep enough, historically this has sometimes corresponded to the tail end of a capitulation-style sell-off — because once most still-underwater holders have already given up and sold at a loss, the remaining supply of people still willing to sell while underwater gradually gets depleted. This is the core logic behind why SOPR is often used to help gauge the extremity of market sentiment.
How is SOPR actually calculated in practice, and what common variants exist?
The basic formula is: the value of a spent output at the moment it's spent, divided by the value that output had when it was created (acquired). For example, if a bitcoin was bought at $20,000 and sat idle as a UTXO, then later spent (moved) at $50,000, that output's SOPR is 50,000 divided by 20,000, equaling 2.5 — meaning that position was sold at 2.5 times its cost basis. Weighting and averaging the SOPR of every spent output across the network on a given day produces that day's overall SOPR value.
A common variant used in practice is "adjusted SOPR" (aSOPR), which excludes UTXOs held for less than one hour, aimed at filtering out noise from frequent internal exchange fund reshuffling and change transactions, keeping the indicator more focused on positions that genuinely represent meaningful holding. There's also "short-term holder SOPR" and "long-term holder SOPR," which split SOPR's calculation based on a holding-duration threshold (typically 155 days), since short-term speculators and long-term holders behave very differently — splitting them apart yields finer-grained market structure information, such as judging whether newly entered short-term capital is panic-selling, or whether long-term holders are starting to loosen their grip too.
What practical relevance does SOPR have for the average investor, and what pitfalls should they watch for?
The most common oversimplified use is treating "SOPR falling below 1" directly as a signal that "the market is panicking, possibly a buying opportunity," but this inference overlooks a key premise: SOPR falling below 1 only means the market is overall realizing losses — it doesn't guarantee this is the cycle's bottom. Loss realization can continue for a long stretch and go deeper still, so treating SOPR crossing below 1 as a precise entry timing signal is effectively betting that "this round of loss-taking is near its end," a probabilistic judgment rather than a certain conclusion.
A more robust use treats SOPR as one reading on a sentiment thermometer, watched alongside its behavior pattern near a key level (particularly the psychological threshold of 1) — whether it quickly retests and rebounds, or continues breaking down further. This kind of behavior-pattern observation generally carries more reference value than an absolute number at a single point in time. It's also worth noting that SOPR is a market-wide aggregate indicator that can't reflect any individual investor's actual cost basis — applying it to your own decision-making still requires checking against your own actual holding cost, rather than assuming the market's overall profit/loss state matches your own.
Between May and June 2022, as the LUNA/UST collapse and several centralized lending platform liquidity crises unfolded in succession, Bitcoin's long-term holder SOPR briefly fell sharply below 1 and stayed at a low level for several weeks, reflecting that even long-term holders — generally considered to have stronger conviction — had begun realizing significant losses. This period was later widely regarded by the on-chain analysis community as an important signal marker of the 2022 bear market's capitulation phase, though it's worth noting that even with SOPR at an extreme low at the time, it still took the market several months to actually confirm a bottom, illustrating that an extreme reading on its own can't be used to precisely time a bottom.
The advantage of SOPR is that it focuses on positions where an on-chain movement genuinely occurred, making it more responsive to real-time market sentiment than an unrealized-view indicator, and its behavior pattern near key psychological levels (like 1) carries meaningful reference value; the drawback is that an extreme reading alone can't be used to precisely time a cycle turn, and as a market-wide aggregate indicator it can't reflect any individual investor's actual cost basis — it needs to be combined with other on-chain indicators and observed over an extended behavior pattern to improve the credibility of the interpretation.