Kamino LST Borrowers — Positions & Post-Borrow Behaviour

1,569-wallet cohort · 2025-01-01 → 2026-06-02 · organised by position type
Current open positions — a snapshot as of 2026-06-02 (value, markets, collateral). Two position types matter: Vanilla (single LST, borrowed manually) and Multiply (Kamino's one-click leveraged staking) — almost different products. For what borrowers do over time, see the Vanilla (Loan flow) & History tabs (historical loans, bucketed by each obligation's Kamino tag or "Closed" — a different lens, see Story).
Per-tag rollup — wallets can hold more than one type, so tag wallet-counts overlap (sum > the 1,569 cohort)
Per-tag summary — open positions (snapshot 2026-06-02)

Collateral vs borrowed, by position type ($M)

Current open positions (snapshot 2026-06-02). Per Kamino position type: total collateral deposited vs total debt, in $M. Vanilla holds most of the value.

Borrowed-token mix per type (stacked, $M)

Snapshot. Of each position type's debt ($M), the token mix — Multiply is ~100% SOL; Vanilla is mostly stablecoins.

Top collateral tokens ($M)

Snapshot. LST collateral tokens holding the most value across all open positions ($M deposited).

Wallets by position type

Snapshot. Distinct wallets holding each position type. A wallet can hold several types, so these overlap and don't sum to the cohort total.
Two completely different products
Vanilla
Manual lending
Deposit-and-borrow. Mixed borrow (SOL 59% / USDC 31% / PYUSD 8%). Fewer, larger wallets (~$570k coll each).
Multiply
Atomic LST leverage
One-click product. ~100% SOL borrows — that's the mechanic (flash-borrow SOL → swap → redeposit). Many small wallets (~$132k each).
User counts inverted
Multiply > Vanilla
More Multiply wallets, but Vanilla holds ~4× the collateral. Multiply = retail leverage; Vanilla = larger credit users.
Different LSTs
dSOL ≠ bSOL
dSOL is Vanilla-only; long-tail LSTs (bSOL, vSOL, bonkSOL, cgntSOL) are Multiply-dominant.
How much is borrowed, and for what (by debt — current snapshot)
By borrowed dollars (debt) — the right denominator for "how much is borrowing SOL." Note this differs from the collateral split: Multiply borrows far more per $ of collateral than Vanilla, so by debt the SOL-leverage share (~69%) is higher than by collateral (~52%). This is a snapshot stock; where the borrowed stablecoins then go is the traced flow on the Vanilla tab — kept separate.
LST × position-type matrix — collateral $M
Where each LST's collateral sits
LSTVanillaMultiplyLeverageTotalMultiply share
dSOL$171.28M$0.68M$0.00M$171.96M0%
JITOSOL$89.30M$7.52M$0.83M$97.66M8%
JupSOL$76.14M$21.48M$0.00M$97.62M22%
MSOL$60.50M$6.52M$0.02M$67.05M10%
stkeSOL$6.06M$10.39M$0.00M$16.45M63%
bSOL$0.01M$16.15M$0.00M$16.16M100%
vSOL$0.57M$14.79M$0.00M$15.36M96%
hSOL$11.44M$0.35M$0.00M$11.80M3%
dfdvSOL$10.07M$0.39M$0.00M$10.46M4%
bonkSOL$0.09M$10.34M$0.00M$10.44M99%
cgntSOL$0.00M$7.37M$0.00M$7.37M100%
pSOL$4.22M$0.95M$0.00M$5.17M18%
jSOL$0.36M$4.62M$0.00M$4.98M93%
strongSOL$0.00M$4.09M$0.00M$4.09M100%
laineSOL$0.00M$3.70M$0.00M$3.70M100%
lanternSOL$0.00M$3.62M$0.00M$3.63M100%

Collateral per LST, split by type (stacked $M)

Snapshot. Each LST's deposited collateral ($M) split by the position type it backs — which LSTs lean Vanilla vs Multiply.
Who holds these positions (wallet structure)

Open positions per wallet

How many open LST obligations each of the wallets holds. ~87% hold exactly one position; the max is 8 — so "wallets" and "positions" are nearly interchangeable here.

Do wallets run more than one product?

Wallets by which Kamino position types they hold at once. run both Vanilla & Multiply simultaneously — so the products are mostly different people, with a small dual-using overlap.
Multiply positions — Kamino's leveraged-staking product. Borrow SOL against an LST, swap it into more LST, redeposit — built in a single atomic transaction.
Positions

LST collateral mix (top 10, $M)

Current Multiply positions (snapshot). LST collateral tokens, top 10 by $M deposited.

Borrowed-token mix ($M)

Current Multiply positions (snapshot). Debt token mix ($M) — ~100% SOL, the borrow leg of the leverage loop.
Full LST breakdown — Multiply
LSTCollateralObligations
JupSOL$21.48M279
bSOL$16.15M44
vSOL$14.79M111
stkeSOL$10.39M40
bonkSOL$10.34M14
JITOSOL$7.52M260
cgntSOL$7.37M16
MSOL$6.52M135
jSOL$4.62M36
strongSOL$4.09M25
SOL-only borrows
~100% SOL
This IS the mechanic: flash-borrow SOL → swap into LST → redeposit. Stable borrows are negligible.
More users, less capital
~$132k avg
Many wallets share ~$113M — the retail-flavoured leverage product vs Vanilla's larger balances.
Long-tail LSTs lean here
bSOL · vSOL · bonkSOL
Niche LSTs are almost entirely on Multiply — holders want leveraged staking yield, not credit.
Post-borrow analysis — Multiply loans (Kamino snapshot tag)
These are the 4,286 historical loans on the 963 obligations Kamino tags "Multiply" and are still open in the snapshot — the authoritative product tag, no on-chain guessing. They borrow ~84% SOL (with ~3% stablecoins), matching the SOL→LST leverage loop. (The position figures above are the current snapshot; these loans are the full borrow history of those same obligations, so loan count > open-position count.) Primary outcome within 1 day:

Primary outcome per Multiply loan (% of loans, within 1 day)

Historical behaviour (not snapshot). For the 4,286 loans on Multiply-tagged obligations, the single primary thing the wallet did within 1 day of borrowing. ~34% are 'quiet' because the leverage is built inside the borrow tx.
Read these as "what the wallet did next," not where this loan's money went. The Multiply loop — borrow + swap + re-deposit — is one atomic transaction; the borrowed SOL is consumed inside it. These outcomes count the wallet's separate transactions in the next 24h, so they reflect other activity, not the fate of the deployed funds. That's why ~34% are "quiet" (vs ~3% for Vanilla) — for a third of Multiply loans the one-click tx is the whole story. (Vanilla outcomes are a better proxy for "where the loan went," since a plain borrow's proceeds actually sit in the wallet — which is why the Loan-flow analysis (Vanilla tab) is Vanilla-scoped.)
Vanilla positions hold the bulk of the value and contain the real behavioural story. Positions below are the current snapshot (755 wallets, 757 open obligations, $430M coll / $227M debt owed today); the Loan flow section uses the 14,829 historical loans on those Vanilla-tagged obligations (748 of the 757 have a captured borrow) — so loan counts exceed open positions by design. ($227M is debt owed now; cumulative borrow volume over 18 months is far higher — ~$411M of stablecoins alone — because positions revolve.)
Positions (current snapshot)

Collateral by debt purpose ($M)

Vanilla collateral grouped by what each position borrows: stablecoin (cash-extraction) vs SOL (manual leverage). Of $430M, ~60% backs stablecoin borrows, ~39% SOL. By count stablecoins dominate (657 positions vs 50 SOL), but the 50 SOL positions are whales (~$3.4M each). Adding Multiply's $113M (all SOL-leverage), ~52% of all LST collateral backs SOL-leverage.

Borrowed-token mix ($M)

Current Vanilla positions (snapshot). Debt token mix ($M) — mostly stablecoins (the cash-extraction pattern).
Full LST breakdown — Vanilla
LSTCollateralObligations
dSOL$171.28M12
JITOSOL$89.30M474
JupSOL$76.14M237
MSOL$60.50M140
hSOL$11.44M5
dfdvSOL$10.07M1
stkeSOL$6.06M14
pSOL$4.22M50
vSOL$0.57M5
jSOL$0.36M5
Loan flow (14,829 historical loans on these obligations)
What borrowers do after taking a Vanilla loan. Each loan gets one primary outcome from the borrowed funds' first day; "loop" = real re-leverage (re-deposit collateral or borrow more) — not just a swap, since a swap is how you loop or cash out. (Multiply loans are on the Multiply tab — their leverage is atomic, nothing to trace; closed obligations sit in History's "Closed" bucket.)
Borrower groups at a glance (by what each loan borrows)
Grouped by the token each Vanilla loan borrows. Distinct wallets are per group — a wallet that borrows two different tokens is counted in each group, so they don't sum to the ~742 distinct Vanilla borrowers. "Primary follow-up" = the most common 1-day outcome for that group.
What's borrowed

By borrowed token (% of loan events)

Of the Vanilla loans, the share by borrowed token — ~78% of borrow events are stablecoins.

Distinct users by borrowed token

Number of distinct wallets that borrowed each token. Compare with the loan-event share on the left: a token can be a big slice of events but a smaller slice of people if a few wallets borrow it repeatedly. (A wallet that borrows two tokens is counted under both.)
Vanilla loans are stablecoin-heavy~78% are stablecoin borrows, the rest SOL/LST (leverage-style) plus a small unpriced "Other" slice. We don't show USD loan sizes: transactions carry token amounts, not prices, so a dollar value would require assuming a SOL price — which we've chosen not to do.
Where the borrowed funds go — one primary outcome per loan

Primary outcome — % of loans (within 1 day)

Each of the 14,829 Vanilla loans gets one primary 1-day outcome; bars show the share of loans.

Primary outcome — distinct users

Distinct wallets with ≥1 Vanilla loan of each outcome. An outcome driven by a few heavy borrowers shrinks here vs the loan-share on the left. (A wallet with loans across several outcomes is counted in each.)
Loan takenborrow against LST collateral
Off-ramps to a CEX~17% of loans · ~36% by $ (whales off-ramp bigger)
To a personal wallet~29% · unlabeled, likely self-custody
Or re-levered~27% · grow position, nothing leaves
Or into DeFi~14% · lend / restake / perps
The looping reality check: the funds-leaving outcomes dominate — ~17% off-ramp to a CEX and ~29% go to a personal wallet (the old vague "moved out ~49%", now split by where the money actually went, via Arkham labels). Re-leverage (re-deposit / borrow-more) appears in ~70% of loans — but ~47% of those also send funds out the same day, so pure looping is just ~27%. (This is by count of loans. Weighted by borrowed dollars the CEX off-ramp is larger — ~36% / $146M — because big loans leave more; see the note below.)
Stablecoin vs SOL loans (by what each loan borrows)
Vanilla loans only, split by the loan's own borrowed token (stablecoin 11,506 vs SOL 1,099). Both send roughly half their funds out of the wallet, but the destination differs: stablecoin loans off-ramp to a CEX nearly twice as often (~18% vs ~10% of loans) — the cash-extraction pattern — while SOL loans re-lever more and send more to personal wallets (~37%), running the leverage loop by hand (the DIY version of Multiply).

Primary outcome — by loan count

Vanilla loans only. 1-day primary outcome for stablecoin borrows (11,506 loans) vs SOL borrows (1,099). Each loan = one vote.

Primary outcome — by borrowed value

Same loans, weighted by $/SOL borrowed. This is what changes the story: by value SOL barely loops (big borrows leave), and stablecoin off-ramp is much larger than the count suggests.

Stablecoin loans (cash-extraction)

~11,500 loans

The loan is spendable liquidity: ~18% off-ramp to a CEX and ~28% go to a personal wallet (~48% leave the wallet in total). By borrowed dollars the CEX share is higher still (~36% / $146M) — big loans off-ramp more. The cash-extraction pattern.

SOL loans (leverage / DIY)

~1,100 loans

Manual leverage — not the one-click Multiply loop. Re-leverage appears in ~74% of these loans by count, but only ~40% of their swaps actually buy an LST and by SOL value the loop is just ~3% — looping is small-wallet behaviour. The big SOL borrows mostly leave: ~62% of SOL value goes to another wallet, ~33% into DeFi.

Manual stablecoin leverage — the "borrow USDC → buy an LST → redeposit" loop. 2,326 loans · 20% of stablecoin loans · ~$44M (10% of borrowed value) · 276 wallets. It's smaller than the ~28% "re-lever" outcome because only ~31% of stablecoin swaps actually buy an LST — the rest swap to something else. Real, but a minority pattern; most stablecoin borrowing is cash extraction, not DIY leverage.
Same strategy, two ways: SOL-borrowing (DIY-style) loans run the leverage loop by hand on a vanilla position; the one-click Multiply tab is the productised version.
Count of loans vs borrowed dollars — same story, heavier tail. The outcome charts above split every loan by where its funds went, counted one loan = one vote. Weighting instead by borrowed dollars — following the stablecoin through swaps to its terminal (Vanilla-only wallets, $411M borrowed over 18 months, ~4× the $93M open stablecoin debt) — the off-ramp is larger because big loans leave more: ~36% of stablecoin $ reaches a CEX ($146M), ~31% into DeFi, ~13% repaid a loan, ~9% on-chain treasury, ~5% a market-maker, ~3% a personal wallet. So by count ~17% of Vanilla loans off-ramp to a CEX, but by dollars it's ~36%. Destinations resolved via Arkham labels on the top recipients (~50 addresses ≈ 90% of $). "CEX off-ramp" = funds reached an exchange deposit address; caveats: 1-day window for the count view, 7-day token trace for the $ view.
Based on: all 23,680 LST-collateral borrows (Jan 2025 → Jun 2026) by the 1,537 cohort wallets, across 2,511 obligations. Each borrow is bucketed by its obligation's authoritative Kamino tag if that obligation is still open in the 2026-06-02 snapshot (Vanilla / Multiply / Leverage), else Closed — exited before the snapshot, not classified.
Shows: the scale of the dataset, borrowing volume & mix over time, and how each position type behaves (repayment, lifespan, reuse) — compared side by side, so no filter is needed. Counts are borrow events (transactions); a wallet/obligation that re-borrows counts each time (distinct counts shown separately).
Coverage caveat: our per-wallet transaction pull is a recent slice, so the oldest borrows are under-captured — per-type loan/obligation counts here are a floor, not the full lifetime total. This is why the historical open-obligation counts (Vanilla 748 / Multiply 963 / Leverage 31) sit just below the snapshot's open counts (757 / 1,081 / 33): ~130 currently-open obligations borrowed before our window.
Borrow volume over time (borrow transactions only)

Loans per month — Vanilla / Multiply / Leverage (open) vs Closed

Borrow transactions per month, stacked by the obligation's snapshot tag (Vanilla / Multiply / Leverage) or Closed. Each loan = one borrow tx.

Loans per month — by borrowed token

Same borrow transactions as the chart on the left (23,680 total), split by the token each loan borrowed (stablecoin / SOL / LST / other) instead of by position type. Identical monthly totals.
All Kamino transactions on these obligations (not just borrows)
Same 2,511 obligations as the Loans chart, but counting every Kamino transaction that touches them — borrow, repay, deposit (add collateral), withdraw, liquidation — one count per transaction. So this is the full on-Kamino activity of these positions; borrows (above) are just one slice of it.

Kamino txs per month — by position type

All transaction types (borrow + repay + deposit + withdraw), so monthly totals are ~3.5× the borrow-only Loans chart above — e.g. May 2026 ≈ 7,459 txs but only ~2,085 borrows.

Kamino txs per month — by transaction type

Same txs, split by primary action. Borrows are only ~29% of activity; deposits/repays/withdraws (collateral management & paying down debt) are the majority.
Each tx is counted once, by its primary action (priority: liquidation → borrow → repay → withdraw → deposit). A Multiply build (deposit + borrow in one tx) counts as a borrow. The borrow series here (24,135) closely tracks — but isn't identical to — the curated Loans chart (23,680): the ~455 extra are borrow txs on these same obligations that fell outside the curated loan list (e.g. unresolved-mint or out-of-scope borrows). Same coverage caveat as the borrow charts — the oldest transactions are under-captured, so these are floors.
Distinct active wallets & obligations per month

How many different wallets / obligations borrowed each month (vs the borrow-event volume above)

Counts each wallet / obligation once per month if it borrowed that month (distinct, not borrow-event volume). Far below the borrow bars above because a small set of positions borrow many times per month.
Borrow-event volume is higher than distinct wallets/obligations because the same wallet and the same obligation borrow repeatedly within a month — e.g. the busiest month (May 2026) had 2,025 borrows but only 341 distinct wallets and 363 distinct obligations active. (A small bot-like tail drives this: ~5% of obligations generate half of all borrows — one borrowed 683×.)
How each position type behaves (per snapshot-tag bucket — compared directly)

Median time to first repayment (days)

Per loan: days from the borrow to the first repayment on the same obligation (may be partial — the obligation can keep going). Bar = median across loans in the bucket that had a later repay.

Repaid in-window

Share of borrow events in the bucket that have ≥1 repayment on the same obligation at any later point in our data. "Did a repay ever follow," not "fully paid off." Closed ≈ 100% by definition.

Median obligation lifespan (days)

Per obligation: days from its first captured borrow to its last captured activity (borrow or repay). Bar = median across obligations in the bucket.

Median borrows per obligation (reuse)

Per obligation: how many separate borrow transactions it has over its life. Bar = median across the bucket. Heavily skewed — median is 6 (Vanilla) but the mean is ~20 and the top 5% of obligations generate half of all borrows (one borrowed 683×). The median is the typical position; monthly volume spikes come from the bot-like tail.

Loans (borrow events) by type

Total borrow transactions in each bucket (sums to 23,680). A wallet that borrows 5× contributes 5.

Distinct obligations by type

Number of distinct positions in each bucket (sums to 2,511). Each obligation counted once, regardless of how often it borrowed.
The two products behave very differently. Vanilla obligations repay fast (median ~1.5d to first repayment, ~92% repaid in-window), live long (~164d) and are heavily reused (~6 borrows each) — revolving credit. Multiply obligations are held (median ~10d to first repayment, ~62% repaid, ~17d lifespan, ~2 borrows) — leveraged staking, not flipped. Closed obligations are ~100% repaid (that's why they closed). Leverage is a tiny cohort (31 obligations) with dust-sized borrows — read with caution. "Time to first repayment" = borrow → first repay on the same obligation (may be partial); "lifespan" = first borrow → last activity; over loans/obligations with a captured repayment.
Per-wallet event timelines for 29 cash-extractor wallets — all Vanilla borrowers from the cohort (28/29 borrow against Vanilla obligations; all 29 hold an open Vanilla position), picked as the largest stablecoin off-rampers (≈5 per borrow-size bucket). A deliberately whale-biased illustration of the cash-extraction pattern — concrete examples, not a representative sample and not the source for the aggregate charts (those cover all 14,829 Vanilla loans across ~742 wallets). Each wallet is collapsed by default — click to expand its full event timeline. Built separately from cash_extractor_timelines.html.
Answers at a glance — the core questions, by borrowed $ (not wallet count)
SOL borrows → leverage
~38% of SOL $
Multiply (automatic) + manual. Almost all of it is the one-click Multiply product ($76M); manual Vanilla leverage is only ~$4M. By loan count leverage is ~85% (Multiply is thousands of tiny loops).
SOL borrows → another wallet
~40% of SOL $
Off-ramp pattern. Of this, ~22% of all SOL $ goes to a confirmed CEX deposit; ~40% to an unlabeled personal wallet (self-custody or unlabeled off-ramp).
SOL borrows → DeFi
~21% of SOL $
Sent to a DeFi contract / protocol (lend, restake, perps, LP). The remainder (~1%) is quiet.
Stablecoin borrows → stay vs leave
56% stay · 44% leave
By $: 44% off-ramps to a CEX; 56% stays on Solana (DeFi / repay / treasury / personal). The single biggest stablecoin outcome is the CEX off-ramp.
Manual stablecoin leverage
$44M · 20% · 276 wallets
"Borrow USDC → buy an LST → redeposit" (the DIY-Multiply loop): 2,326 loans, 20% of stablecoin loans, ~$44M (10% of value). Note only ~31% of stablecoin swaps actually buy an LST.
Open debt ≠ borrow volume
$227M now ≠ $411M flow
$227M is debt owed today (snapshot); $411M is stablecoins borrowed over 18 months (positions revolve: borrow→repay→re-borrow). Open stablecoin debt today is just $93M.

SOL borrows by use case

Of all SOL currently borrowed (~$210M). By dollars the split is leverage / DeFi / sent-out; by loan count it's ~85% leverage because Multiply is many tiny automated loops. Multiply is 100% leverage by construction; the Vanilla portion is sized by current debt and split by its 18-month behaviour.

Vanilla SOL borrows — where the $ goes (by SOL value)

Manual SOL borrows only (the traceable ones). By value the leverage loop is tiny (~3%) — big SOL borrowers send the SOL out (~62% to another wallet) or into DeFi (~33%). Looping is a small-wallet, by-count behaviour.

What LST borrowers do after they take out a loan

Each Vanilla loan gets one 1-day outcome, now resolved by where the funds actually went (recipients labeled via Arkham): ~17% off-ramp to a CEX, ~29% to a personal wallet, ~3% on-chain — while ~27% purely re-lever (loop), ~14% deploy into DeFi, ~7% swap-and-hold, ~3% stay quiet. Counting by borrowed dollars instead of by loan, the CEX off-ramp is larger — ~36% / $146M — because big loans leave more (~31% DeFi, ~13% repaid, ~9% treasury, ~5% market-maker, ~3% personal). Either way the headline holds: a large share of borrowed stablecoins is cash extraction headed off-chain, not leverage looping.

How to read this

Each loan gets one primary outcome in a tight 1-day window, and "loop" means real re-leverage — re-depositing collateral or borrowing more — not just a swap (a swap is how you loop or cash out, so it isn't an outcome by itself). Repaying or withdrawing collateral isn't treated as a use-of-funds outcome. Telling check: re-leverage appears in ~70% of Vanilla loans, but ~47% of those also move funds out the same day — so looping rarely means "nothing left."

Each loan is bucketed by its obligation's authoritative Kamino tag — Vanilla / Multiply / Leverage — if that obligation is still open in the 2026-06-02 snapshot, else Closed (it exited before the snapshot, so we don't try to classify it). Open obligations carry Kamino's real product tag. Each loan is also split by its own borrowed token (Stablecoin / SOL / LST). The History tab shows how this trends over time.

The off-ramp, now measured: "move to a wallet" used to be a black box — but labeling the top destinations via Arkham resolves it. Of the borrowed stablecoins, ~36% reach a CEX deposit (built-in labels caught only ~7%); ~58% stays on-chain (DeFi / repay / treasury / market-maker); only ~3% is a genuinely personal/unlabeled wallet.

1. Position types — Vanilla vs Multiply

Each of the 23,680 LST-collateral loans is bucketed by its obligation's Kamino tag (if still open) or Closed: Vanilla 14,829 loans (63%, on 748 open obligations); Multiply 4,286 (18%, 963); Leverage 617 (3%, 31); Closed 3,948 (17%, 769 exited — not classified). These are Kamino's real product tags.

Vanilla loans

The behavioural heart (Vanilla tab): ~27% purely re-lever, ~17% off-ramp to a CEX, ~29% send to a personal wallet, ~14% deploy into DeFi, ~7% swap-and-hold. (By borrowed dollars the CEX off-ramp rises to ~36% / $146M — big loans leave more.) Stablecoin-heavy (~78% stablecoin borrows) and short-lived (median ~1.5 days to first repayment; ~92% repaid in-window).

Multiply loans

The leverage loop is built inside the borrow tx, so ~34% are "quiet" within a day (nothing to trace). Historical Multiply loans borrow ~84% SOL (the current open Multiply debt is ~100% SOL); they're held far longer (median ~10 days to first repayment; ~62% repaid in-window) and rarely off-ramp to a CEX (~6%).

2. Within Vanilla — stablecoin vs SOL borrowers

Splitting Vanilla loans by their borrowed token (Vanilla tab): stablecoin borrowers (~11,500 loans) are the cash-extraction pattern — they off-ramp to a CEX ~18% of the time, nearly double the SOL loans' ~10%; SOL borrowers (~1,100 loans) are manual DIY leverage — they re-lever the most, are almost never "quiet," and when they move SOL out it mostly goes to personal wallets (~37%). Both send ~half their funds out of the wallet; the difference is the destination.

3. Leverage & Lending positions — negligible

Together a rounding error in the snapshot (Overview). Not a meaningful behaviour group.

What the collateral is (current snapshot)

From the June-2026 positions snapshot: dSOL holds the most value in very few whale positions; JitoSOL and JupSOL are spread across hundreds of wallets; mSOL follows. Almost everything sits in Kamino's Main Market. (Full LST × position-type matrix on the Overview tab.)


Methodology & definitions

Scope

1,537 wallets that posted a liquid-staking token (LST) as Kamino collateral and borrowed against it — 23,680 LST-collateral borrows, Jan 2025 → Jun 2026 (21 hyperactive / market-maker wallets excluded). (The 2026-06-02 snapshot shows 1,569 distinct wallets with open LST positions — a few hold a position with no captured borrow.) Everything is restricted to loans where an LST is the collateral, not all Kamino loans. The borrowed asset can be anything (SOL, stablecoins, …).

Post-loan outcome — one exclusive outcome per loan, within 1 day

Each loan is assigned a single primary outcome by priority:

1. Re-levered (loop) — re-deposit collateral / borrow more, and nothing leaves, and no DeFi deploy.
2. Funds leave the wallet — split by destination via Arkham labels: Off-ramped to a CEX, Sent to a personal wallet, or Sent on-chain (treasury/DeFi).
3. Deployed in DeFi — lend / restake / perps / mint LST / send to a protocol.
4. Swapped & held — swapped only, nothing redeposited or sent out.
5. Quiet / closed — repay/withdraw only, or nothing notable.

"Loop" means real re-leverage, not a swap. The 1-day window captures what users do once they have the liquidity, before later noise. Each outcome is also tallied by distinct wallets (Vanilla tab), not just loan count.

Outcome vs. position tag — different axes. A loan's outcome is not its Kamino tag: Multiply is the product (a tag), Re-levered is what the wallet did next. A Multiply loan still gets one outcome — usually "Quiet," since its leverage happened inside the atomic borrow tx. And because the ladder is a precedence (not first/last in time), its order is a deliberate choice: a loan that both loops and sends funds out lands in one of the funds-leave buckets (CEX / personal / on-chain), which is why pure looping reads ~27% even though re-leverage appears in ~70%.

Key caveats

"Funds leave the wallet" — resolved by destination via Arkham labels. The outcome charts split each leaving loan into off-ramp-to-CEX / personal / on-chain by labeling the recipient (≈50 addresses ≈ 90% of value). By count of loans, ~17% of Vanilla loans off-ramp to a CEX; weighted by borrowed dollars it rises to ~36% ($146M) — big loans leave more. "CEX off-ramp" = funds reached an exchange deposit address.
Coverage / recency: the per-wallet transaction pull is a recent slice, so the oldest borrows are under-captured — per-type loan/obligation counts are a floor, not a lifetime total.
Two lenses — by loan vs by dollar. The outcome charts count one loan = one vote and classify each loan's destination (Arkham-labeled). A second lens weights the same destinations by borrowed dollars (following the stablecoin through swaps over 7 days): there the CEX off-ramp is larger (~36% / $146M vs ~17% by count) because large loans off-ramp more. Both are summarised on the Vanilla tab. (For a Multiply loan the borrowed SOL is consumed inside the atomic borrow tx, so its outcomes reflect other activity — hence ~34% "quiet".)

Validation

The transaction classifier was spot-checked against fresh, independent Helius fetches (not the stored dumps): it matched 50/50 sampled follow-ups (with the real labels.db + CRM), zero mismatches (random seed 42), and one wallet's borrow count reconciled exactly (3/3) on-chain. The obligation→tag join is deterministic — every obligation maps to exactly one snapshot tag. Not exhaustively verified: completeness/recall across all 1,537 wallets — sampled facts are correct, but a missed borrow somewhere can't be ruled out from a sample.

Reproducibility

Single self-contained file generated by build_combined_v2.py from CSVs. Behaviour: gen_loan_outcomes2.py (outcomes + monthly history); per-type metrics: gen_obligation_metrics.py; all-Kamino-tx history: gen_kamino_tx.py; obligation→tag join: snap_tags.py; wallet structure & waterfall: gen_structure.py; stablecoin token-flow trace: gen_trace_stable.py; SOL fate: gen_sol_fate.py; use-case / manual-leverage / stays-vs-leaves answers: gen_qa.py. Destination labels (CEX / MM / treasury) from Arkham (identities_all.csv), joined onto the trace terminals. Chart.js and the Timelines view are inlined — no external files or internet needed (fonts aside).