How yield is generated
Vault yield comes entirely from interest paid by borrowers in the underlying reserves. There is no other yield source — if borrowers in your reserves aren’t paying interest, depositors aren’t earning. Lender yield in any Kamino reserve follows the same formula:Auto-compounding via share price
Vault depositors don’t receive interest payments. Instead, accrued interest grows the vault’s total assets while the share count stays fixed — so the share price (kToken exchange rate) appreciates. A depositor who held one kToken at deposit redeems for more deposit tokens at withdrawal.Manager fees
You earn revenue through two fees configured at vault creation, both editable post-creation, both denominated in basis points (1 bp = 0.01%).
Both fees accrue continuously in the deposit token. They are not auto-collected — you call a withdraw-pending-fees instruction when you want to claim. You can also give-up-pending-fees to return accrued fees to depositors (useful when fees grow disproportionately to vault size). For the workflow, see Collect fees.
When to use which
- Performance fee rewards generated yield. It scales with how well the vault performs and aligns curator incentive with depositor outcome.
- AUM fee charges for active management regardless of yield. It scales with capital under management.
PerformanceFeeBps: 1500 (15%), ManagementFeeBps: 200 (2%). Both rates are editable post-creation — see Collect fees → Update performance fee.
The withdrawal penalty
The withdrawal penalty is a security mechanism, not manager revenue. Penalties are returned to the vault, benefiting remaining depositors. It exists to prevent yield-sniping — the exploit where a user deposits just before an autocompound event, captures the yield, and immediately withdraws.
The system charges the MAX of the two for each withdrawal. The BPS-based fee scales with size; the lamports-based fee prevents dust exploits.
Recommended starting values:
WithdrawalPenaltyBps: 1 (0.01%), WithdrawalPenaltyLamports: 1. These are deliberately small — the penalty exists to defeat the exploit, not to deter normal withdrawal behaviour. Set both at vault creation.
The crank fund fee
A small per-deposit fee charged on each deposit to cover the computational cost of investing the deposited capital into reserves. Not curator revenue — funds the protocol’s invest crank operations.
Higher values on a vault with many small deposits (and many reserves) increase per-deposit cost. Most vaults leave this at the recommended floor. Set at vault creation.
Fee summary
Farm rewards
Beyond interest yield, you can distribute additional rewards to depositors via farms. Every vault supports three farm types:Vault Farm mechanics
The Vault Farm is a separate on-chain account attached to the vault. Once created, farm authority transfers to the protocol — you stop directly managing it. To distribute rewards, you fund the farm with the reward token; depositors claim proportional to their kToken holdings over the reward period. The farm has a cooldown period — a delay before staked depositors can claim rewards. This prevents the exploit where a user deposits, claims rewards immediately, and withdraws. The cooldown ensures meaningful exposure before the claim entitlement. To attach the Vault Farm and configure the cooldown, see Configure farms.Autocompound
The Autocompound Farm is a special-case farm where rewards are denominated in the vault’s deposit token and automatically reinvested into vault positions. A USDC vault with an autocompound farm distributes USDC rewards that compound directly — no manual claim, no token management for the user. This is currently configurable via the UI; SDK support is coming. See Configure farms → Autocompound.Insurance Pool farm
The Insurance Pool is implemented as a dedicated farm that holds the curator’s locked capital. It interacts with the vault as a depositor but with stronger commitments (mandatory 30-day cooldown, public on-chain visibility, emergency-withdrawal multisig). Treat it as a risk primitive, not a yield mechanism — see Risk primitives for the model and Set up the Insurance Pool for the workflow.What you display to depositors
Vaults surface several metrics on Kamino’s UI:- Headline APY — the blended interest APY across allocations.
- KMNO emissions (when active) — added to the headline APY.
- Farm rewards — typically displayed separately from the headline yield, since they’re paid in non-deposit tokens.
What’s next
Collect fees
Withdraw pending fees, give up fees, and update fee rates.
Configure farms
Set up the Vault Farm, Insurance Pool farm, and Autocompound farm.
Risk primitives
The Insurance Pool and Whitelisted Reserves.
Parameters
Full parameter reference.