CreatorCoinHook on Base

Uniswap v4 Hook Contract 0x9278f6e55ce58519c79dc1ab0ad3b29ea7821040 on Base · Rewards · Verified contract

Volume (24h)
$0
Value locked (TVL)
$0
All-time volume
$8.29M
Pools using this hook
3,800
Swaps (24h)
222 (9 traders)
Total swaps
1.7M

What it does

A Zora creator coin hook on Base that, on every swap, harvests LP fees, reinvests part of them into new liquidity, converts the rest to the payout currency and pays it out to the creator and protocol.

How it works step by step

  • Creates multi-curve LP positions on pool initialization for each V4 creator coin.
  • Collects accrued LP fees from all hook-owned positions after each swap.
  • Reinvests one third of collected fees into new single-sided LP positions.
  • Converts the remaining fees to the payout currency through a multi-hop swap path.
  • Splits the payout between the creator and protocol reward recipients.
  • Emits CreatorCoinRewards and Swapped events for indexing.
Swap behaviour
On every swap, afterSwap collects accrued LP fees from all hook-owned positions, converts the remaining fees to the payout currency via the coin's configured swap path, distributes creator and protocol rewards, and emits a Swapped event with the original swapper.
Liquidity behaviour
On pool initialization, the hook mints multi-curve discovery positions plus a tail position owned by the hook. No liquidity callbacks are enabled for LPs, so external LPs cannot add or remove through hook logic. The hook can burn all positions only when called by the coin during migration.
Fee behaviour
Pool uses a static 3% LP fee (LP_FEE_V4 = 30000). On each swap, accrued LP fees are collected, one third is recycled back into new single-sided LP positions, and the remainder is converted to the payout currency and paid out as creator and protocol rewards.
Owner & admin controls
No admin controls found. The hook has no owner, pause or upgrade functions; MultiOwnable is inherited only as a utility and no owner-gated setter is exposed in the hook ABI. Migration is initiated by the coin contract and gated by an upgrade gate registry.

Enabled Uniswap v4 callbacks

afterInitialize, afterSwap

afterInitialize: validates the sender is a V4 coin, generates the multi-curve position layout and mints the initial liquidity. afterSwap: collects LP fees, mints LP reward positions, swaps fees to the payout currency through the coin's swap path, distributes creator and protocol rewards, and emits Swapped.

Security & trust assessment

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

Who controls it: The hook has no privileged owner. Coin-level or upgrade-gate configuration determines migration targets, and the trusted message sender list is fixed at construction time.

Risk to user funds: The hook temporarily holds fee balances during afterSwap and holds the protocol-owned LP positions. Those funds are routed only to the coin's payout, referrer, Doppler and protocol recipients, with no owner withdrawal path. Users interacting with the pool are not exposed beyond normal pool pricing.

Security findings

  • [info] Swap-triggered reward distribution and self-unlock: afterSwap calls poolManager.take and transfers payout currency to the creator and protocol recipients inside the swap path, so each swap depends on external swap paths and reward recipient addresses being correct.
  • [low] Liquidity migration path: Migration via migrateLiquidity can burn all hook-owned positions and hand the proceeds to a new hook, but it is restricted to the registered coin and to paths approved by the upgrade gate.
  • [low] Unbounded internal conversion swaps: Fee conversion uses multi-hop swaps through other pools with no explicit slippage bounds on the hook's internal swaps, so the converted payout amount can be affected by sandwiching around afterSwap.

Contract details

Verified source
Yes (CreatorCoinHook)
Compiler
solc 0.8.28+commit.7893614a
Bytecode size
18,466 bytes
Upgradeable proxy
No
Detected patterns
moves-currency, rewards, self-unlock

Pools using CreatorCoinHook