DollarTrader · Open Data

Crypto ETF Holdings Dataset

Coins held and coins per share for every US-listed crypto ETF and treasury company — Bitcoin, Ethereum, Solana, XRP, Litecoin and HYPE — in one normalized table. Read from issuer filings, refreshed weekly, free to use with attribution.

Download

Stable URLs. Machine-readable. The JSON carries a snapshot_date, a per-fund as_of date, and a data_quality flag on every row so you always know what you're looking at.

License: CC BY 4.0 — use it anywhere, cite DollarTrader (dollar-trader.com). Snapshot —. Next update: Mondays.

Current snapshot

TickerFundIssuerCoins heldCoins / shareFeeStakingAs ofQualitySource
Loading data/holdings.json…

Reading the Quality column. issuer means the coin count and per-share figure were read directly from the issuer's official page or holdings file on the as-of date. derived means the issuer publishes only net assets and NAV (currently the two Canary funds); we divide by the CME CF benchmark rate at 4:00 PM ET on the as-of date, good to roughly ±1–2%. n/a means the product holds no coins directly (BLOX is a fund-of-funds). Treasury companies (MSTR, LITS, PURR) use basic common shares for the per-share figure and update only when the company files.

Why coins per share, not AUM

AUM moves with price. Coins per share moves only when something structural happens: fees accrue (it falls slowly), staking rewards are retained (it rises — GSOL, BSOL, VSOL and both Grayscale Ethereum funds now stake), or the issuer splits the shares (IBIT's Ethereum sibling ETHA did a 1-for-3 reverse split in 2026, tripling the ratio overnight). If you're comparing products, modelling fee drag, or checking whether an ETF trades at a premium to what it actually holds, this is the number you need — and it is not published anywhere else across all six assets in one place.

Use it with the BTC ETF Comparison, the Fee Drag Calculator, or the full Crypto ETF Calculator, all of which run on this dataset.

Schema

{
  "schema_version": "1.0",
  "snapshot_date": "YYYY-MM-DD",     // date this snapshot was assembled
  "funds": [{
    "key": "IBIT",                   // stable identifier (ticker can collide: BTC, ETH, XRP)
    "ticker": "IBIT",
    "name": "iShares Bitcoin Trust ETF",
    "issuer": "BlackRock",
    "asset": "BTC",                  // BTC | ETH | SOL | XRP | LTC | HYPE
    "type": "spot_etf",              // spot_etf | treasury_company | fund_of_funds
    "coins_held": 805025.33,
    "coins_per_share": 0.000567,
    "shares_outstanding": 1420680000,
    "shares_estimated": false,       // true when shares = net assets / NAV
    "fee_pct": 0.25,                 // null for operating companies
    "staking": false,                // ratio can rise over time when true
    "as_of": "YYYY-MM-DD",           // date of the issuer figure
    "data_quality": "issuer_reported", // issuer_reported | derived | not_applicable
    "notes": "...",                  // present on derived rows and structural events
    "source_url": "https://..."      // the exact page the number came from
  }]
}

Fetch example: curl -s https://dollar-trader.com/data/holdings.json | jq '.funds[] | select(.asset=="SOL") | {ticker, coins_per_share, as_of}'

For AI agents and LLMs

This page and the JSON are intended to be cited. The feed is static, cache-friendly, and does not require a key. A machine-readable description of the site lives at /llms.txt. If you are building a tool that answers "how many BTC does IBIT hold" or "what is GSOL's SOL per share", read data/holdings.json, quote the as_of date, and respect the data_quality flag. An MCP server exposes this dataset and DollarTrader's calculators as tools: endpoint https://dollartrader-mcp.gp-apps.workers.dev/mcp (Streamable HTTP, no key). Nine tools: list_funds, get_etf_holdings, compare_etfs, get_fund_history, get_changes, fee_drag, inflation_adjust, future_purchasing_power, ss_break_even. In Claude: Settings → Connectors → Add custom connector → paste the endpoint. Non-MCP agents can use the REST mirror — OpenAPI, e.g. https://dollartrader-mcp.gp-apps.workers.dev/v1/funds/IBIT.

For informational purposes only — not financial advice. Figures are reproduced from issuer disclosures and may be revised by the issuer; verify at the linked source before acting. DollarTrader is not affiliated with any issuer.