What Is SOPR in Bitcoin? Spent Output Profit Ratio Explained
SOPR, the spent output profit ratio, measures whether the bitcoin moving on-chain is being spent at a profit or a loss. What SOPR is, how it is calculated, what adjusted SOPR fixes, and how to read it without treating it as a signal.
By the BitcoinDatabase team
July 2026 · 9 min read
The short answer
SOPR, the spent output profit ratio, measures whether the bitcoin moving on-chain is being spent at a profit or a loss. For every coin that is spent, it divides the price when the coin was spent by the price when it was created, then averages across a window. A reading above 1 means coins are moving in aggregate profit, below 1 means loss, and exactly 1 means breakeven. SOPR describes the realized profit and loss of coins that actually moved; it is a descriptive on-chain metric, not a trading signal, and it says nothing about what price will do next.
SOPR was introduced by analyst Renato Shirakashi in 2019 as a way to read market psychology straight from the ledger. Instead of guessing whether holders are selling into strength or capitulating at a loss, it reads the answer from the coins themselves: every spent output carries the price it was created at, and comparing that to the spend price tells you whether that coin moved in profit or loss.
What is SOPR in Bitcoin?
SOPR stands for spent output profit ratio. It looks at the outputs spent in a given period and, for each one, divides the value realized (price at spend) by the value at creation (price when the coin was received). Averaging that ratio across every spent output in the window gives one number. Because it only counts coins that actually moved, SOPR is a measure of realized behavior, not paper gains sitting in wallets that stayed still. The coins that did not move that day are simply not in the calculation.
How is SOPR calculated?
The building block is a single spent output. Take the price on the day the coin was created, take the price on the day it was spent, and divide the second by the first. A coin bought at $20,000 and spent at $30,000 has an output ratio of 1.5. Do that for every output spent in the window, weight by value, and the aggregate is SOPR. The hard part is not the arithmetic; it is having every spent output, its creation timestamp, and a historical price to value both ends. A provider that already indexes the chain can return SOPR and the realized profit and loss behind it from a SOPR API instead of making you replay the chain and stitch in a price feed.
| SOPR reading | What it describes | Typical context |
|---|---|---|
| Above 1 | Coins moving in aggregate profit | Common when spot sits above holders' cost basis |
| Around 1 | Coins moving near breakeven | Often acts as a rough pivot in trending markets |
| Below 1 | Coins moving at a realized loss | Seen during capitulation and deep drawdowns |
These are descriptions of past behavior, not thresholds to trade on. Past patterns do not predict future prices.
What is adjusted SOPR (aSOPR)?
Adjusted SOPR, or aSOPR, is SOPR with very short-lived outputs removed, usually coins spent within about an hour of being created. The reason is noise: a lot of same-block or same-hour movement is internal, such as change outputs, consolidations, or shuffling between an entity's own wallets, and those moves do not represent a holder choosing to sell. Filtering them out makes the metric track real economic spending more closely, which is why many analysts watch aSOPR rather than raw SOPR when they care about genuine profit and loss taking.
What does SOPR tell you?
SOPR tells you the profit-and-loss temperature of the coins that moved. When it holds above 1 through a rally, holders are spending into profit and the market is absorbing it; when it snaps below 1 and stays there, coins are moving at a loss, which lines up with fear and capitulation. Analysts also watch where SOPR bounces: in strong uptrends it has tended to find a floor near 1, because holders become reluctant to sell at a loss, and the level where it turns can hint at conviction. None of that is predictive on its own; it is context about behavior that already happened.
Is SOPR a buy or sell signal?
No. SOPR is an informational on-chain metric that describes whether spent coins moved in profit or loss. It is backward-looking by construction, and analysts read it alongside MVRV, realized price and supply in profit and loss rather than as a standalone trigger. If you are turning a thesis into an actual plan, a dedicated trading research assistant that weighs fundamentals and risk is a better place for that decision than any single ratio. SOPR is data, not advice.
How do you get SOPR data?
You can compute SOPR yourself if you run a fully-indexed node, keep the creation price of every output, and maintain a historical price series, then join all three. Most teams skip that and query it from an indexed provider. Because BitcoinDatabase holds every spent output, its timestamps, and prices in one schema, you can pull SOPR and adjusted SOPR over REST, rebuild the full series in SQL, or split realized profit from realized loss, and then trace any reading back to the exact transactions behind it. That makes the number auditable rather than a black box. Everything here is informational on-chain data and analytics, not investment advice.
Hit Run to query the fully-indexed Bitcoin blockchain.
BTC
30-day trend
informational on-chain data · not financial advice
Query the Bitcoin blockchain yourself
Pull balances, UTXOs, transactions, on-chain metrics and fund flows from the fully indexed Bitcoin blockchain by REST API, SQL and dashboards. Indexed since 2009, new blocks within seconds, no node to run.