Tracking Solana DeFi Positions in a Portfolio
Solana DeFi is the least-covered sector in portfolio APIs. How Kamino, Jupiter, Jito and LST positions break token-only portfolio tracking.
Protocols covered
Solana
Kamino
Jupiter
Jito
Marinade
Solana is where portfolio APIs diverge most. In our nine-provider benchmark, several providers have no Solana support at all, and most of the rest read Solana as a token list — which on an active wallet is a small fraction of the truth.
Same Solana DeFi whale, same day: full decoding reported $26.04M; token-only reads stopped near $9.67M.
Why Solana breaks token-only tracking
On Solana, as on EVM chains, a DeFi position leaves a token in your wallet that is a claim, not the value. The difference is that Solana's largest protocols are all position-based, so the share of a wallet that is invisible to a balance query tends to be higher.
| Protocol | What sits in the wallet | What it actually represents |
|---|---|---|
| Kamino | Obligation account | Supplies, borrows, rewards, loan health |
| Jupiter Lend | Receipt token | Supplied principal plus earned yield |
| Jito | jitoSOL | Staked SOL plus accrued MEV rewards |
| Marinade | mSOL | Staked SOL plus staking rewards |
| Liquid staking generally | An LST | Underlying stake, not the LST's own thin market price |
Kamino is the clearest case. A Kamino position is not a token in your wallet — it is a lending obligation with supplies, borrows, rewards and a health factor. An API that lists the obligation token gives you a string you cannot read.
The LST pricing trap
Liquid staking tokens are the most common source of quietly wrong Solana
numbers. jitoSOL and mSOL accrue value against SOL over time, so their
correct valuation is derived from the underlying stake and the exchange rate —
not from whatever the LST last traded at on a thin pair.
Price an LST as a loose token and net worth drifts, usually downward, in a way that looks like market movement rather than a data bug.
What full decoding returns
For a Solana wallet, complete coverage means resolving:
- SPL token balances — the easy part every provider does.
- Lending positions — Kamino and Jupiter Lend supplies, borrows, accrued interest and loan health.
- Staking — native stake accounts plus LSTs valued from the underlying.
- Liquidity positions — pool share resolved to underlying assets.
- Perps and derivatives — margin and unrealised PnL held as protocol state.
Octav scores 100 on coverage in the benchmark and reads Solana DeFi most completely of the nine providers measured. It is worth being precise about what that costs: our performance score is 40 and our cost score is 54, both below DeBank and Zerion. Decoding this much takes time. See Octav vs DeBank vs Zerion for the trade-off.
Fetching a Solana portfolio
Solana addresses are base58 and go through the same endpoint as EVM addresses, so a mixed-chain fund does not need a separate integration:
curl -s https://api.octav.fi/v1/portfolio \
-H "Authorization: Bearer $OCTAV_API_KEY" \
-G --data-urlencode "addresses=<solana-address>,<evm-address>"One call, both ecosystems, positions decoded in the same response shape. The full endpoint list is in the API endpoint reference.
There is also a Solana-only endpoint for airdrop eligibility, /v1/airdrop,
which does not apply to EVM addresses.
How to test a provider on Solana
Take a wallet you understand — ideally one with a Kamino position, an LST and a plain SPL balance — and compare the API's answer to what the protocol UIs show.
Three specific things to check:
- Does the Kamino position appear as supplies and borrows, or as an opaque token?
- Is the LST valued from the underlying stake, or from its own market price?
- Does the total change when you add a Solana address to an EVM-only request?
If a provider silently returns less, you will not get an error. You will get a number. That failure mode is covered in Why Portfolio APIs Disagree About Net Worth.
Keep reading
DeFi TrackingTracking DeFi Positions Across Multiple Chains
Why DeFi positions are hard to enumerate across chains, how lending, LP and staking positions differ, and what a complete tracking setup has to cover.
1 min read
DeFi TrackingTracking Hyperliquid Perps in Your Portfolio
Perp positions are protocol state, not tokens, so most trackers miss them. What Hyperliquid and Lighter positions look like when decoded properly.
2 min read
DeFi TrackingDecoding Derive Options in a Crypto Portfolio
On-chain options are barely covered by portfolio APIs. Only one of nine providers benchmarked decodes the Derive options book; the rest see collateral.
2 min read