Every Uniswap v4 hook, live
Every hook attached to at least one Uniswap v4 pool, graded and explained in plain English, with the pools that use it.
AgeHookChainPermissionsPools
54d
0x7044…a0ccRuns code on every swap · Can take tokens from swaps · Runs at pool creation
Base
beforeInitbeforeSwapafterSwapswapDelta+1
5
55d
0x5c9a…c080Runs code on every swap · Sets its own swap fee
Base
beforeSwap
5
56d
0x32ee…2accRuns code on every swap · Can take tokens from swaps · Can block LP withdrawals · Gates who can add liquidity · Runs at pool creation
Base
beforeInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+3
5
58d
0xb80e…6accRuns code on every swap · Can take tokens from swaps · Can block LP withdrawals · Gates who can add liquidity · Runs at pool creation
Base
beforeInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+3
5
2mo
0xc9f6…e0ccRuns code on every swap · Can take tokens from swaps · Runs at pool creation
Base
beforeInitbeforeSwapafterSwapswapDelta+1
5
2mo
0xcc50…2aecRuns code on every swap · Can take tokens from swaps · Can block LP withdrawals · Gates who can add liquidity · Runs at pool creation · Handles donations to LPs
Base
beforeInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+4
5
2mo
NasdankFeeHookRuns code on every swap · Can take tokens from swaps
Base
beforeSwapafterSwapswapDeltaafterSwapDelta
5
2mo
0xa54a…c0ccRuns code on every swap · Can take tokens from swaps
Base
beforeSwapafterSwapswapDeltaafterSwapDelta
5
2mo
0x3527…20ccRuns code on every swap · Can take tokens from swaps · Runs at pool creation
Base
beforeInitbeforeSwapafterSwapswapDelta+1
5
2mo
0x2aa6…a0ccRuns code on every swap · Can take tokens from swaps · Runs at pool creation
Base
beforeInitbeforeSwapafterSwapswapDelta+1
5
2mo
0x81af…00c4Runs code on every swap · Can take tokens from swaps · Sets its own swap fee
Base
beforeSwapafterSwapafterSwapDelta
5
2mo
0xafee…4880Runs code on every swap · Sets its own swap fee · Gates who can add liquidity
Base
beforeAddLiqbeforeSwap
5
2mo
0xbf1e…00c4Runs code on every swap · Can take tokens from swaps · Sets its own swap fee
Base
beforeSwapafterSwapafterSwapDelta
5
2mo
0x3f49…40c4Runs code on every swap · Can take tokens from swaps · Sets its own swap fee
Base
beforeSwapafterSwapafterSwapDelta
5
2mo
0xae3d…00ccRuns code on every swap · Can take tokens from swaps
Base
beforeSwapafterSwapswapDeltaafterSwapDelta
5
2mo
DynamicFeeHookV2Implements a dynamic LP fee that linearly decays from a high launch fee to a flat end fee over a configurable duration (anti-sniper mechanism), then holds the end fee permanently. Maintains a TWAP price oracle via per-swap sqrt-price accumulator updates. No pause or access control of any kind can halt swaps.
Base
beforeSwapafterSwap
5
2mo
BallisticFeeHookV3Charges time-decaying swap fees on the quote currency, splitting them between a pool creator and a platform treasury. Fees start at a configurable opening rate and decay to a base rate over a configured duration, with fees taken directly via beforeSwap and afterSwap return deltas.
Base
beforeInitbeforeSwapafterSwapswapDelta+1
5
2mo
0x079a…4040Runs code on every swap
Base
afterSwap
5
2mo
0x5dd2…0080Runs code on every swap · Sets its own swap fee
Base
beforeSwap
5
3mo
0xf093…cac0Runs code on every swap · Can block LP withdrawals · Gates who can add liquidity
Base
beforeAddLiqbeforeRemoveLiqbeforeSwapafterSwap
5
3mo
0xb7c4…4088Runs code on every swap · Can take tokens from swaps
Base
beforeSwapswapDelta
5
3mo
SaturnOmnichainV4HookA minimal hook for the Saturn Omnichain project that records the initial tick after pool initialization via an external liquidity bootstrapper contract. Only the afterInitialize permission is enabled; swap behavior is fully vanilla.
Base
afterInit
5
4mo
0xc92b…4a40Runs code on every swap · Can block LP withdrawals · Gates who can add liquidity
Base
beforeAddLiqbeforeRemoveLiqafterSwap
5
4mo
ClankerHookDynamicFeeV2A Uniswap v4 hook for the Clanker token launchpad that dynamically adjusts LP fees based on a volatility accumulator derived from tick movement across swaps. Collects a configurable protocol fee on each swap of the paired (non-Clanker) token via before/afterSwap delta manipulation, and supports an optional MEV-protection module and pool extension.
Base
beforeInitbeforeAddLiqbeforeSwapafterSwap+2
5
4mo
0x4b8e…a8c4Runs code on every swap · Can take tokens from swaps · Sets its own swap fee · Gates who can add liquidity · Runs at pool creation
Base
beforeInitbeforeAddLiqbeforeSwapafterSwap+1
5
4mo
TransparentUpgradeableProxyTransparent upgradeable proxy (ERC-1967) that delegates all hook calls to a separate implementation contract. The proxy supports admin-controlled upgrades via upgradeTo/upgradeToAndCall; behavioral properties depend on the unverified implementation.
Base
beforeInitafterInitbeforeSwapafterSwap
5
5mo
0x3f55…c088Runs code on every swap · Can take tokens from swaps
Base
beforeSwapswapDelta
5
5mo
0xf683…1440Runs code on every swap · Runs at pool creation
Base
afterInitafterAddLiqafterSwap
5
5mo
0x265f…8040Runs code on every swap
Base
afterSwap
5
5mo
ForgeHookA shared hook for all Forge V4 pools that enforces factory-authorized pool initialization and applies a parabolic time-decaying MEV fee: starting at 80% and decaying to a 1.5% base fee over a 30-second window after pool creation.
Base
beforeInitbeforeSwap
5
5mo
AegisAegisHook charges dynamic swap fees set per-swap by DynamicFeeManager, collects additional hook fees on each swap, and periodically reinvests them as full-range liquidity via AegisEngine. It manages oracle observation cardinality growth and notifies LimitOrderManager and OracleManager after each swap.
Base
afterInitbeforeSwapafterSwapswapDelta+1
5
7mo
HowdyHookA Uniswap v4 hook for TOKEN/HOWDY pools implementing phased launches with optional Merkle-based allowlist access control and MEV protection. During the MEV window, LP fees decay linearly from a high initial rate to 0.5%. Liquidity additions are blocked during the active MEV window, and allowlist-phase swaps require a Merkle proof in hookData.
Base
beforeInitbeforeAddLiqbeforeSwapafterSwap
5
8mo
0x1ea3…4080Runs code on every swap · Sets its own swap fee
Base
beforeSwap
5
9mo
UniswapV4MigratorHookRestricts Uniswap v4 pool initialization to only the UniswapV4Migrator contract by reverting in beforeInitialize if the caller is not the designated migrator address. Has no swap-related hooks.
Base
beforeInit
5
9mo
TradingFeeHookCollects a 5% trading fee on every swap (0.5% commission to treasury, 4.5% to token creator via RevenueVault), using beforeSwapReturnDelta for exact-input buys and afterSwapReturnDelta for sells and exact-output buys. Pools must be registered by the LaunchVault to have fees enabled; unregistered pools swap without any fee.
Base
beforeSwapafterSwapswapDeltaafterSwapDelta
5
11mo
0x61ba…80ccRuns code on every swap · Can take tokens from swaps · Sets its own swap fee
Base
beforeSwapafterSwapswapDeltaafterSwapDelta
5
11mo
CornersHookDynamicFeeA Uniswap v4 hook for the Corners protocol that implements volatility-based dynamic LP fees (derived from tick movement between swaps) and collects a 20% protocol fee on the paired-token side of each swap. Includes an optional MEV protection module active for the first 2 minutes after pool creation, and restricts liquidity additions during that window.
Base
beforeInitbeforeAddLiqbeforeSwapafterSwap+2
5
12mo
UniV4HookSets a dynamic LP fee (2% initially) on pool initialization via afterInitialize, and allows the owner to update the fee at any time via forceUpdateLPFee. Has no swap hooks; fee changes take effect on subsequent swaps through the pool manager's dynamic fee mechanism.
Base
afterInit
5
13mo
0x9222…60c0Runs code on every swap · Sets its own swap fee · Runs at pool creation
Base
beforeInitbeforeSwapafterSwap
5
13mo
0xf5f1…a0c0Runs code on every swap · Sets its own swap fee · Runs at pool creation
Base
beforeInitbeforeSwapafterSwap
5
13mo
0x97ec…a0c0Runs code on every swap · Sets its own swap fee · Runs at pool creation
Base
beforeInitbeforeSwapafterSwap
5
13mo
0x483f…40ccRuns code on every swap · Can take tokens from swaps
Base
beforeSwapafterSwapswapDeltaafterSwapDelta
5
14mo
0x22af…20c0Runs code on every swap · Sets its own swap fee · Runs at pool creation
Base
beforeInitbeforeSwapafterSwap
5
14mo
0x1162…e0c0Runs code on every swap · Sets its own swap fee · Runs at pool creation
Base
beforeInitbeforeSwapafterSwap
5
14mo
0x563f…e0c0Runs code on every swap · Sets its own swap fee · Runs at pool creation
Base
beforeInitbeforeSwapafterSwap
5
15mo
0xbf61…25c1Runs code on every swap · Takes a cut when LPs withdraw · Runs at pool creation
Base
beforeInitafterAddLiqafterRemoveLiqbeforeSwap+2
5
15mo
BoardHookA Uniswap v4 hook for token launches with a time-gated FairLaunch period: it blocks trading before a scheduled publish timestamp, fills buy-only swaps from a pre-seeded one-sided liquidity position during FairLaunch, and distributes custom swap fees to referrers, creators, protocol, and inspired parties after the FairLaunch closes.
Base
beforeInitbeforeAddLiqafterAddLiqbeforeRemoveLiq+6
5
16mo
BoardHookToken launchpad hook implementing fair launch periods with temporal gating and optional Merkle-proof allowlisting. Fills buy swaps from a pre-seeded position during the fair launch window, captures swap fees, and distributes them to protocol, creators, referrers, and other recipients via afterSwapReturnsDelta.
Base
beforeInitbeforeAddLiqafterAddLiqbeforeRemoveLiq+6
5
17mo
TokenFabA bonding curve token launchpad hook that deploys new ERC20 tokens into dedicated Uniswap v4 bonding curve pools. When bonding curve supply is exhausted, the hook automatically removes liquidity and migrates it into a standard AMM pool. A fixed 1% swap fee is collected via afterSwapReturnsDelta and split 50/50 between a creator fee receiver and a platform fee recipient.
Base
beforeInitbeforeAddLiqbeforeRemoveLiqafterSwap+1
5
17mo
TokenFabA bonding curve token launch hook that blocks external liquidity management (beforeInitialize/beforeAddLiquidity/beforeRemoveLiquidity all revert). Newly launched tokens trade on a bonding curve until the supply cap is reached, then the hook automatically migrates liquidity to a standard AMM pool. Each swap incurs a 1% fee split 50/50 between the creator and platform, taken via afterSwapReturnsDelta.
Base
beforeInitbeforeAddLiqbeforeRemoveLiqafterSwap+1
5