EthCreatorFeeHookV2 on Ethereum

Uniswap v4 Hook Contract 0x025a386eaa79f6067d29848fd05ccc71beab20cc on Ethereum · Fee sharing · Verified contract

Volume (24h)
$312
Value locked (TVL)
$12.42K
All-time volume
$25.20M
Pools using this hook
28
Swaps (24h)
12 (6 traders)
Total swaps
76,378

What it does

Charges a fixed 1-10% fee on the ETH side of swaps in creator token pools and splits it between the token's creator and a fixed 0.10% Launcher share.

How it works step by step

  • Registers a pool once, binding its creator and fixed total swap fee between 1% and 10%
  • Takes the total fee in native ETH on swaps where ETH is the specified side, via return deltas
  • Deducts a fixed 0.10% Launcher share from the total fee and credits the rest to the creator
  • Accrues fees as native ETH claims in PoolManager and redeems them only to the creator or Launcher treasury
  • Emits HookFee and HookSwap events for each charged fee and disclosure events for transparency
Swap behaviour
On swaps where native ETH is the specified or output side, beforeSwap or afterSwap takes the disclosed total fee via custom accounting, validating partial fills and reverting if the pool would only partially fill. ERC-20-only swaps are untaxed.
Liquidity behaviour
No liquidity callbacks.
Fee behaviour
Each registered pool has a fixed total swap fee between 1% and 10% in 1% steps, taken in native ETH on swaps that involve the ETH side. Launcher receives a fixed 0.10% of the swap amount, deducted from the total fee rather than added on top, and the remainder accrues to the pool's creator. The LP fee is zero and the token has no transfer tax. Buy and sell fees are identical.
Owner & admin controls
No admin controls found. The contract has no owner, pause, upgrade proxy or parameter setters; fee rates are constants and each pool's total swap fee is fixed at registration. Only the recorded creator can redirect its own creator-fee claim, and only the immutable Launcher treasury can redirect Launcher claims.

Enabled Uniswap v4 callbacks

beforeInitialize, beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta

beforeInitialize restricts pool initialization to the registrar that registered the pool. beforeSwap and afterSwap charge the native ETH side of swaps through custom accounting, taking the fee into the hook's ERC-6909 claim balance in PoolManager. beforeSwapReturnDelta and afterSwapReturnDelta let the hook return deltas so the fee is settled against the swapper's amounts.

Security & trust assessment

Risk level: low (verified source, high confidence).

Who controls it: No privileged owner key exists. The creator and Launcher treasury can only redirect their own fee claims to another address; they cannot change fees, pause swaps or move other users' funds.

Risk to user funds: The hook can take up to the disclosed 1-10% of the ETH side of each swap and hold it as claims in PoolManager until the creator or Launcher claims. It cannot take tokens beyond those fees, cannot block swaps administratively, and has no upgrade or withdrawal path for third parties.

Security findings

  • [info] Partial fills unsupported: Swaps that would only partially fill the ETH side revert with PartialFillUnsupported, so such swaps cannot be executed through this pool.
  • [info] Fees held as hook claims: The hook takes fees via return deltas and holds them as native ETH ERC-6909 claims in PoolManager, which are redeemable only by the recorded creator or the immutable Launcher treasury.
  • [low] Creator trusted from token contract: Creator identity is read from token.creator() at registration; a token whose creator() can change would shift fee rights, though registration is one-time per pool and the fee rate is fixed.
  • [low] Native ETH payout dependency: Claims are pushed through PoolManager unlock and native ETH transfer; a recipient that rejects ETH could block its own claim, though claimTo redirection exists for that case.

Contract details

Verified source
Yes (EthCreatorFeeHookV2)
Compiler
solc 0.8.26+commit.8a97fa7a
Bytecode size
11,651 bytes
Upgradeable proxy
No
Detected patterns
erc6909-claims, launchpad, moves-currency, return-delta, rewards, self-unlock, tax

Pools using EthCreatorFeeHookV2