Interest rates
Sward's rates aren't set by anyone. Each reserve prices borrowing from a single input, its utilization: the share of supplied liquidity currently lent out.
The kinked curve
The borrow rate follows two straight lines that meet at the reserve's optimal utilization:
u ≤ optimal: rate = base + slope1 × (u / optimal)
u > optimal: rate = base + slope1 + slope2 × (u − optimal) / (1 − optimal)
Below the kink, rates rise gently as demand grows. Past it, slope2 takes over and rates climb
steeply. That steep section is deliberate: expensive borrowing near full utilization encourages
repayments and attracts suppliers, keeping some liquidity available for withdrawals.
Suppliers earn the borrow interest, scaled by utilization and reduced by the reserve factor:
supplyRate = borrowRate × u × (1 − reserveFactor)
Feel it, don't just read it
APY, not APR
Interest on Sward accrues every second and compounds. All rates in the app and in these docs are quoted as APY, the annualised result of that compounding. A simple APR would understate a borrower's true yearly cost, so we don't use it anywhere.
Where the parameters live
Each reserve's base rate, slopes, optimal point, and reserve factor are on-chain and readable via the data provider. The app's reserve pages draw the live curve with a marker at current utilization, and every supply and borrow drawer previews how your own transaction will move the rate.