Before ERC-4626, every yield vault had its own interface. Yearn used one, Aave used another, Compound another. Integrators had to write custom code per protocol. ERC-4626 (finalized 2022) fixed this: a standard interface for tokenized vaults holding a single ERC-20 asset.
The core functions
deposit(assets, receiver). User depositsassets, receives shares.mint(shares, receiver). User specifies shares to receive, deposits required assets.withdraw(assets, receiver, owner). User withdraws specific asset amount, burns shares.redeem(shares, receiver, owner). User burns specific share amount, receives assets.- Preview versions of all four (no state change, quote only).
totalAssets(). Reports total assets under management.convertToShares(assets)andconvertToAssets(shares). Rate helpers.
Why standardization matters
An integrator that supports ERC-4626 supports every 4626 vault, current and future. Wallets can display vault positions natively. Aggregators can route deposits. Composability compounds.
Adoption
- Morpho MetaMorpho vaults are 4626.
- Yearn v3 vaults are 4626.
- Fluid vaults are 4626-compatible.
- Sommelier, Superform, and dozens of others use it.
Common patterns
- Inflation attack. Early depositors can dilute future depositors if the first deposit is tiny. Best practice: seed vault with a minimum locked deposit or use virtual shares.
- Preview functions must be accurate. Integrators rely on them. Any withdrawal fee should be reflected in
previewWithdraw.
Limitations
- Single asset only. Multi-asset vaults need extensions (ERC-7540 for async, ERC-7575 for multi-asset).
- Yield accounting is up to the vault; standard defines the interface, not the strategy.
Koinlytics