Skip to content

Protocol Fees ​

Textile protocol charges the following fees:

  • Deposit – 0%
  • Interest Repayment – 10%

Fee Distribution ​

All fees rotate directly into an AMM (Automated Market Maker), with a single-side buy position at 15% discount.

Example ​

A user deposits $100 into a pool and receives 100 debt tokens in return.

  1. $1 protocol fee is taken and staked into an AMM
  2. Anyone can now sell 1 debt token in return for $0.85 immediately When that happens, the position is immediately moved to a redeem request

This mechanism provides immediate liquidity for debt token holders while maintaining protocol sustainability.

Operator vaults ​

An operator vault charges its LPs two fees, both set at deploy and both immutable for the vault's life: an annual management fee on supply, capped at 25% a year, and a performance fee on gains, capped at 50%. Either can be zero.

Those two numbers are contract ceilings, not rates. They exist so a fat-fingered deploy cannot mint a vault that eats its LPs, and nothing more. The terms Textile prefills when an operator creates a vault are 10% and 10%, and live vaults sit at or under that. Both rates are public immutables on the vault, so whatever a vault charges is readable before you deposit and cannot change afterwards.

Neither fee is collected in cash. At every epoch checkpoint the vault mints new shares and that dilution is the fee. The management leg mints supply × f / (1 − f) for a rate f over the elapsed time, and is charged whether the vault made money or lost it. The gross-up matters because a mint dilutes rather than withdraws: minting a flat supply × f would leave the recipient on f / (1 + f) of the vault, so a 2% fee would take 1.96%. A single checkpoint is capped at half the vault, which only bites after years without a checkpoint near the 25% rate cap. Whoever holds fee shares redeems through the same epochs as any LP. The minimum redeem size keeps dust out of the queue but never keeps anyone in the vault: any holder, fee recipient or LP, may redeem their entire balance below it, so a small residue can always leave.

The performance fee ​

The performance fee is charged on trading profit, not on the corridor price moving. The vault keeps a basket mark: the settlement and corridor inventory per share it last charged a fee against. At every priced checkpoint that basket is revalued at the attested price, and only NAV above it counts as performance. Inventory the vault merely held while the rate moved is worth exactly what the basket is worth, so a currency move in either direction reads as zero. Spread capture, a fill at a better price than the market, and interest earned on idle settlement in the yield adapter all lift NAV above the basket and are charged. Only the checkpoints that carry a risk-signed NAV can charge it; the emergency exit has no price, so it accrues nothing and the next priced checkpoint picks it up.

The shares are minted against post-fee NAV, so LPs keep exactly 1 − rate of a gain. On a vault with a 20% performance fee, a 1,000,000 USDT book that earns 100,000 of spread mints about 18,518 shares: the LPs' stake is then worth 1,080,000 and the fee is worth 20,000. Eighty percent of the gain, not 80% of 1.2. Once charged in full, the basket becomes the post-fee inventory per share, so a flat period is never charged twice. A deposit joins the basket in the asset it arrived in, so an entrant is not handed a slice of gain earned before they showed up, and a redemption pays out pro rata and leaves the basket per share alone.

The vault also keeps the older mark, the all-time-high price per share. It ratchets up at every priced checkpoint and never falls, and it is public either way. What it does depends on a switch the operator sets at deploy, perfFloorEnabled, which is immutable like every other fee term.

With the floor on, the fee is also held back while the vault sits below its high. The checkpoint charges the smaller of the gain over the basket and the gain over the high, and whatever the floor holds back is not forgotten: the uncharged remainder stays owed and is collected at a later checkpoint once the vault is back above its high. So an LP who deposited at a currency spike is never charged below their entry, and trading profit earned during a drawdown is charged only once the drawdown is recovered. The cost is that on a corridor whose asset keeps devaluing against the settlement asset the high may never be seen again, the performance fee is unlikely to fire at all, and the operator is paid from the management leg alone.

With the floor off, the basket alone decides. The performance fee is charged on trading profit relative to holding the inventory, whatever the currency did, and it is never charged on a currency move in either direction. The LP carries the currency exposure of the inventory in both modes; the switch only changes whether trading profit earned during a drawdown waits for the recovery or is charged as it is made. Textile's admin form defaults to off.

A vault that empties out completely resets both marks, so the next depositor does not inherit a bar built while they were not there.

The protocol cut ​

Every accrual is split two ways, and each leg has its own split. At deploy the operator sets Textile's share of the management fee and, separately, Textile's share of the performance fee, each capped at 50% and 10% by default. That fraction of the minted shares goes to Textile's protocol fee recipient; the rest goes to the vault's fee recipient, which the operator sets and can change. So on a vault with a 2% management fee and a 10% Textile share, LPs are diluted 2% a year, the operator's recipient collects 1.8% and Textile collects 0.2%. It is a cut of the fee, not a charge on top: a vault with a 0% fee pays Textile nothing.

The two shares live on the factory, written once when the vault is deployed and never changed; the vault reads them back at every checkpoint. Textile's recipient is an immutable on the factory. No role on the vault or the factory can change any of the three; a different recipient means a new factory, and a different share means a new vault.

Separately from both fees, each swap that settles through a vault pays the native sell-first fee, 1 bp on most live chains, to the protocol. That fee is charged by the reactor's SellFirstFeeController, not by the vault, and is unaffected by the vault's fee settings.