Drops
Start here
  • How it works
  • Deployments
Using the protocol
  • Positions & weighting
  • Pricing & allocation
  • Collections
  • Settlement
FWAIR launches
  • FWAIR overview
  • Backing a launch
  • Where funds go
  • Claims & recovery
Rewards & fees
  • Fees & protocol revenue
  • Top deposit reward
  • $FWA
Controls & safety
  • Safety
  • Parameters
  • Roles
Developers
  • Testnet
Deploy your own
  • Deployment guide
DocumentationFees & protocol revenue
Start here
  • How it works
  • Deployments
Using the protocol
  • Positions & weighting
  • Pricing & allocation
  • Collections
  • Settlement
FWAIR launches
  • FWAIR overview
  • Backing a launch
  • Where funds go
  • Claims & recovery
Rewards & fees
  • Fees & protocol revenue
  • Top deposit reward
  • $FWA
Controls & safety
  • Safety
  • Parameters
  • Roles
Developers
  • Testnet
Deploy your own
  • Deployment guide

Fees & protocol revenue

Deposits earn an equal share of acquisition fees while active; 100% of current in-protocol fees funds FWA buybacks.

Every acquisition fee, minus the protocol cut and the crown tithe (a small slice set aside for the top deposit reward), is split equally across all active positions 1. Every position earns the same amount per acquisition, no matter its backing. Earnings build up continuously as a withdrawable balance.

Equal per acquisition, uneven over time. A position earns its share on every acquisition it's in the pool for, and richly-backed positions, with their lower selection weight, tend to stay in the pool far longer. So a richly-backed NFT and a cheap one earn the same on any single acquisition, but the richly-backed one collects fees across many more acquisitions before it's finally allocated. On average, the larger the backing, the more ETH the position earns over its lifetime, purely because it sticks around longer.

The risk is duration. The selection weight implies an average lifetime for each deposited NFT, but any individual position can be selected earlier than that average. When that happens, the depositor's earning life ends sooner than expected: no more future acquisition fees, FWA rewards, or crown tithe from that NFT. A depositor whose NFT is selected early and who doesn't replenish can realize a loss versus the cut they expected to earn over the average lifetime.

  • It keeps acquisitions cheap and rewards small depositors: a modest position earns just as much per acquisition as a large one, which encourages the many small deposits that keep the pool liquid and the price low.
  • On its own it would scare off large deposits, so the size incentive it removes is added back through a separate, visible mechanism: the top deposit reward.

Where protocol revenue comes from

The protocol is the third role: it doesn't list positions or make acquisitions, but it earns when activity exposes a gap between NFT value, ETH backing, and the choices purchasers make. Its revenue comes from a few clearly-bounded sources. The in-protocol balance stays in the contract until anyone calls payoutFees(). That call moves 100% into the FWAToken buyback reserve, with no current remainder sent to the configured owner payout address 2. None of them touch backing; they're taken only from fees and the surcharge:

  • A cut of every acquisition fee (from the surcharge; your acquisition price is unchanged).
  • A cut when a purchaser keeps the NFT (a small % of the position's value, from the depositor's backing return).
  • The settlement discount: by default to the protocol; a toggle can instead share it among depositors (your proceeds as a purchaser are the same either way).
  • A separate 1% FWA trading fee on buys and sells, routed directly to its configured fee wallet.

Mainnet protocol-fee routing

The current mainnet configuration redirects 100% of the first three in-protocol fee streams to the FWAToken buyback reserve, leaving no current owner-payout remainder. Anyone may call payoutFees() to move the accrued balance into that reserve, and a separate permissionless buyback() call buys FWA for participant rewards and burning 3. The separate 1% FWA buy/sell trading fee is not included in this allocation; the hook sends it to its configured fee recipient.

Technical breakdown

  1. 1.
    A dividend-accumulator pattern: accFeePerEV tracks fee per share, every position carries feeShare = 1 (hence equal), and a ceiled feeDebt checkpoint set at deposit means a position only earns from acquisitions during its own tenure (_distribute / _pendingFees). Ceiling rounding keeps credited ≤ collected.
  2. 2.
    Sources: ownerAcquisitionFeeBps = 100 (1% of each acquisition), ownerSettlementFeeBps = 100 (1% of value when a purchaser keeps the NFT, from the depositor's backing return), and the retained settlement discount when retainedToProtocol = true. Payout is permissionless: anyone can call payoutFees to move 100% of the accrued balance into FWAToken's buyback reserve. No current remainder reaches the owner payout address. The hook's trading fee uses a separate fee recipient and is excluded from this allocation.
  3. 3.
    protocolFeeToTokenBps = 10000 (100%) sets the share of accrued protocol fees recycled into the FWA buyback reserve instead of the owner payout. Calling payoutFees() funds the reserve; a separate permissionless buyback() call executes the purchase. See the FWA page for the complete mechanism.
← Previous
Claims & recovery
Next →
Top deposit reward
ByTokenWorks™
Operated by Token Workshop, Inc.Terms of Service

Explore

  • Home
  • Activity
  • Leaderboard

Protocol

  • $FWA
  • Deposit
  • Manage

Fwair

  • Drops
  • Beta

Resources

  • Documentation
  • Changelog
  • X