UniHooks

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