Fee sharing hook on Ethereum

Uniswap v4 Hook Contract 0xaf55cfcc58e0a5cd1a82e17711ff085521cae0cc on Ethereum · Fee sharing

Volume (24h)
$6.63K
Value locked (TVL)
$721
All-time volume
$6.63K
Pools using this hook
1
Swaps (24h)
75 (35 traders)
Total swaps
75

What it does

Charges fixed, non-adjustable buy and sell fees on swaps in one official token pool and sends them to a rewards contract, while LPs can add and withdraw freely.

How it works step by step

  • Charges a fixed buy fee and a fixed sell fee on swaps in one official pool for a specific token.
  • Takes the fee from the swap amounts and sends it to a rewards contract through a fee deposit call.
  • Only lets one pool be initialized and linked, by a fixed initializer address; other pools are rejected.
  • Exposes references to a token, a rewards contract and a voting contract, which suggests fees fund holder rewards or governance.
Swap behaviour
On each swap in the linked pool, the hook takes a buy or sell fee from the swap amounts using return deltas and forwards it to the rewards contract. The exact buy and sell percentages are hard-coded constants that could not be read from the bytecode.
Liquidity behaviour
No liquidity callbacks; LPs can add and withdraw freely.
Fee behaviour
Applies separate fixed buy and sell fees, set as basis-point constants, on top of a fixed LP fee, and deposits them into a rewards contract. The exact percentages are not visible from the decoded data, but they are constants and cannot be changed by an admin.
Owner & admin controls
No admin controls found; fees and addresses appear to be fixed constants or immutables.

Enabled Uniswap v4 callbacks

beforeInitialize, beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta

beforeInitialize: allows only the designated initializer to create the single official pool; beforeSwap: applies the fee before the swap; afterSwap: applies the fee after the swap; beforeSwapReturnDelta / afterSwapReturnDelta: let the hook take its fee out of swap amounts.

Security & trust assessment

Risk level: medium, estimated (decoded bytecode, medium confidence).

Who controls it: No owner functions were found. The initializer address only controls the one-time pool creation, and the fee constants are fixed.

Risk to user funds: The hook takes a fixed buy or sell fee from each swap and sends it to the rewards contract; the exact percentage is unverified. LP principal cannot be locked or drained by the hook.

Security findings

  • [low] Unverified fee amounts: The buy and sell fee constants exist, but their values cannot be confirmed from the bytecode alone. They are not adjustable by an admin.
  • [info] LP withdrawals unrestricted: Remove-liquidity callbacks are disabled, so the hook can never block or charge LP withdrawals.
  • [info] Single official pool: Only one pool, created by a fixed initializer address, can use this hook.

Contract details

Verified source
No
Bytecode size
4,252 bytes
Upgradeable proxy
No
Detected patterns
moves-currency, return-delta, rewards

Pools using Fee sharing hook