SparkLend (Ethereum)
Takes as collateral: bitcoin and ether
Dollar loans only: other currencies are separate books, never added in
Debt and rates count loans made in US dollars and dollar stablecoins. Loans in euros, francs, yen, ether or bitcoin itself are separate books, shown by currency on each venue, never added in.
- BTC collateral — the supplied amount of the venue's pegged-bitcoin reserves as each pool reports it — what is deposited, not what is pledged against a loan.
- Dollar debt against bitcoin — bitcoin-only borrowers only: $195m more is owed in dollars by 161 accounts posting bitcoin among other collateral, a bound never apportioned.
- Aggregate LTV — the bitcoin-only borrowers' LTV, not the pool's: accounts posting bitcoin among other collateral are not in it.
- Liquidates at — the bitcoin-only borrowers only (accounts posting other collateral are not in it); $13m of their debt sits in positions that liquidate within a 20% fall.
What “Liquidates at” is: one price for the whole book, not a forecast
"Liquidates at" is the bitcoin price at which this book, taken as one position, stops covering its debt at its liquidation thresholds — an aggregate, not a forecast: individual loans are levered differently and liquidate above it.
Loan duration is not a venue figure on an on-chain pool: these markets are open-term, and a position runs until it is repaid or liquidated. A fixed term exists only where the venue writes one — the custodial desks (cefi_credit_rates.term_days) and Gavel's auction, which is fixed-rate and fixed-term by construction.
10 of 10 criteria researched. What the criteria are →
Markets — as served, not a venue rate
One row per market, as the venue publishes them. These are market rates: combining them into a single venue rate is a weighting across this venue's markets, and choosing one here would be a methodology decision taken in a web page.
No BTC market rows are served for this venue. It runs contracts, so the absence is this dataset’s, not the venue’s.
Price
What does credit cost here, and how is the price formed?
| Rate formation | algorithmic_utilisationsourceSparkLend on Ethereum (chain 1): each reserve carries its own interest rate strategy (getReserveData().interestRateStrategyAddress), a function of utilisation — algorithmic_utilisation. ⚠ The registry records that the DAI/USDS legs are anchored by Sky governance rather than by utilisation, so the value is overstated for those legs; that was NOT re-read on 2026-09-30. |
|---|---|
| Term structure | open_endedsourceSparkLend Pool 0xC13e21B648A5Ee794902342038FF3aDAB66BE987 on Ethereum (chain 1) — borrow()/repay() carry no maturity; a position persists until repaid or liquidated. |
| Rate certainty | variablesourceSparkLend Pool 0xC13e21B648A5Ee794902342038FF3aDAB66BE987 on Ethereum (chain 1) — a reserve's variable rate is recomputed by its interest rate strategy on every ReserveDataUpdated; nothing is fixed at origination. |
Quality
What stands behind a position, and what can change under the reader?
| Oracle dependency | multiplesourceSparkLend PoolAddressesProvider 0x02C3eA4e34C0cBd694D2adFa2c690EECbC1793eE on Ethereum (chain 1) → getPriceOracle() = 0x8105f69D9C41644c6A0803fDA7D03Aa70996cFD9 (read 2026-09-30). An AaveOracle holds one source per asset across every reserve, plus a fallback oracle, and governance can replace any of them. A pooled venue's solvency depends on all of the feeds backing the reserves an account touches, not on one. |
|---|---|
| Default & liquidation | thresholdsourceSparkLend Pool 0xC13e21B648A5Ee794902342038FF3aDAB66BE987 on Ethereum (chain 1), an Aave v3 fork — liquidationCall() is permitted once an account's health factor falls below 1e18, computed from per-reserve liquidation thresholds across the account's whole collateral basket. |
| Custody & backing | protocol_custodialsourceSparkLend Pool 0xC13e21B648A5Ee794902342038FF3aDAB66BE987 on Ethereum (chain 1) — supply() transfers the underlying to the reserve's spToken contract under the Pool's control (cbBTC: 0xb3973D459df38ae57797811F2A1fd061DA1BC123); the depositor holds an spToken claim rather than the asset. |
| Recourse | non_recoursesourceSparkLend Pool 0xC13e21B648A5Ee794902342038FF3aDAB66BE987 on Ethereum (chain 1) — liability is bounded by the account's collateral: liquidationCall() seizes collateral and no function pursues a borrower beyond it. (Aave v3.3's DeficitCreated is not cited: this pool reports POOL_REVISION 4, which predates it, and this estate holds no SparkLend events.) |
| Track record | 40 months observedsourceDerived from the first aggregator observation this dataset holds for the venue (defi_rates_llama, 2023-05-09; the registry holds no first_date for it). This is a LOWER BOUND on the venue's age, not the age itself: a venue trading long before the aggregator began listing it reads short here. The observer is the aggregator, not the venue's own contracts. Not typed, and not a claim about the venue's longevity. |
Composition
Who and what makes up this market?
| Collateral accepted | BTC reserves (4): cbBTC, LBTC, tBTC, WBTCsourcePool.getReservesList() on Ethereum (chain 1), SparkLend Pool 0xC13e21B648A5Ee794902342038FF3aDAB66BE987, read 2026-09-30 at block 26089440 (registry/resolution/2026-09/aave_forks.json): 20 reserves, four of them bitcoin. WBTC 0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599 — LTV 77%, liquidation threshold 78%, not borrowable. cbBTC 0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf — 81% / 82%, borrowable. LBTC 0x8236a87084f8B84306f72007F36F2618A5634494 — LTV 0, threshold 75%, not borrowable. tBTC 0x18084fbA666a33d37592fA2633fD49a74DD93a88 (18 decimals) — LTV 0, threshold 70%, FROZEN. ⚠ An LTV of 0 gives no new borrowing power; the threshold still governs positions already open, and no eMode category restores an LTV: category 3 "BTC" is defined at 85% / 90% and none of the four reserves is assigned to it. NOTE: SparkLend is POOLED and multi-collateral, so a BTC reserve's presence does not mean a given borrow is secured by it — attributing a borrow to Bitcoin specifically is a modelling decision. |
|---|---|
| Book depth & concentration | unknown (no per-venue counterparty count exists in this registry or in the comparison payload, so depth and concentration cannot be established. This is a gap in THIS DATASET, not in the venue, and is a different value from `undisclosed`, which would mean the venue does not publish it.) |
| Observability | price: partial — Observed through the aggregator (DefiLlama). The aggregator's rows are each pool's published borrow and supply rates as it reports them — not a read of the venue's own contracts, and not checked against one. As of 2026-10-01. quantity: partial — Observed through the aggregator (DefiLlama): bitcoin collateral is the supplied amount of each pegged-bitcoin reserve, converted at the day's bitcoin reference, and debt is the borrowed amount per pool or vault. Neither is a read of the venue's own contracts. As of 2026-10-01. composition: none — Not obtainable from an aggregator. Composition is loan-level and requires event ingestion, which is parked for this venue — the aggregator publishes pool totals, not positions. |
What the loans are denominated in
| Borrowed in | Assets | Size (USD equivalent) | In the loan asset | Read by |
|---|---|---|---|---|
| US dollars | $258m | — | account-by-account pool read, 2026-10-13 | |
| not dollars — currency not yet split | $190k | — | account-by-account pool read, 2026-10-13 |
Each currency is a separate book; the dollar equivalents compare sizes and are never added together.
Backing chain
Each link from what this venue takes as collateral down to the bitcoin it rests on, in order, with how each link was established.
How a chain is read, and what it does not claim
backing_chain: the ordered claims standing between a creditor and the coins, each link derived from a sourced fact already held and carrying it in `derived_from` — the custody cell, the venue's borrow card, or wrapper_registry.yaml for who holds the bitcoin behind a token. A `representation` link has one branch per token the venue takes; branches are alternatives, not a sequence. A link nobody has established is shown with status `incomplete` and names what is missing — it is never dropped, because a missing link omitted makes a long chain look short. `undisclosed` means the party does not publish it; `incomplete` means this dataset has not established it. NEVER SCORED AND NEVER COUNTED: no length, link count or ranking is published, and none should be derived — chain length and link transparency are orthogonal (ETP-backed margin is the longest chain here and every link of it is regulated). `recourse` is what the creditor holds beyond the chain. ⚠ Tokens are identified BY SYMBOL: the wrapper registry is not keyed by chain or address, so every `representation` link carries a `deployment` step that is incomplete — whether a token is native to the chain of the venue or a bridge receipt (one more link) is not established — and a symbol the registry knows to name a different token on a venue is shown unresolved, not given that wrapper's holders.
- contract_escrow established — the protocol contract — the collateral is escrowed and neither the operator nor the borrower can move it
source
attribute · custody_model = protocol_custodialSparkLend Pool 0xC13e21B648A5Ee794902342038FF3aDAB66BE987 on Ethereum (chain 1) — supply() transfers the underlying to the reserve's spToken contract under the Pool's control (cbBTC: 0xb3973D459df38ae57797811F2A1fd061DA1BC123); the depositor holds an spToken claim rather than the asset. - representation incomplete
source
wrapper_registry · wrapper_registry.yaml as of 2026-09-02deployment · chain 1 incompletewhether each token is issued natively on this chain or bridged to it — a further link when bridged — is not in wrapper_registry.yaml, which is keyed by symbol, not by chain or address- cbBTC established · direct_wrapped · identified by symbolCBBTC established · issuer Coinbase · custodial · holders [Coinbase]
source
issuer_doccoinbase.com/cbbtc — 'backed 1:1 and held in custody by Coinbase', cold storage - LBTC established · yield_bearing · identified by symbolLBTC established · issuer Lombard · consortium · holders [Anchorage Digital Bank, Kraken Institutional]WAS 'Lombard'. Lombard is the protocol. Its documentation places the BTC in Lombard-owned, segregated, bankruptcy-remote accounts at Anchorage Digital Bank, with the active allocation at Kraken Institutional and Anchorage; Bitwise holds trading authority only. Mint, burn and bridge require majority consensus of a 14-member Security Consortium. No public split between the two custodians, so the pair is carried whole.
source
issuer_docdocs.lombard.finance/use/lbtc; anchorage.com 'Lombard Builds LBTC's Institutional Structure on Anchorage Digital' - tBTC established · direct_wrapped · identified by symbolTBTC established · issuer Threshold Network · threshold-signature · holders []No holder by construction: a 51-of-100 threshold signing group with operators rotated bi-weekly and no single party ever holding a full key. The empty holder list is the correct answer, not a gap.
source
issuer_docdocs.threshold.network/applications/tbtc-v2 - WBTC established · direct_wrapped · identified by symbolWBTC established · issuer BitGo · custodial · holders [BitGo]Reserves in 2-of-3 multisig with BitGo holding two keys. Since 2024 BitGo custodies jointly with BiT Global, a Hong Kong custodian part-owned by Justin Sun — a second name on the same bitcoin, recorded but not split because no share is published.
source
issuer_docBitGo, 'Wrapped BTC Launches with BitGo Custody and Full Proof of Assets', blog.bitgo.com; proof-of-reserve at wbtc.network
- cbBTC established · direct_wrapped · identified by symbol
source
The generic axis set
Identical for every venue, identically computed. An axis that cannot be computed here renders its reason — never silently omitted, because an omitted axis says it was not considered. A figure that covers only part of what the axis asks is marked, with what it leaves out beneath it. Collateral, debt and the borrow and lend rates are the tiles at the top of this page.
| Utilisation (venue roll-up) | 72.0% the pool's dollar reserves: borrowed over supplied across 6 reserve(s), latest day — the whole pool, not its bitcoin book defi_rates_llama, quantity-gated |
|---|---|
| Intermediation margin | +1.49 pts · derived the pool's borrow rate minus its supply rate on the same dollar reserves — what the venue keeps, plus the cost of idle supply borrow rate minus lend rate, both as above |
| Trailing realised average (7/30/90d) | 7d 4.23% · 30d 4.10% · 90d 3.99% dollar loans, debt-weighted over the days observed (7 / 30 / 90 of 7 / 30 / 90); continuously compounded defi_rates_llama — the 30-day window's rows, gates and floor (098) |
| Rate volatility (30/90d) | 30d 0.10 pts · 90d 0.33 pts the standard deviation of the daily debt-weighted borrow rate, in percentage points — not annualised the daily rate above |
| Spread to the pair aggregate | −0.79 pts vs Algorithmic · derived this venue's borrow rate minus its class's (4.90%), both as served on the spine /v1/market/tree — the venue's and its class's borrow rates |
| Spread to matched Treasuries | −0.03 pts vs the 1-month bill (4.13%) · derived the venue's borrow rate minus the 1-month bill, both continuously compounded. An open-term loan has no maturity of its own, so the bill stands for a 30-day window macro_rates — the 1-month Treasury bill, 2026-10-08 (Federal Reserve H.15) |
| Origination flow | collecting (not read yet) — loan events are read for Morpho Blue (Ethereum, Base) and the six Aave v3 chains only |
| Repayment flow | collecting (not read yet) — loan events are read for Morpho Blue (Ethereum, Base) and the six Aave v3 chains only |
| Aggregate and distributional LTV | 46.8% · 4.8% of the bitcoin-only debt liquidates within a 20% fall · partial the bitcoin-only borrowers' LTV, not the pool's: accounts posting bitcoin among other collateral are not in it contract_read — the pool's own contracts, account by account |
| Residence distribution | collecting (not read yet) — how long positions stay open needs each loan's history; it is held for Morpho Blue and the Aave v3 chains and not yet computed |
| Liquidation incidence | 1 bitcoin-only position(s) past their threshold now ($1) · partial positions the venue would liquidate now and has not the pool read (157) |
| Top-10 concentration share | top 10 hold 85.8% of the bitcoin-only debt (largest 21.7%), 170 accounts · partial the bitcoin-only borrowers, not every borrower at the venue the pool read, account by account (155) |
There is no score on this page and none will be added. The criteria are published and versioned before any venue is measured against them, and this venue's row is produced by the same pipeline as every other.
Access routes
Surveyed — no listable route. Probed for a first-party MCP endpoint; none answered. surveyed 2026-08-30
Ask for this by machine
| REST | GET https://api.bitcoincreditstack.com/v1/market/venues/spark_ethereum |
|---|---|
| MCP | get_venue({ venue_id: "spark_ethereum" }) get_venue({ venue_id: "spark_ethereum", include: ["axes", "headline"] }) |
The same figures, the same names and dates. Connect your AI →
How this venue compares depends on what you'd borrow, for how long, against what. That's a question for your AI, with this data behind it.
https://mcp.bitcoincreditstack.com/mcp