docs/content/standards/deepbook-margin/contract-information/interest-rates.mdx
Margin pools use a kinked interest rate model where the borrow rate increases gradually up to an optimal utilization point, then rises sharply to discourage excessive borrowing and maintain liquidity for withdrawals.
The formula for the borrow interest rate (APR) is:
if utilization < optimalUtilization:
borrowRate = baseRate + utilization × baseSlope
else:
borrowRate = baseRate + optimalUtilization × baseSlope + (utilization - optimalUtilization) × excessSlope
Where:
| Asset | Base Rate | Base Slope | Optimal Utilization | Excess Slope | Max Utilization |
|---|---|---|---|---|---|
| USDC | 0% | 15% | 80% | 500% | 90% |
| SUIUSDE | 0% | 15% | 80% | 500% | 90% |
| SUI | 3% | 20% | 80% | 500% | 90% |
| DEEP | 5% | 25% | 80% | 500% | 90% |
| WAL | 5% | 25% | 80% | 500% | 90% |
The Max Utilization rate caps how much of the pool's liquidity can be borrowed, ensuring suppliers can always withdraw a portion of their funds.
At 50% utilization in the USDC pool (below optimal):
borrowRate = 0% + 50% × 15% = 0% + 7.5% = 7.5% APR
At 80% utilization (at optimal):
borrowRate = 0% + 80% × 15% = 0% + 12% = 12% APR
At 85% utilization (above optimal, below max):
borrowRate = 0% + 80% × 15% + (85% - 80%) × 500% = 0% + 12% + 25% = 37% APR