Docs / Economics / Fees

Fees

Five fees, all of them fixed in basis points, none of them a percentage of a percentage. Every satoshi the protocol takes buys $BWA. This page lists each one, what it is charged on, and where it ends up.

Acquisition100 bpsfrom the surcharge
Keep settlement100 bpson the backing
Standing bid1000 bpson the backing
To buybacks10000 bps100% of protocol fees

Every fee in one table

Fee schedule
Parameter Bps Percent Charged on Destination
surchargeBps2502.50% The expected value, to form the acquisition fee Split three ways, below
ownerAcquisitionFeeBps1001.00% Each acquisition fee, taken out of the surcharge Protocol, then $BWA buyback
ownerSettlementFeeBps1001.00% The backing, when the acquirer keeps the NFT Protocol, then $BWA buyback
settlement discount100010.00% The backing, when the acquirer takes the standing bid Protocol, then $BWA buyback
token trading fee5005.00% $BWA buys and sells Marketing wallet
protocolFeeToTokenBps10000100.00% Accrued protocol fees $BWA buybacks

There is no listing fee, no withdrawal fee and no fee for taking either half of a position beyond the ones above. Every configurable value on this page is in Parameters.

The acquisition fee, 100 bps

1% of each acquisition fee goes to the protocol, and it comes out of the 2.5% surcharge rather than being added on top of it.

acquisitionFee = EV * (10000 + 250) / 10000 ownerCut = acquisitionFee * 100 / 10000

The acquirer price does not change when this fee changes. An acquirer pays EV * 1.025 whatever ownerAcquisitionFeeBps is set to. Moving it moves money between the protocol and depositors and does not touch what anyone is quoted.

The settlement fee, 100 bps

When an acquirer keeps the NFT, the depositor gets the backing back less 1%. That 1% is the protocol's cut on a completed sale, and it is charged once, on the backing, only on the keep and relist paths.

An acquirer who keeps an NFT pays nothing here. They already paid the acquisition fee.

The settlement discount, 1000 bps

When an acquirer takes the standing bid they receive 90% of the backing. The missing 10% is the settlement discount, and it is the largest single fee in the protocol.

It is large on purpose. The standing bid is a floor that has to be there for every position at every moment, and pricing it at par would make the pool a free option: draw, look at the NFT, and hand it back at no cost whenever it disappoints. At 90% the exit exists but has a price, so it is used when the NFT is genuinely worth less than the backing rather than as a matter of routine.

Both bid paths, BNB and $BWA, carry the same 1000 bps. Settlement has the worked comparison.

The token trading fee, 500 bps

5% on $BWA buys and sells, sent to the marketing wallet. It applies to trades against the BWA/BNB pair, in both directions, and it is separate from everything above. It is a token level fee rather than a pool level one. The contract caps it at 500 bps, so it cannot be raised past 5%.

100% of protocol fees fund buybacks

protocolFeeToTokenBps is 10000, which is the whole of it. Nothing accrued by the protocol is kept as BNB.

Two permissionless calls move it, and either can be sent by any address.

CallWhat it doesCaller keeps
payoutFees()Sweeps 100% of accrued protocol fees into the buyback reserve—
buyback()Spends up to 1 BNB from the reserve through PancakeSwap V250 bps

The 0.5% the caller keeps is what pays for the gas and the bother of running it, which is what makes the buyback something that actually happens rather than something that theoretically could. What the bought tokens are then used for is on the token page.

Depositor earnings are equal per acquisition

Every acquisition produces an amount of BNB for depositors. That amount is split equally across every active position, not in proportion to backing.

perPosition = depositorShare / activePositions

A position backed with 1 BNB earns exactly what a position backed with 0.05 BNB earns from the same acquisition. Size buys you nothing here. What size buys is time: a larger backing is drawn less often, so it stays active across more acquisitions and collects on all of them.

This is the counterweight to inverse weighting. Small positions are drawn constantly and close quickly, so they collect few payments. Large positions are drawn rarely and collect many. The two effects push against each other, which is why there is no single backing amount that dominates.

$BWA emissions to depositors work differently, on a square root of backing accumulator. The token page has that table.

The dynamic surcharge split

Once the protocol has taken its 100 bps, what remains of the surcharge is divided between paying depositors and buying $BWA. That division moves with how busy the protocol is.

Busy is measured as the gap, the time since the last acquisition.

gap <= hotGap (60s) tokenShareBps = 0 gap >= coldGap (3600s) tokenShareBps = 10000 otherwise tokenShareBps = 10000 * (gap - 60) / (3600 - 60)

tokenShareBps share of the remaining surcharge spent on $BWA the rest goes to depositors as acquisition earnings

The interpolation, at five gaps Illustrative
GapReadingTo depositorsTo the $BWA buy
60sHot, at or under hotGap100.00%0.00%
600sBusy84.75%15.25%
1830sExact midpoint of the two bounds50.00%50.00%
3060sQuiet15.25%84.75%
3600sCold, at or over coldGap0.00%100.00%

The reasoning is that the two payouts matter at different times.

Overriding the split

forcedTokenShareBps replaces the interpolation with a fixed share when it is set. The schedule above is what applies while it is not.

Worked example Illustrative

The five position pool from the pricing page, one acquisition, taken at a gap under 60 seconds so the whole remaining surcharge goes to depositors. Nothing here is read from chain.

One acquisition fee of 0.13486842 BNB, taken hot
LineBNBRule
Expected value0.13157895The price of the position, not a fee
Surcharge0.00328947250 bps of EV
Protocol cut0.00134868100 bps of the acquisition fee, out of the surcharge
Remaining surcharge0.00194079Surcharge less the protocol cut
To depositors0.00194079100% of the remainder, gap under hotGap
To the $BWA buy0.000000000% of the remainder, gap under hotGap
Per active position0.000388160.00194079 split equally across 5 active positions

Checks: the protocol cut plus the remaining surcharge is 0.00328947, the whole surcharge. The expected value plus the surcharge is 0.13486842, the acquisition fee. Five positions at 0.00038816 comes back to 0.00194079.

The same acquisition, taken cold at a gap of 3600 seconds or more, sends the full 0.00194079 to a $BWA buy instead and pays depositors nothing that round.

Read next