Withdraw
Getting out of the Stability Pool or out of sfyUSD — in fyUSD, in USDG, or in kind. What is never blocked, and the one case where you receive stock tokens.
Exiting is deliberately the least interesting part of this protocol. There is no lock, no cooldown, no notice period, no queue and no exit fee at the pool level.
From the Stability Pool, directly
StabilityPool.withdraw(amount)You receive your compounded fyUSD deposit — principal plus every interest payment, origination fee and routed fee credited to you since you deposited — and the call automatically triggers claimCollateral(), sending you any stock tokens the pool has assigned to you from liquidations.
Guarantee
withdraw and claimCollateral are never pausable, in any state, by any role, including the
Closer key. The single exception is a revert when called in the same block as a liquidation
offset, which exists to prevent a depositor front-running a liquidation they can see coming.
Rules R-1.2.2, R-1.2.3, R-9.2.4, R-4.4.1
From sfyUSD
sfyUSD.redeem(shares, receiver, owner) // fyUSD out
sfyUSD.redeemInKind(shares) // exact pro-rata: fyUSD plus stock tokens
Router.withdrawToUSDG(branch, shares, receiver, minUsdg)redeem gives you fyUSD as long as the collateral awaiting sale is 20% of the vault's assets or less. Above that threshold, the excess portion is delivered in kind, pro rata, valued at a discount — because otherwise the last depositors out would be handed all the unsold collateral while the earlier ones took clean fyUSD.
redeemInKind always gives you the exact pro-rata mix, for anyone who wants the stock tokens.
Rules R-9.5.6, R-9.5.1
Out to USDG in one transaction
Router.withdrawToUSDG redeems your shares and passes the fyUSD through the PSM at 0.20%. Round trip from USDG and back is 0.25%.
If the PSM reserve does not hold enough USDG to convert everything, the router converts what it can and returns the remaining fyUSD to you. It never reverts and never holds your funds waiting for liquidity. Any stock tokens from the in-kind rule come across as they are.
Rule R-9.6.2
How your balance is computed
How it is calculated
compounded deposit = d × P ÷ P_snapshot
collateral gain = d × (S − S_snapshot) ÷ P_snapshot
fyUSD yield gain = d × (B − B_snapshot) ÷ P_snapshot
P falls each time the pool absorbs a liquidation; S and B rise with collateral and yield. Your snapshot is taken at each deposit and withdrawal. The invariant that matters: the pool's fyUSD balance is always at least the sum of deposits plus pending yield, and its token balance is always at least the sum of unclaimed collateral gains.
Rules R-9.2.1, R-9.2.5, R-9.2.6
What you should expect to receive
| Situation | You receive |
|---|---|
| No liquidation since you deposited | fyUSD only, more than you put in |
| Liquidations happened, direct deposit | less fyUSD, plus stock tokens worth more than the difference |
| Liquidations happened, sfyUSD, collateral already sold | fyUSD only; the gain is in the share price |
| Liquidations happened, sfyUSD, collateral still being sold and over 20% of assets | fyUSD plus a pro-rata share of stock tokens |
Risk
A large liquidation converts part of your dollar deposit into equity exposure at a discount. That discount is your compensation and it is normally 3–7%, but the tokens can fall further before they are sold. In a fast market you can end a withdrawal with less dollar value than you deposited.
Withdrawing from a dormant branch
A branch that has not yet activated accepts pool deposits — they sit there earning nothing until activation. They remain withdrawable at any moment. If a branch never meets its activation conditions, nothing breaks and nothing is trapped.
Rules R-12.3.3, R-12.3.4
Withdrawing during a shutdown or Sunset
Both stay open. A shut-down branch keeps SP.withdraw, claimCollateral and sfyUSD.redeem fully available; so does the terminal Sunset mode, where the PSM additionally drops both its fees to zero and lifts its cap to 100%, making the USDG exit free.
Rules R-6.9.2, R-12.5.2, R-8.7.1
Last reviewed: 2026-09-07 · Spec v0.4
Earn — the Stability Pool and sfyUSD
Deposit USDG or fyUSD, receive the interest borrowers pay, and absorb liquidations in exchange. Where every point of yield comes from, and what you take on.
What you can receive
Every asset the protocol can hand you, in which role, and under what conditions — fyUSD, USDG, stock tokens, and surplus collateral.