Insights / DeFi Credit Risk
Reflect's USDC+ and USDT+ deploy idle stablecoins across Solana lending venues under a non-custodial, fully onchain model — and apply a Basel-style risk framework to score and allocate across them.
By Toma Yamashita ·
Disclosure: Reflect commissioned and funded this advisory research; the risk framework reflects Blockworks' own methodology, but readers should account for the sponsoring relationship.
Reflect is a permissionless onchain system that enables the creation of yield-bearing stablecoins without dependence on a custodial operator.
All strategies are managed programmatically through onchain custody, with on-demand mint and redeem, partner-configurable yield split, and single-call API integration.
Reflect represents a new stablecoin infrastructure stack that runs on open, neutral rules. Our goal is to create a framework to measure and allocate risk in Solana lending markets with Reflect yield-bearing stablecoins.
Reflect's design holds that strategy selection, parameters, and allocation rules are transparent and fully onchain rather than held inside an operator's mandate, which is the relevant departure from custodial yield issuers. For an integrating partner, the comparison is the build-or-contract custodial path rather than another yield-bearing stablecoin. That path typically runs several months of master account agreements, KYB onboarding, off-chain reconciliation, and a custody arrangement before the first dollar moves. Reflect's alternative is an SDK plus an API call that ships in days and avoids importing the discretionary-custody surface area that custodial allocators carry.
The concrete advantages for an integrator break down along four lines:
Caveat on the regulatory framing. The non-custodial categorization narrows the regulatory delta against a custodial alternative without eliminating it. Yield-bearing stablecoins remain subject to securities considerations under existing US securities law and SEC guidance, particularly where marketing and yield-share mechanics are involved.
USDC+ and USDT+ are yield-bearing tokens that deploy otherwise idle USDC and USDT across a curated set of whitelisted onchain lending venues. Mints and redeems are non-custodial, atomic, and uncapped by lockup, allowing for swift withdrawal when needed. Curated liquidity buffers backstop ongoing redemption demand. The first allocation strategy for this token is on Solana lending markets.
The Solana ecosystem offers five lending venues suitable for USDC and USDT deployment: Jupiter Lend, Kamino, Save, MarginFi, and Loopscale. Kamino and Jupiter Lend carry the majority of the lending market TVL ($5.46B in deposits and $2.35B in borrows combined), with the remaining three venues operating at a TVL approximately an order of magnitude smaller.

USDC and USDT supply on Solana has remained relatively stagnant year-over-year but they continue to be the dominant stablecoins on the chain. Combined, they comprise $12.2B in value and account for roughly 74% of the stablecoin supply on Solana.

Solana represents a divergence from the norm where USDT is the dominant stablecoin on most chains. USDC supply on the chain is roughly double USDT supply and is the dominant stablecoin across DeFi. This is apparent when looking at the eligible lending venues on the chain. Lending market size for USDC sits at roughly $1.7B ($866M in deposits; $800M in borrows) compared to $72M for USDT markets ($40M in deposits; $32M in borrows). The below charts give an overview of eligible lending markets for each stablecoin.

The goal is to provide a standard and transparent way to define a risk-adjusted yield on Solana. The allocation methodology follows how we define risk.
These venues have different designs, smart contracts, and collateral risk. Inside the venues, risk changes based on the specific markets.
The risk is determined by scoring each venue into a single effective capital ratio requirement (CRR).
The pipeline runs four steps:
This approach is inspired by traditional finance risk capital requirements (Basel 3). The closest equivalent in crypto is the Sky risk framework on EVM.
The CRR for each venue takes into account two elements: a fundamental risk (RW) and a market/gap risk (Gap CRR) that binds during stressed unwinds.

The same dollar cannot independently absorb both a smart-contract failure and a gap-risk bad-debt event, so the binding loss dominates:
Effective CRR = max(RW,Gap CRR)
The fundamental risk weight captures smart contract risk, oracle risk, protocol governance risk, and counterparty/collateral risk. Each primitive is scored 0–10 (10 = lowest risk) using a fixed rubric, then weighted and inverted to produce a per-venue RW between 0 and 1.
| Primitive | Weight | What it captures |
| Smart Contract (SC) | 30% | Audit depth, exploit history, upgrade authority, codebase maturity |
| Oracle (OR) | 20% | Source diversity, TWAP availability, staleness bounds, hop complexity |
| Protocol Governance (PG) | 25% | Timelock presence, on-chain governance, sharp admin primitives |
| Counterparty / Collateral (CP) | 25% | Custody model, isolation vs. rehypothecation, listed-asset quality, historical bad debt |
The fundamental risk weight (RW) is computed from the above as follows:
RW = 1 - (0.30 · SC + 0.20 · OR + 0.25 · PG + 0.25 · CP) / 10
A second risk score is computed to take distressed scenarios into account. The forced-liquidation/gap risk score looks at jump/gap risk, liquidation mechanics, and network/execution issues.
| Primitive | Weight | What it captures |
| Jump / Gap Risk (JG) | 50% | Maximum LTV, distribution of health factors, historical worst-case drawdowns at the tail |
| Liquidation Mechanics (LM) | 35% | Penalty structure, keeper depth, liquidation-path DoS vectors, oracle freshness during liquidation |
| Network / Execution (NW) | 15% | Chain outage history during volatility, congestion behavior |
The forced-liquidation/gap risk score (Gap CRR) is computed from the above as follows:
Gap CRR = 1 - (0.5 · JG + 0.35 · LM + 0.15 · NW) / 10
Jupiter Lend qualifies as a special case under the framework due to its pooled-rehypothecation model. Other protocols can be assessed under the same formula if they adopt a similar structure. For pooled sources, the rubric-based JG primitive is replaced with a data-driven, collateral-weighted formula whenever a backing snapshot is available:
Gap CRR Pooled = ρ · ∑ₖ sₖ · gₖ
where sk is the dollar share of collateral type k in the outstanding borrow book, gk is a per-collateral gap coefficient calibrated against a ~24-hour, 99.5th-percentile drawdown, and ρ is the rehypothecation multiplier (1.25 for pooled designs, 1.00 for isolated).
This acts as a dollar-weighted loss expectation in cases of severe drawdown on specific collateral, resulting in the supplier absorbing a slice of the resulting bad debt proportional to sk and gk. gk is derived from a four-factor rubric as follows:
gk = basek + liquidityadj,k + volatilityadj,k + nativityadj,k
gk = clamp(gk, 0.05, 0.80)
The base factor captures the structural marketability and complexity of the collateral type. The nativity factor accounts for additional redemption complexity introduced by bridged and custodial-wrapper assets. Liquidity and volatility factors are pending integration of time-series price and depth data, currently set to zero.
Base Factor by Asset Class:
| Asset class | base_k | Examples |
| Fiat-backed stablecoin | 0.04 | USDT, USDC |
| Major L1 / native BTC | 0.12 | SOL, BTC |
| LST | 0.18 | JupSOL, JitoSOL, mSOL |
| Yield-bearing stable | 0.18 | syrupUSDC, sDAI (pre-nativity adj) |
| Internal receipt / protocol-wrapped | 0.35 | jlJUPUSD |
| LP token | 0.38 | JLP |
| Protocol governance token | 0.45 | JUP |
| Long-tail altcoin | 0.55 | unlisted tokens |
Nativity Adjustment:
| Nativity tier | nativityadj,k | Examples |
| Native to chain (issued or created directly on Solana) | 0 | SOL, USDC, USDT, JUP, JupSOL, JLP |
| Protocol-issued / custodian-wrapped (off-chain issuer or off-chain redemption dependency) | +0.06 | cbBTC (Coinbase custody), syrupUSDC (Maple Finance vault) |
| Bridged cross-chain | +0.12 | wBTC, wETH |
When Gap CRR Pooled is computed, the LM and NW primitives still enter via an execution-risk floor:
Gap CRRexec floor = 1 - (0.35 * LM + 0.15 * NW) / 5
Gap CRR = max (Gap CRRpooled, Gap CRRexec floor)
The floor protects against edge cases where collateral is safe but liquidation rails are broken.
The risk a stablecoin supplier bears is, at minimum, the risk of the collateral backing the borrowed balances. For pooled-rehypothecation venues, this is the full collateral set across all vaults; for isolated-market venues, it is the collateral specific to the market the lender supplies to.
Collateral exposure calculations use gk values introduced earlier in the pooled-gap formula. These are policy parameters and are reviewed quarterly. Jupiter Lend’s collateral composition has shifted meaningfully over time.

Using Jupiter Lend as an example, we can compute gk and sk as follows:
| Collateral | Share (sk) | gk | Contribution |
| SOL | 68.5% | 0.12 | 0.082 |
| syrupUSDC | 20% | 0.24 | 0.048 |
| JLP | 5% | 0.38 | 0.019 |
| jlJUPUSD | 4% | 0.35 | 0.014 |
| JupSOL | 1% | 0.18 | 0.002 |
| cbBTC | 1% | 0.18 | 0.002 |
| JUP | 0.5% | 0.45 | 0.002 |
| Σ | 100% | 0.169 |
We conclude that the dollar-weighted loss expectation for the whole pool from the above snapshot is 0.169. While this implies a gap CRR of 0.211 for Jupiter Lend, the execution-risk floor supersedes, leading to a gap CRR of 0.300.
A venue is excluded entirely from the eligible set if any of the following is true:
Screens are applied before the LP is solved, ensuring the LP remains feasible and that no weight is placed on a source in a known-bad state.
The eligible set is ranked from safest to riskiest by effective CRR in the chart below. These scores are reviewed periodically. Note that the effective CRR is the maximum of two score metrics: RW and Gap CRR.

The information contained in this report and by Blockworks Inc. and related affiliates is for general informational purposes only and is not intended to provide legal, financial, or investment advice. The report should not be construed as an offer or solicitation to buy or sell any security, token, or financial instrument and does not represent any recommendation or endorsement of any investment or financial product or service. Blockworks Inc. and related affiliates are not registered as a securities broker-dealer or an investment advisor in any jurisdiction or country.
Back to Insights
The Breakdown
Decoding crypto and the markets. Daily, with Byron Gilliam.
Unlock crypto's most powerful research platform.
Our research packs a punch and gives you actionable takeaways for each topic.
Blockworks Inc.
133 W 19th St., New York, NY 10011
Blockworks Network
Resources & Legal