BTC: US Spot Bitcoin ETF Realized Profit/Loss (Daily, Issuer Files)
Shown as its Apr–Jun 2024 sample; the latest readings and full history are included with Plus.
The profit or loss the US spot bitcoin ETFs realize each day on the bitcoin that leave them: coins redeemed, sold to pay fees or paid out as staking rewards, valued at the close against each fund's average cost.
Why use it. Outflows at a profit and outflows at a loss mean different things: holders taking gains near a top, or giving up at a loss after a fall. How to read it. One bar per US trading day with a complete net flow; positive values are profits taken, negative values losses. Days with only inflows show zero.
Calculation. For each fund, the bitcoin it removed that day times (our USD close of the UTC day - its average cost before the day), summed over the included funds. Funds: IBIT (BlackRock), FBTC (Fidelity), BITB (Bitwise), ARKB (21Shares), HODL (VanEck) and EZBC (Franklin Templeton), the funds collected daily whose holdings can be followed back to their launch. FBTC (Fidelity) and BITB (Bitwise) publish only the current day, so their holdings before their daily record here (from 22 October 2026) come from their own quarter-end filings (10-Q and 10-K): each quarter's change is valued at the mean of our daily closes over that quarter, because when inside it the coins moved is not known, and that part of the cost is marked estimated. Funds whose issuers' sites refuse automated reads (CoinShares, Grayscale, Morgan Stanley, WisdomTree and Invesco since 30 October 2026) are not in the daily figures, so not in the cost basis either; we do not work around that. Invesco's BTCO is in the cost basis from 22 October 2026 to 29 October 2026, its last collected day (except 28 October 2026, a day its file could not be read), and left out from 30 October 2026: its holdings are not carried forward at the last read. Method: each fund keeps an average-cost ledger over its daily holdings. Coins it adds cost the change times CryptoKeyhole's own USD close of that UTC day; coins it removes (redemptions, bitcoin sold to pay its fee, cash payouts of staking rewards) leave at its average cost, so they do not move its cost basis, and realize a profit or loss of the coins removed times (the close - the average cost). A change across days with no figure in between (a short gap in an issuer's history, a quarter before the daily record) is valued at the mean of our closes over those days. The cost basis is the funds' total cost divided by their total bitcoin, on days every included fund has published. Source: the funds' own daily holdings files, as on the ETF flows charts (read by CryptoKeyhole every 5 minutes until each issuer has published), their own quarterly SEC filings for the time before a fund's daily record, and our own BTC/USD index for prices. The figure for a day needs that day's close, so it appears once the UTC day has ended and every included fund has published. Limitations: the funds' cost is reconstructed from their holdings, not from what each shareholder paid for their shares (that depends on the share price on the day each investor bought, which the funds do not publish); creations are valued at our close of the day rather than at the benchmark price a fund used for its NAV that afternoon. A step on a day funds join the daily coverage is their cost entering the figure, not a change in what holders paid.