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
3mo
0x27ea…a0ccRuns code on every swap · Can take tokens from swaps · Runs at pool creation
Robinhood
beforeInitbeforeSwapafterSwapswapDelta+1
16
3mo
CreatorFeeHookV1Charges fixed directional buy and sell fees in beforeSwap or afterSwap depending on trade shape, collecting a protocol fee, and paying the remainder to up to five creator-nominated recipients.
Robinhood
beforeInitbeforeSwapafterSwapswapDelta+1
16
3mo
PonsV2MemeHookSingleton post-graduation hook for Pons V2 meme pools that charges a configurable fee on each swap via afterSwap (using the delta return mechanism), converts any memecoin-denominated fees back to the pool's quote currency through internal swaps, then splits the proceeds among protocol, creator, and buyback-and-lock buckets.
Robinhood
beforeInitafterSwapafterSwapDelta
16
3mo
EthCreatorFeeHookV3Charges configurable directional buy/sell fees on native ETH/token pools, splitting proceeds between a creator reward vault (authenticated via a fee-split vault factory) and a fixed launcher fee recipient. Fees are applied via BeforeSwapDelta for native-specified swaps and via afterSwap return delta for token-specified swaps.
Robinhood
beforeInitbeforeSwapafterSwapswapDelta+1
16
3mo
MoonsendFeeHook_RHGates pool initialization to factory-registered pools and sets a dynamic LP fee once via `poolManager.updateDynamicLPFee()` in `afterInitialize`. Has no swap-time callbacks; all swap behavior is standard Uniswap v4.
Robinhood
beforeInitafterInit
16
3mo
SaturnOmnichainV4HookA Saturn Omnichain project hook that registers `afterInitialize` as a no-op callback. Initial liquidity setup is performed via a separate `initializePools()` function that invokes an `ISaturnOmnichainLiquidityBootstrapper` contract and records the initial tick. Has no swap-time logic — swaps execute identically to a standard Uniswap v4 pool.
Robinhood
afterInit
16
3mo
SaturnOmnichainV4HookA hook for the Saturn Omnichain project with only afterInitialize permission. The afterInitialize callback is a no-op; liquidity is bootstrapped separately via initializePools(), which delegates to an ISaturnOmnichainLiquidityBootstrapper contract and records the initial tick.
Robinhood
afterInit
16
4mo
ClankerHookStaticFeeV2A Clanker platform hook that enforces per-pool static LP fees with separate buy/sell rates for the Clanker token, collects a protocol fee on each swap via beforeSwap/afterSwap return deltas, and supports an optional MEV-protection module that temporarily raises fees on newly created pools.
Ethereum
beforeInitbeforeAddLiqbeforeSwapafterSwap+2
16
4mo
0x2802…60ccRuns code on every swap · Can take tokens from swaps · Sets its own swap fee · Runs at pool creation
Base
beforeInitbeforeSwapafterSwapswapDelta+1
16
5mo
0xaf7c…00c0Runs code on every swap
Base
beforeSwapafterSwap
16
5mo
ContentCoinHookA Uniswap v4 hook for Zora's content coin protocol that, on each swap, collects accrued LP fees from all positions, converts them to a backing currency via multi-hop swaps, and distributes rewards to creators, trade referrers, and LPs. On pool initialization, it mints multiple Doppler-curve liquidity positions.
Base
afterInitafterSwap
16
7mo
Flaunch PositionManagerThe Flaunch protocol's central Uniswap v4 hook managing the full memecoin lifecycle: a time-gated fair launch phase (buy-only), an internal swap pool that recycles accumulated fees as liquidity before hitting the Uniswap pool, protocol and creator fee distribution, and a bid wall for buy-side liquidity support.
Base
beforeInitbeforeAddLiqafterAddLiqbeforeRemoveLiq+6
16
8mo
ClawnchHookStaticFeeV2A Uniswap v4 hook for Clawnch token deployments that sets distinct static LP fees for clawnch-direction vs. paired-direction swaps, and collects a 20% protocol fee on each swap by adjusting swap amounts via beforeSwap and afterSwap return deltas.
Base
beforeInitbeforeAddLiqbeforeSwapafterSwap+2
16
9mo
UniClawHookV4Dual-mode Uniswap v4 hook supporting agent-only and public pools. For agent-only pools, swaps and liquidity actions are gated to verified agents via an on-chain registry. After each swap, a configurable fee (optionally scaled by the swapper's on-chain reputation score) is extracted from the output token and accumulated for the pool creator to collect.
Base
afterInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+3
16
12mo
0x83c7…e8ccRuns code on every swap · Can take tokens from swaps · Sets its own swap fee · Gates who can add liquidity · Runs at pool creation
Arbitrum
beforeInitbeforeAddLiqbeforeSwapafterSwap+2
16
13mo
TokenFabToken launch platform hook implementing a bonding curve for new ERC-20 tokens. Collects configurable platform and creator fees on swaps via BeforeSwapDelta and AfterSwapDelta, and automatically graduates tokens to a full AMM pool when the bonding curve supply target is reached.
Base
beforeInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+3
16
9d
0xedf4…2880Runs code on every swap · Gates who can add liquidity · Runs at pool creation
Robinhood
beforeInitbeforeAddLiqbeforeSwap
15
11d
FlashPerpsV5HookRuns code on every swap · Can take tokens from swaps · Sets its own swap fee · Gates who can add liquidity · Runs at pool creation
Base
beforeInitafterInitbeforeAddLiqbeforeSwap+2
15
16d
0x0a51…e080Runs code on every swap · Sets its own swap fee · Runs at pool creation
Base
beforeInitbeforeSwap
15
19d
0x3b0a…e080Runs code on every swap · Sets its own swap fee · Runs at pool creation
Robinhood
beforeInitbeforeSwap
15
19d
0xfd61…a080Runs code on every swap · Sets its own swap fee · Runs at pool creation
Base
beforeInitbeforeSwap
15
23d
0x3e5c…c044Runs code on every swap · Can take tokens from swaps
Robinhood
afterSwapafterSwapDelta
15
24d
ReplicaWhitelistHookA Uniswap v4 hook that restricts swaps to whitelisted addresses. It checks `tx.origin` against an external `ISwapWhitelist` contract in `beforeSwap`, reverting with `SwapperNotWhitelisted` for non-whitelisted callers. No modification to swap execution occurs beyond access control.
Ethereum
beforeSwap
15
30d
WstOLaunchHookRuns code on every swap · Can take tokens from swaps · Can block LP withdrawals · Gates who can add liquidity · Runs at pool creation
Robinhood
beforeInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+3
15
56d
GweiFeeHookThe shared Uniswap v4 hook for the gwei.fun token launchpad. On every swap it takes a fee in beforeSwap via BeforeSwapDelta — composed of a platform fee plus a per-pool creator tax with an optional linearly-decaying anti-snipe rate — and splits the proceeds between the pool creator and a protocol buyback vault, accumulating them as ERC-6909 claims redeemable lazily.
Ethereum
beforeInitbeforeSwapswapDelta
15
59d
LaunchpadHookA Uniswap v4 hook that restricts pool initialization to a designated launchpad address (via afterInitialize) and emits a PoolSwap event on every swap for off-chain indexing. No hook deltas are applied and swap execution is unmodified.
Robinhood
afterInitafterSwap
15
2mo
0xab4b…80ccRuns code on every swap · Can take tokens from swaps
Robinhood
beforeSwapafterSwapswapDeltaafterSwapDelta
15
2mo
ModuleNativeHookV1A Uniswap v4 hook for native ETH/token pools that restricts swaps to a pre-registered, per-pool router and charges platform and creator fees on the native currency leg. Supports a module-based programmability system that receives trade callbacks for composable post-swap logic.
Robinhood
beforeInitbeforeSwapafterSwapswapDelta+1
15
2mo
0xc27e…4840Runs code on every swap · Gates who can add liquidity
Robinhood
beforeAddLiqafterSwap
15
2mo
SpotA full-range liquidity hook that applies a dynamic LP fee (base + surge) computed by an external DynamicFeeManager, charges a protocol POL share plus an undisclosed extra 0.10% fee on every swap, reinvests collected fees into a full-range liquidity position, and records truncated geometric mean oracle observations for volatility-adaptive fee tuning.
Robinhood
afterInitbeforeSwapafterSwapswapDelta+1
15
2mo
LaunchHookFee engine for a token launchpad that charges a configurable protocol + creator fee (in the pool's quote token) on every swap via BeforeSwapDelta and afterSwapReturnsDelta. Pools are registered by a factory, liquidity is seeded exactly once and permanently locked, and an optional linearly-decaying anti-snipe fee surge applies in the blocks after launch.
Robinhood
beforeInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+3
15
2mo
0x0f91…a0ccRuns code on every swap · Can take tokens from swaps · Runs at pool creation
Robinhood
beforeInitbeforeSwapafterSwapswapDelta+1
15
2mo
ApexHookCollects a configurable flat fee (in basis points) on every swap for factory-registered token pools, routing fees to the token creator's claimable balance. Uses beforeSwap and afterSwap return deltas to extract fees from both exact-input and exact-output swap directions.
Robinhood
beforeSwapafterSwapswapDeltaafterSwapDelta
15
2mo
PulseHookA fee-collection hook for a token launch platform (Pulse) that charges buy/sell fees and time-decaying anti-snipe fees during early blocks after launch. Fees are taken from the quote currency and routed to token creators' claimable balances. Tokens must be registered via the factory contract before fee logic activates.
Robinhood
beforeSwapafterSwapswapDeltaafterSwapDelta
15
2mo
0x51a8…d080Runs code on every swap · Sets its own swap fee · Runs at pool creation
Base
afterInitbeforeSwap
15
2mo
BaldPadFunFeeHookVolatility-based ETH fee hook for BaldPadFun launch pools. Charges 1–5% fees in native ETH on exact-input buys (via beforeSwap delta) and sells (via afterSwap delta), with the fee scaling linearly based on the previous swap's tick movement. Fees are sent directly to a per-pool fee recipient on each swap. Exact-output swaps are rejected.
Robinhood
beforeSwapafterSwapswapDeltaafterSwapDelta
15
2mo
0x0000…0030Handles donations to LPs
Base
beforeDonateafterDonate
15
2mo
0x1030…4088Runs code on every swap · Can take tokens from swaps · Sets its own swap fee
Ethereum
beforeSwapswapDelta
15
2mo
0x88a5…80ccRuns code on every swap · Can take tokens from swaps
Robinhood
beforeSwapafterSwapswapDeltaafterSwapDelta
15
3mo
NFTXV4HookNFTX's Uniswap v4 hook for NFT collection token pools, managing pool lifecycle (register, initialize, deregister), dynamic LP fees with per-address exemptions, an additional AMM fee credited to a beneficiary, deferred LP fee donations, and a truncated price oracle. Each pool is tied to one NFT collection.
Ethereum
beforeInitbeforeAddLiqafterAddLiqbeforeRemoveLiq+4
15
3mo
SaturnOmnichainV4HookA hook with only the afterInitialize permission bit set, where the callback itself is a no-op. The contract exposes an initializePools() function that calls an external ISaturnOmnichainLiquidityBootstrapper to obtain and store the initial tick, but this is independent of the hook callback.
Ethereum
afterInit
15
3mo
SaturnOmnichainV4HookA minimal hook for the Saturn Omnichain project that holds only the afterInitialize permission but performs no logic within that callback. Pool initialization is delegated to an external LiquidityBootstrapper contract via initializePools(), which records the initial tick.
Ethereum
afterInit
15
3mo
SaturnOmnichainV4HookA Saturn Omnichain project hook that registers the afterInitialize callback (implemented as a no-op). Exposes an initializePools() function callable by anyone, which delegates to an external LiquidityBootstrapper contract to bootstrap liquidity and record the initial pool tick.
Ethereum
afterInit
15
3mo
SaturnOmnichainV4HookA Uniswap v4 hook for the Saturn Omnichain project that registers an afterInitialize callback (no-op) and exposes an initializePools() function that delegates to an external liquidity bootstrapper contract to seed initial pool positions.
Ethereum
afterInit
15
3mo
SaturnOmnichainV4HookA minimal hook for the Saturn Omnichain protocol with only an afterInitialize permission. The afterInitialize callback is a no-op; actual pool setup is handled externally via initializePools(), which calls a LiquidityBootstrapper contract and records the initial tick.
Ethereum
afterInit
15
3mo
SaturnOmnichainV4HookA minimal hook for the Saturn Omnichain project with only afterInitialize enabled as a no-op stub. Liquidity bootstrapping is delegated to an external ISaturnOmnichainLiquidityBootstrapper contract called via initializePools(), which records the initial tick. Has no swap-related logic.
Ethereum
afterInit
15
3mo
SaturnOmnichainV4HookMinimal hook for Saturn Omnichain that implements only afterInitialize as a no-op. Pool bootstrapping is performed via a separate ISaturnOmnichainLiquidityBootstrapper contract that sets initial tick and liquidity; the hook records initialTick and a poolInitialized flag.
Ethereum
afterInit
15
3mo
SaturnOmnichainV4HookA Uniswap v4 hook for the Saturn Omnichain project that holds an afterInitialize permission (callback is a no-op) and exposes an initializePools() entry point that delegates liquidity bootstrapping to an external contract and records the initial tick.
Ethereum
afterInit
15
3mo
SaturnOmnichainV4HookA Uniswap v4 hook for the Saturn Omnichain project that registers an afterInitialize permission (the callback is a no-op). Pool initialization and liquidity bootstrapping are performed via a separate `initializePools()` function that calls an external LiquidityBootstrapper contract to set the initial tick and pool positions.
Ethereum
afterInit
15
3mo
SaturnOmnichainV4HookA Uniswap v4 hook for the Saturn Omnichain project that registers the afterInitialize permission but performs no action in that callback. Pool initialization and initial tick recording are handled externally via the initializePools() function, which delegates to an immutable LiquidityBootstrapper contract. All hook callbacks are passive no-ops.
Ethereum
afterInit
15