Payouts
Protocol fees from minting are distributed as ETH to stakers and burners through a cycle-based system.Fee Flow
Distribution
Anyone calls
distributeETH() to split accumulated fees into pools. Caller receives a 0.33% incentive fee.Trigger Payouts
Anyone calls
triggerPayouts() when a cycle’s maturity day is reached. This calculates the reward per share for that cycle.Cycle Payout System
The 28% cycle payout pool is split across four independent cycles:| Cycle | Share | Effective % of Total Fees | Triggers Every |
|---|---|---|---|
| Day 8 | 30% of 28% | 8.4% | 8 days |
| Day 28 | 30% of 28% | 8.4% | 28 days |
| Day 90 | 20% of 28% | 5.6% | 90 days |
| Day 369 | 20% of 28% | 5.6% | 369 days |
How Payouts Are Calculated
WhentriggerPayouts() is called and a cycle is mature:
Claiming
Staker Payouts
Claim all unclaimed ETH from all four cycles in a single transaction.Burn Pool Payouts
Claim burn pool ETH rewards separately (28-day cycle only).Incentive Fees
BothdistributeETH() and triggerPayouts() pay the caller a 0.33% incentive fee. This creates a natural incentive for bots and users to keep the payout system running.
triggerPayouts() will automatically call distributeETH() first if there are undistributed fees, so you only need to call one function.Timing
- Payouts accumulate over time. If no one triggers them, the pools grow larger
- Multiple cycles can be triggered in a single call
- If a cycle’s maturity day is missed, it triggers on the next call
- New stakers are only eligible for payouts triggered after their stake is created