Get the daily history of the bitcoin long-term holder spent output profit ratio (LTH-SOPR), together with the price on each day. The endpoint takes no parameters and returns the full history since 2010 in one call, useful for seeing whether long-term holders sell at a profit or a loss.
| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||
Available on these API plans: Startup Standard Professional Enterprise
Response Data
data is an array; each element is one day's data, and timestamp is the millisecond timestamp of 00:00 (UTC) on that day. This endpoint has no request parameters and returns the full history at once: as of 2026-10-20, 5936 records in total, and the first record is the earliest data (2010-07-15). The example on the right keeps only the first 2.
200 · application/json · See the response example in the right panel.
| Field | Type | Always Returned | Description |
|---|---|---|---|
code | string | Yes | Business status code; "0" means success |
msg | string | No | Result message; not returned on success |
data | array of object | Yes | Array of daily data |
data[].timestamp | integer (int64) | Yes | Data date, timestamp in milliseconds (UTC), at 00:00 of that day |
data[].price | number | Yes | Bitcoin price on that day, in USD. The price returned for the same day is not exactly the same across different indicator endpoints; keep this in mind when merging data |
data[].lth_sopr | number | Yes | Long-term holder SOPR, a ratio with no unit: greater than 1 means the coins sold were in profit overall, less than 1 means they were at a loss overall |
API Plans
Only the API plans marked Yes in the table below can call this endpoint. For the price of each plan, see API Plans.
| API Plan | Access |
|---|---|
| Hobbyist | ❌ No |
| Startup | ✅ Yes |
| Standard | ✅ Yes |
| Professional | ✅ Yes |
| Enterprise | ✅ Yes |
Use This Endpoint with AI
Pick a task and click Open in ChatGPT or Open in Claude: the AI reads this page first and then gives you the result. You can also click Copy and paste the full prompt into the AI tool you use.
This endpoint provides data through the REST API. Use the prompts above to have AI write the request code. For the tools available through MCP, see CoinGlass MCP.
Use Cases
| Scenario | Description |
|---|---|
| Observe long-term holder profit and loss | A value greater than 1 means the coins sold by long-term holders were in profit overall; less than 1 means they were sold at a loss overall. |
| Study profit-taking | A marked rise in LTH-SOPR means long-term holders are selling at higher profits; it can be used to study the distribution of old coins in bull markets. |
| Compare with short-term holders | Compare it with Bitcoin Short-Term Holder SOPR to see the profit or loss status of different groups when they sell. |
| Build an on-chain factor | Use the moving average of LTH-SOPR as an on-chain factor for cycle research and backtesting. |
Related Endpoints
| Endpoint | How It Differs |
|---|---|
| Bitcoin Short-Term Holder SOPR | Profit/loss ratio of short-term holders when they sell |
| Bitcoin Long-Term Holder Realized Price | Average cost price of long-term holders |
| Bitcoin Long-Term Holder Supply | Amount of bitcoin held by long-term holders |
| Bitcoin Net Unrealized Profit/Loss (NUPL) | Unrealized profit/loss of all holders on coins not yet sold |
FAQ
Is lth_sopr a percentage value?
No, it is a ratio. For example, 1.04 means the value at the time of selling is about 1.04 times the value at the time of the previous move, i.e., an average profit of about 4%; 1 means break-even.
Can I query ETH or other coins?
No. This endpoint is a fixed bitcoin indicator dataset with no coin parameter; it only returns bitcoin data.
Can I query data for a specific time range only?
No. This endpoint has no parameters and always returns the full history (the response is about 440 KB). If you need a specific period, filter locally by timestamp. We recommend caching the results and refreshing as needed; there is no need to request frequently.
How often is it updated?
Once a day. The latest day's data may still be updated during that day; when getting data by date, rely on timestamp.
Learn More: Bitcoin SOPR and Long-Term Holders
What Is SOPR?
SOPR (Spent Output Profit Ratio) divides the USD value of coins spent (moved) on-chain at the time they are spent by their USD value at the time of their previous move. A SOPR greater than 1 means these coins were sold at a profit on average, less than 1 means they were sold at a loss on average, and equal to 1 means break-even.
What Is Special About Long-Term Holder SOPR?
LTH-SOPR only counts coins spent by long-term holders. These coins have been held for a long time and usually have a lower cost, so they are often sold with a large profit or loss, and the values fluctuate more widely than the overall SOPR.
How Do Long-Term and Short-Term Holder SOPR Differ?
Short-term holder SOPR reflects the profit or loss of recent buyers when they sell; it changes quickly and often fluctuates around 1. Long-term holder SOPR reflects the profits on old coins and changes more slowly. For short-term holder data, see Bitcoin Short-Term Holder SOPR.
