LaunchHook on Ethereum
Uniswap v4 Hook Contract 0x7fa87cfaa45f45d762c085eea4870cb3706ca0cc on Ethereum · Launchpad · Verified contract
- Volume (24h)
- $641
- Value locked (TVL)
- $2.07K
- All-time volume
- $889.66K
- Pools using this hook
- 18
- Swaps (24h)
- 4 (2 traders)
- Total swaps
- 4,318
What it does
Charges a fixed per-pool trading fee in the stock token on every swap and splits it between the platform treasury, the token creator, and token holders.
How it works step by step
- Takes a per-pool fee in the stock currency (currency0) on each swap, with the LP fee fixed at zero
- Splits each fee 30% to the platform treasury, a creator share of the remaining 70%, and the rest to holders
- Credits treasury and creator balances to claimable mappings and holder balances to holderAccrued per token
- Pays out via pull functions claimFees and pullHolderFees, which only the distributor may call for holders
- Restricts pool registration and initialization to the factory with a registered config
- Lets the current creator recipient or the treasury reassign its own address
- Swap behaviour
- Buys with exact input pay the fee in beforeSwap on the stock input; sells with exact input and buys with exact output pay the fee in afterSwap on the stock side; sell exact-output swaps revert; every swap emits Swapped with the post-swap price and tick.
- Liquidity behaviour
- No liquidity callbacks.
- Fee behaviour
- Pool LP fee is 0; the hook charges a per-pool feeBps on the stock side (currency0): on the input for buys (exact input, taken in beforeSwap) and on the output for sells (exact input, taken in afterSwap). Each fee is split 30% to the treasury (constant PLATFORM_SHARE_BPS), then creatorShareBps of the remaining 70% to the creator recipient, and the rest to holders accrued per token for the FeeDistributor.
- Owner & admin controls
- No owner or pause role. The only privileged actions are factory-gated pool registration (registerPool), distributor-gated pullHolderFees, and self-rotation: the treasury can call setTreasury to change its own address, and each pool's creator recipient can call setCreatorRecipient to reassign its share. Factory and distributor addresses are immutable. No upgrade mechanism is visible.
Enabled Uniswap v4 callbacks
beforeInitialize, beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta
beforeInitialize restricts pool initialization to the factory and requires a registered config. beforeSwap takes the buy-side exact-input fee and reverts on sell exact-output swaps. afterSwap takes the fee on other swap directions, emits Swapped with the post-swap price, and uses the return delta to account for the fee. beforeSwapReturnDelta and afterSwapReturnDelta are enabled so the hook can claim a share of swap amounts.
Security & trust assessment
Risk level: medium (verified source, high confidence).
Who controls it: No single key can move user funds or change fees; the factory can only register pools once, and fee parameters are fixed at registration apart from the creator recipient address, which only the current recipient can change. Treasury and creator rotation are self-controlled.
Risk to user funds: The hook holds stock-currency fee balances in the PoolManager and its own balance until claimed or pulled. It cannot block swaps through pausing, and its push-free design means a bad recipient cannot halt trading, but it does take a fee on every swap, which is a direct cost to traders.
Security findings
- [low] Exact-output sells blocked: Sell exact-output swaps revert with ExactOutputSellsNotSupported, so routers or users requesting exact-output sells cannot trade this pool.
- [info] Hook takes swap fees via return deltas: The hook takes fee tokens via poolManager.take and returns fee deltas, so a fraction of every swap is retained by the hook and credited to claimable balances.
- [medium] Accrued fees held by hook contract: Fees accrue in claimable mappings and holderAccrued and are paid out by pull functions; tokens sit in the hook contract until claimed, so a hook bug could lock them.
- [info] Creator recipient is transferable by holder: A pool creator recipient can reassign its share to any address, so accrued creator fees depend on that key remaining controlled.
- [info] No admin pause or upgrade: The hook has no owner, pause, or upgrade path, so its behaviour cannot be changed after deployment.
Contract details
- Verified source
- Yes (LaunchHook)
- Compiler
- solc 0.8.26+commit.8a97fa7a
- Bytecode size
- 7,768 bytes
- Upgradeable proxy
- No
- Detected patterns
- launchpad, return-delta
Pools using LaunchHook
- WETH / STONKIES (0.00% fee) — 24h volume $637, TVL $1.06K, 2 swaps today
- WETH / GIVE (0.00% fee) — 24h volume $4.68, TVL $736, 2 swaps today
- NVDAon / CHK (0.00% fee) — 24h volume $0, TVL $250, 0 swaps today
- STONKIES / STONKIESTR (0.00% fee) — 24h volume $0, TVL $0, 0 swaps today
- SPCXon / ASTEROID (0.00% fee) — 24h volume $0, TVL $0, 0 swaps today
- WETH / TEST (0.00% fee) — 24h volume $0, TVL $0, 0 swaps today
- UNI / UNICORN (0.00% fee) — 24h volume $0, TVL <$0.01, 0 swaps today
- WETH / STKS (0.00% fee) — 24h volume $0, TVL $0, 0 swaps today
- STONKIES / STKSTR (0.00% fee) — 24h volume $0, TVL $0, 0 swaps today
- SPYon / SPX (0.00% fee) — 24h volume $0, TVL $0, 0 swaps today
- TSLAon / OPTIMUS (0.00% fee) — 24h volume $0, TVL $0, 0 swaps today
- SPCXon / DOGE-1 (0.00% fee) — 24h volume $0, TVL $0, 0 swaps today
- NVDAon / AP (0.00% fee) — 24h volume $0, TVL $0, 0 swaps today
- NVDAon / JACKET (0.00% fee) — 24h volume $0, TVL $0, 0 swaps today
- AAPLon / DAPL (0.00% fee) — 24h volume $0, TVL $0, 0 swaps today
- SPX / MARS (0.00% fee) — 24h volume $0, TVL $30, 0 swaps today
- PEPE / PEPE (0.00% fee) — 24h volume $0, TVL <$0.01, 0 swaps today
- GOOGLon / 股狗 (0.00% fee) — 24h volume $0, TVL $0, 0 swaps today