Protocol revenue
The protocol’s share of trading fees funds two flywheels. One is buyback-and-burn. The other is a community-rewards loop that pays referrers (and, by extension, the traders they bring) in WETH. Both route protocol revenue back into the ecosystem rather than out to a team bag.
The rewards flywheel
Section titled “The rewards flywheel”Referrers earn a cut of the fees generated by the volume they bring. Rewards are paid in WETH against a cumulative Merkle root that a keeper publishes each epoch. Claims are pull-based and proof-bounded.
The mechanism:
- A wallet is referred; the binding is recorded (first-write-wins).
- Every epoch (6h) a keeper reads each referred wallet’s windowed WETH volume from the indexer, computes each referrer’s cumulative reward, and builds a Merkle tree.
- The keeper publishes the reward data (so the claim page can show it) and calls
setRoot(root)on theRewardsDistributor. - Referrers claim their WETH from the distributor with a Merkle proof.
Economics: self-funding
Section titled “Economics: self-funding”Rewards are sized to be paid out of the protocol’s own fee take, not out of pocket:
- Reward rate is 10% of the 1% trade fee on referred volume → 0.1% of referred volume.
- The protocol’s fee share is 0.5% of volume, so the reward is one-fifth of the protocol’s take, net self-funding.
| Referred volume (WETH) | Rewards owed (WETH) |
|---|---|
| 100 | 0.10 |
| 1,000 | 1.0 |
| 10,000 | 10 |
Rewards accrue over a rolling referral window (90 days). The distributor holds a WETH pool that must stay ahead of the sum of unclaimed cumulative rewards; because claims are cumulative and pull-based, under-funding only makes a claim wait (it is never lost) and over-funding is recoverable.
Trust model
Section titled “Trust model”The design keeps funds safe from the party that publishes roots:
updater(keeper). Can only callsetRoot. It holds no funds and can never move them; it just posts the cumulative root each epoch.authorizer(admin, immutable). Can rotate the updater (setUpdater) and recover undistributed WETH (recover). It cannot rewrite what has already been claimed, so it can never negate an executed claim.
A compromised keeper key can, at worst, publish a bad root; the authorizer rotates it. Neither role can claw back WETH a referrer has already claimed.
The rewards distributor is deployed and armed on Robinhood Chain mainnet (4663):
| Piece | Value |
|---|---|
RewardsDistributor |
0xb81Db9E11Ce95482Ce33cBf16317E22A8ea0c558 |
| Reward token (WETH) | 0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73 |
Referrers claim on the rewards page. See Contract addresses for the full deployment.
Referral codes
Section titled “Referral codes”Referral links use opaque share codes (?ref=<code>) rather than raw wallet
addresses, so a referrer’s wallet never appears in a shared URL. The code resolves
to the referrer’s address server-side when a new wallet binds.
Related
Section titled “Related”- Fees and burns: the buyback-and-burn leg and the full fee split.
- Community takeovers: buying and selling the creator fee stream.

