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
3mo SaturnOmnichainV4HookHook for the Saturn Omnichain project that records the initial tick after pool initialization via an external liquidity bootstrapper. Only afterInitialize is active; all swap and liquidity callbacks are no-ops that return their selectors unchanged. Ethereum afterInit 10 3mo SaturnOmnichainV4HookA Uniswap v4 hook for the Saturn Omnichain project that implements afterInitialize as a no-op and exposes an initializePools() function that calls an external liquidity bootstrapper and records the initial tick and poolInitialized flag. Ethereum afterInit 10 3mo SaturnOmnichainV4HookA minimal hook for the Saturn Omnichain project that only implements afterInitialize to support pool setup. It stores the initial tick and a poolInitialized flag when called via initializePools(), which delegates to an external liquidity bootstrapper. No swap-side logic is present. Ethereum afterInit 10 3mo SaturnOmnichainV4HookHook with only afterInitialize permission. Exposes an initializePools() function that delegates to an external LiquidityBootstrapper contract to set up liquidity positions, recording the initial tick and marking the pool as initialized. All swap, liquidity, and donate callbacks are pure no-op stubs. Ethereum afterInit 10 3mo SaturnOmnichainV4HookA Uniswap v4 hook for the Saturn Omnichain project with only the afterInitialize flag set. The afterInitialize callback is a pure no-op (returns selector only). Pool initialization is triggered externally via initializePools(), which delegates to a LIQUIDITY_BOOTSTRAPPER contract to bootstrap liquidity and record the initial tick. Ethereum afterInit 10 5mo LivoSwapHookSingleton Uniswap v4 hook for tokens graduated via the Livo launchpad that collects a 0.5% LP fee (split 50/50 between creator and treasury) on all swaps, plus an optional time-limited buy/sell tax configurable per token. Swaps are blocked before token graduation. Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 10 7mo TokiHookUniswap v4 custom curve hook implementing Pendle-style fixed-rate yield trading for Principal Tokens. Uses a custom AMM curve with optional ERC4626 rehypothecation to boost LP yields, maintains a TWAP oracle for logarithmic implied rates, and enforces curator-controlled pool lifecycle with pause and maturity expiry. Ethereum afterInitbeforeAddLiqbeforeSwapswapDelta 10 9mo UPeg HookCalls `start()` on a configured token when the first liquidity is added to that token's pool, and updates an internal random seed on each swap involving the configured token. Both actions are no-ops when no token is configured or for pools not involving the token. Ethereum afterAddLiqafterSwap 10 10mo 0xd6c6…7a44Runs code on every swap · Can take tokens from swaps · Can block LP withdrawals · Gates who can add liquidity · Runs at pool creation Ethereum beforeInitafterInitbeforeAddLiqbeforeRemoveLiq+2 10 18mo BackGeoOracleAn oracle hook for Uniswap v4 that records TWAP price observations and executes backrun protection after large swaps. When tick movement exceeds a threshold, the hook performs an inverse counter-swap and credits recovered value to the user as ERC-6909 tokens via the router's `msgSender()` interface. Ethereum beforeInitafterInitbeforeAddLiqbeforeRemoveLiq+3 10 34d EthXDirectV4HookV2Runs code on every swap · Can take tokens from swaps · Runs at pool creation Ethereum beforeInitafterSwapafterSwapDelta 9 55d 0xf636…40ccRuns code on every swap · Can take tokens from swaps Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 9 59d StockpairHookUniswap v4 hook that charges a 2% fee on token sells (0% on buys), split 60/40 between the pool creator and a platform address. Liquidity additions are restricted to the factory contract and removals always revert, locking LP positions permanently. Ethereum beforeAddLiqbeforeRemoveLiqafterSwapafterSwapDelta 9 2mo LaunchHookA token launch hook that seeds a single-range liquidity position and charges a high anti-snipe fee (99%) that linearly decays to 1% over 20 seconds post-launch. Only the hook itself can add/remove liquidity. Buy fees are collected via beforeSwap; sell fees via afterSwap. Fees are split between the token creator and a protocol fee escrow. Ethereum beforeInitbeforeAddLiqbeforeSwapafterSwap+2 9 2mo MixpadHookMixpadHook collects a configurable platform fee on every swap for factory-registered tokens, splitting revenue between the token creator and treasury. It applies anti-snipe surcharges in blocks immediately after launch, a time-decaying deployer dump surcharge, optional buyback-and-burn of the creator's fee share, and optional dividend routing to a yield vault. Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 9 2mo 0x8335…00c8Runs code on every swap · Can take tokens from swaps Ethereum beforeSwapafterSwapswapDelta 9 2mo BallisticFeeHookV1Charges immutable directional buy/sell fees on registered native ETH/token pools, splitting collected fees 90/10 between a per-pool creator reward vault and an immutable treasury. Supports optional launch-period fee schedules with linear time-decay from a higher opening rate to a settled base rate. Ethereum beforeInitbeforeSwapafterSwapswapDelta+1 9 3mo BDeFiHookBuilDeFi's swap hook that applies configurable buy/sell taxes on each trade, routes proceeds to fee distributors, fulfills queued token orders at TWAP price against collected fees, and records truncated geo-oracle observations. Trading is gated on a per-token fully-initialized flag set by the LP manager. Ethereum beforeInitafterInitbeforeAddLiqbeforeRemoveLiq+4 9 3mo SimHookMVPA dynamic-fee hook that sets LP fees based on simulated price impact and a time-decaying cumulative price imbalance score. Includes an owner-configurable JIT liquidity lock that prevents LPs from removing liquidity within a configurable block window after adding it. Ethereum beforeInitafterInitafterAddLiqbeforeRemoveLiq+2 9 5mo 0xc4c4…0088Runs code on every swap · Can take tokens from swaps Ethereum beforeSwapswapDelta 9 6mo HeisenbergHookA Uniswap v4 hook for an ETH/$HEIST token pool that charges a 2% swap fee split 50/40/10 between a redemption treasury, a platform wallet, and a buy-and-burn fund. Operates 300-block "heist" windows where buyers earn $LOOT rewards based on buy volume and entry timing, with a probabilistic bust mechanic driven by a global heat accumulator and a swap coherence metric. Ethereum beforeInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+2 9 6mo LimitOrderHookA deployment of OpenZeppelin's LimitOrderHook — a Uniswap v4 hook implementing single-tick limit orders. Users place orders by providing concentrated liquidity at a specific tick; when the pool price crosses that tick, the position is automatically filled and can be withdrawn at any time. Original implementation by OpenZeppelin (github.com/OpenZeppelin/uniswap-hooks). Deployed to Ethereum mainnet to make this functionality publicly accessible. Ethereum afterInitafterSwap 9 6mo 0xca29…4080Runs code on every swap Ethereum beforeSwap 9 6mo 0x662c…8080Runs code on every swap Ethereum beforeSwap 9 8mo 0x40bd…a088Runs code on every swap · Can take tokens from swaps · Runs at pool creation Ethereum beforeInitbeforeSwapswapDelta 9 8mo 0xce29…a088Runs code on every swap · Can take tokens from swaps · Runs at pool creation Ethereum beforeInitbeforeSwapswapDelta 9 10mo BVCC Dynamic Fee Hook (Ethereum)An advanced anti-bot Uniswap v4 hook by BlockVenture Chain Capital that dynamically adjusts LP fees based on gas price levels, volatility, and 24-hour pool volume. It applies a repeat-swap penalty to deter bot activity and collects a small hook fee from each swap's output amount. Ethereum afterInitbeforeSwapafterSwapafterSwapDelta 9 11mo ArrakisPrivateHookA Uniswap v4 hook for the Arrakis private vault system that applies directional dynamic LP fee overrides per pool (separate rates for zeroForOne and oneForZero swaps), and restricts liquidity additions to the authorized module for each pool. Ethereum beforeAddLiqbeforeSwap 9 18mo 0xc514…c888Runs code on every swap · Can take tokens from swaps · Gates who can add liquidity Ethereum beforeAddLiqbeforeSwapswapDelta 9 5d 0x3fe8…e0ccRuns code on every swap · Can take tokens from swaps · Runs at pool creation Ethereum beforeInitbeforeSwapafterSwapswapDelta+1 8 7d 0x11c7…60ccRuns code on every swap · Can take tokens from swaps · Runs at pool creation Ethereum beforeInitbeforeSwapafterSwapswapDelta+1 8 21d FewV2ShellHookRuns code on every swap · Can take tokens from swaps · Runs at pool creation Ethereum beforeInitbeforeSwapswapDelta 8 49d 0xe705…00ccRuns code on every swap · Can take tokens from swaps · Sets its own swap fee Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 8 58d LoomHookLoomHook charges a configurable levy (up to 5%) on swaps in registered token pools, deducting the fee from either the input or output amount using BeforeSwapDelta/AfterSwapReturnDelta. Fees accumulate per-maker and can be withdrawn via harvest(). Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 8 2mo GweiFeeHookThe single Uniswap v4 hook used by all gwei.fun launchpad pools. In `beforeSwap`, it deducts a configurable fee (platform fee plus optional per-pool creator tax with separate buy/sell rates and a linearly-decaying anti-snipe tax) from the specified currency via BeforeSwapDelta, routing proceeds to the creator's fee recipient and a GWEI buyback vault as ERC-6909 claims. Ethereum beforeInitbeforeSwapswapDelta 8 4mo 0x9b76…2444Runs code on every swap · Can take tokens from swaps · Runs at pool creation Ethereum beforeInitafterAddLiqafterSwapafterSwapDelta 8 4mo OrbitHookA hub-and-spoke liquidity hook for the ORBIT token. Satellite pools (ORBIT/quote) use fully custom accounting: buys fill from a hook-held ORBIT reserve, sells draw from banked quote inventory, both priced via Core TWAP × external oracle with a spread earmarked for token burns. The Core pool (ORBIT/WETH) is passthrough-guarded by a TWAP deviation band and per-block notional cap. Ethereum beforeInitafterInitbeforeSwapafterSwap+1 8 4mo Ring FewV2 Aggregator HookOwnerless router-compatible Uniswap v4 hook that exposes Ring FewV2 AMM liquidity through v4 swaps. The hook uses empty hookData, registers aggregator pools, exposes quote and pseudoTotalValueLocked for routing discovery, and has no hook owner, pause, upgrade path, or route-control admin. Ethereum beforeInitbeforeAddLiqbeforeSwapswapDelta 8 5mo 0x2877…6444Runs code on every swap · Can take tokens from swaps · Runs at pool creation Ethereum beforeInitafterAddLiqafterSwapafterSwapDelta 8 5mo AegisAegisHook applies dynamic swap fees sourced from an external DynamicFeeManager, updates a TWAP oracle on each swap, charges a configurable hook fee on every trade (taken as a BeforeSwapDelta/AfterSwapDelta), and periodically reinvests accumulated fees as full-range liquidity via an AegisEngine on a 1-hour cooldown. Ethereum afterInitbeforeSwapafterSwapswapDelta+1 8 5mo OneTimeLaunchHookTemplateEnforces one-time pool initialization and one-time liquidity addition per token (currency1). In afterSwap, when activated, selectively reverts token-sell swaps (zeroForOne=false) for addresses not on an owner-managed allowlist, while anyone can publicly call bigInt() to enable this restriction. Ethereum beforeInitbeforeAddLiqafterSwap 8 6mo GeodeHookGeodeHook implements a permanent bonding curve venue on Uniswap v4. Direct swaps execute instantly against a constant-product curve via beforeSwap (0.3% fee split three ways), while gasless EIP-712-signed intents are settled in MEV-protected batches at a uniform clearing price (0.1% fee). The curve is the permanent market maker with no graduation or migration. Ethereum beforeSwapswapDelta 8 6mo OneTimeLaunchHookTemplateA launch hook that restricts pool initialization and initial liquidity addition to once per token. In afterSwap, it tracks buy-direction swap recipients and can revert sell-direction swaps for addresses not on a deployer-managed allowlist. Makes non-standard calls (msgSender, msgTarget, msgData) on the token contract that will revert on standard ERC-20 tokens. Ethereum beforeInitbeforeAddLiqafterSwap 8 6mo NoncePoolHookV1A launchpad hook for nonce.fun pools that restricts pool initialization and liquidity provision to a designated launchpad contract. It enforces a fixed opening price, tick range, and fee, allows only one initial liquidity mint per token, locks principal removal, and permanently disables donations. Ethereum beforeInitbeforeAddLiqbeforeRemoveLiqbeforeDonate 8 6mo TokenpadHookA Uniswap v4 hook that collects a 1.25% fee on ETH-in buys (via beforeSwap delta) and ETH-out sells (via afterSwap delta) for registered token pools, forwarding collected ETH to each token's LaunchToken contract for reward distribution, with buffering and rescue mechanisms for failed forwards. Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 8 7mo EMADynamicFeeHookEMA-based dynamic fee hook for Uniswap V4. Calculates swap fees using Exponential Moving Average of price, with 30-step fee schedule (0.01%-3.00%) and 300-block anti-JIT protection via tx.origin. No owner, no admin functions, fully immutable. Ethereum afterInitbeforeAddLiqbeforeRemoveLiqafterRemoveLiq+2 8 19mo 0x8386…40c4Runs code on every swap · Can take tokens from swaps Ethereum beforeSwapafterSwapafterSwapDelta 8 5d 0xa2bd…20ccRuns code on every swap · Can take tokens from swaps · Runs at pool creation Ethereum beforeInitbeforeSwapafterSwapswapDelta+1 7 20d ERC20THookRuns code on every swap · Can take tokens from swaps · Runs at pool creation Ethereum beforeInitafterAddLiqafterRemoveLiqafterSwap+1 7 20d HookereumHookRuns code on every swap · Can take tokens from swaps · Runs at pool creation Ethereum beforeInitbeforeSwapafterSwapswapDelta+1 7