Managing Bad Debt: Morpho Vault V2
Overview
This guide is designed for Morpho Vault V2 curators and explains how bad debt is handled through the vault's loss socialization mechanism.
Bad Debt Recap
As a reminder, the health of a borrower's position can be divided into three main categories, with LTV being Loan-To-Value, LLTV being the Liquidation Loan-To-Value (one of the market parameters) and LIF the Liquidation Incentive Factor:
- If LTV < LLTV, the position is healthy, and the borrower cannot be liquidated.
- If LLTV < LTV ≤ 1/LIF, a liquidator can repay part or all of the user's debt and seize part or all of its collateral.
- If 1/LIF < LTV, a liquidator can seize all the collateral by repaying only a share of the debt. There is no incentive for the liquidator or borrower to repay the remaining debt. The latter is commonly referred to as bad debt.
Under situation 3, bad debt can be categorized into two types:
- Unrealized when the liquidation has not occurred yet.
- Realized when the liquidation has occurred, and the entire collateral position is seized.
How Morpho Vault V2 Handles Bad Debt
Morpho Vault V2 implements an automatic loss socialization mechanism. When bad debt occurs in an underlying market or adapter, the loss is detected and reflected in the vault's share price.
Loss Detection
Each adapter reports the actual current value of its investments via a realAssets() function. When bad debt occurs in an underlying market, the value reported by the adapter automatically decreases.
Loss Realization
During interest accrual, the vault compares the reported real asset value to its internally tracked total:
- If
realAssetshas dropped below the previously recordedtotalAssets, the vault updates its accounting downward. - Interest calculation uses
zeroFloorSub(), which floors at zero, meaning no negative interest is generated. - The vault's
totalAssetsis updated tomin(realAssets, maxTotalAssets).
Automatic Socialization
Losses are socialized proportionally because share value is determined via convertToAssets(), which computes shares × (totalAssets + 1) / (totalSupply + virtualShares). When totalAssets decreases, so does the value returned by this function. When totalAssets decreases:
- Each share is worth less.
- No shares are burned — all shareholders absorb the loss equally.
- Depositors who entered before the loss event bear the loss proportionally to their share of the vault.
Important Considerations for Curators
Management Fees During Loss Periods
Management fees continue to accrue even during periods where losses are realized. Curators should be aware that fees are computed before loss realization in the interest accrual flow.
Morpho Vault V1.1 Adapter Caveat
Morpho Vaults V1.1 do not realize bad debt internally. If a Morpho Vault V2 supplies to a Morpho Vault V1.1 via a MorphoVaultV1Adapter, the corresponding losses from that allocation will not be reflected in the Morpho Vault V2's share price. Curators should account for this when allocating to Morpho Vaults V1.1.
Flash Loan Protection
The vault includes safeguards against share price manipulation around loss realization events. Losses are only accounted for once per transaction, preventing attackers from shorting shares around a known loss event.
