UniHooks

Every Uniswap v4 hook, live

Every hook attached to at least one Uniswap v4 pool, explained in plain English, with safety checks and the pools that use it.

Filters 1
Type
Safety
Activity
Permissions
Hooks with all of the selected permissions:
Sort
AgeHookChainPermissionsPools
56d Flaunch PositionManagerThe core Uniswap v4 hook for the Flaunch protocol, managing memecoin pool launches with scheduled temporal gates, an Internal Swap Pool that routes swaps through fee inventory before hitting the Uniswap pool, and a fee distribution system splitting swap fees among referrers, creators, LPs, and a BidWall. Arbitrum beforeInitafterAddLiqafterRemoveLiqbeforeSwap+4 631 16mo Clanker Static Fee Hook (Arbitrum)A Clanker token launch hook for Arbitrum that applies separate, configurable LP fees for buys and sells of the Clanker token (set statically at pool initialization), and collects a protocol fee on each swap via beforeSwap and afterSwap delta adjustments. It also includes a short-lived MEV protection module active in the first two minutes after pool creation. Arbitrum beforeInitbeforeAddLiqbeforeSwapafterSwap+2 423 16mo Clanker Dynamic Fee Hook (Arbitrum)Clanker V4 hook for autonomous token deployment with dynamic fees that adjust based on swap volatility using a tick-based accumulator model. Also includes MEV protection via an optional external module active for the first 2 minutes after pool creation. Arbitrum beforeInitbeforeAddLiqbeforeSwapafterSwap+2 199 2mo DopplerHookInitializerA Uniswap v4 pool initializer implementing the Doppler Multicurve bonding curve mechanism for token launches. Distributes liquidity across multiple tick ranges, supports optional dynamic LP fee adjustment via an associated Doppler hook, and enforces a graduation condition when the pool price reaches a target tick. Arbitrum beforeInitafterAddLiqafterRemoveLiqafterSwap+1 56 18mo UniswapV4KEMHookA swap hook that requires a signed off-chain quote in hookData for each swap, validating exchange rate, nonce, and expiry against a designated quote signer. Excess output beyond the signed maximum exchange rate is captured as EG tokens minted as ERC-6909 claims in the PoolManager, claimable by designated accounts. Arbitrum beforeSwapafterSwapafterSwapDelta 47 11mo TokiHookCustom AMM hook implementing Pendle-style yield trading for Principal Tokens on Uniswap v4. Computes swaps against a custom curve in beforeSwap, returning a delta, with support for ERC4626 rehypothecation, a TWAP oracle, and curator-controlled pause and pool expiry. Arbitrum afterInitbeforeAddLiqbeforeSwapswapDelta 39 2mo GuUniswapV4HookA singleton Uniswap v4 hook for GuCoin/reserve-token pools. Implements adaptive and sliding swap fees via a Camelot volatility oracle, collects fees as swap deltas in both beforeSwap and afterSwap, and supports a per-pool security registry that can disable swaps or restrict liquidity removal. Arbitrum afterInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+3 30 8mo TokiHookA custom-curve AMM hook for fixed-maturity Principal Token yield markets, implementing a Pendle-style curve via beforeSwapReturnsDelta. Supports optional rehypothecation into ERC4626 vaults, TWAP oracle tracking, and hooklet plugins; swaps are permanently blocked after pool maturity. Arbitrum afterInitbeforeAddLiqbeforeSwapswapDelta 19 9mo TokiHookCustom curve hook implementing a Pendle-style fixed-rate AMM for Principal Token / underlying token pairs on Uniswap v4. Handles all liquidity operations directly, maintains a TWAP oracle for log-implied rates, supports optional ERC4626 rehypothecation vaults, and gates swaps on both a curator-controlled pause flag and a PT maturity expiry. Arbitrum afterInitbeforeAddLiqbeforeSwapswapDelta 19 21mo BunniHookBunni's core Uniswap v4 hook that computes all swap math internally using a configurable Liquidity Density Function (LDF), applies dynamic TWAP-based and surge fees with optional am-AMM for MEV/LVR recapture, and supports automatic pool rebalancing via FloodPlain. Arbitrum afterInitbeforeAddLiqbeforeSwapswapDelta 18 2mo OmniHookA fee-extraction hook that takes 10 bps of every swap's output amount and splits it among five hardcoded addresses via a pull-payment ledger. Fee recipients and split ratios are immutable; no owner or admin controls exist. Arbitrum beforeSwapafterSwapswapDeltaafterSwapDelta 14 21mo BunniHookBunni protocol's central Uniswap v4 hook that handles swaps using custom liquidity density functions and its own swap math. Implements dynamic surge and TWAP-based fees taken via BeforeSwapDelta, an am-AMM mechanism for LVR/MEV recapture, a TWAP oracle, and auto-rebalancing via FloodPlain. Arbitrum afterInitbeforeAddLiqbeforeSwapswapDelta 14 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. Arbitrum afterInitbeforeAddLiqbeforeRemoveLiqafterRemoveLiq+2 13 8mo BlockAddLiquidityHookRecords the EOA that initialized each pool (via tx.origin) and blocks all subsequent liquidity additions from any other origin address, making each pool effectively single-provider. Arbitrum afterInitbeforeAddLiq 11 2mo CoalaArbitrumHookA Coala launch hook that collects a 1% buy and sell tax on swaps in registered pools. Tax is taken from the specified or unspecified currency via BeforeSwapDelta (beforeSwap) and AfterSwapDelta (afterSwap), minting ERC6909 tokens to the project token address. Arbitrum beforeInitbeforeSwapafterSwapbeforeDonate+2 10 7mo BVCC Dynamic Fee Hook (Arbitrum)Dynamically adjusts LP fees per-swap based on current gas price tiers and penalizes high-frequency traders, while collecting an additional protocol fee in afterSwap from the swap output. Arbitrum afterInitbeforeSwapafterSwapafterSwapDelta 10 2mo SteadyHookA Uniswap v4 hook for Lumen's Beam and Prism token-launch pool modes that charges a fixed trading fee (up to 5%) on the stock currency (currency0), split among a platform treasury, pool creator, and token holders. Only a designated locker may add liquidity; exact-output sells are not supported. Arbitrum beforeInitbeforeAddLiqbeforeSwapafterSwap+2 8 17mo Limit Order Hook (Arbitrum)A Uniswap v4 hook that enables limit order functionality by recording the tick before each swap and delegating to a LimitOrderManager contract after each swap to execute any limit orders whose tick range was crossed. Supports dynamic LP fee updates via a permissioned fee manager role. Arbitrum beforeSwapafterSwap 8 4mo JBUniswapV4HookRoutes exact-input swaps to whichever venue—Uniswap V4 pool or Juicebox project terminal (pay/cashOut)—offers the best output, using a 30-minute TWAP oracle for price-manipulation resistance. Also implements IGeomeanOracle so external contracts (e.g. buyback hooks) can query this pool's TWAP. Arbitrum afterInitafterAddLiqafterRemoveLiqbeforeSwap+2 6 4mo JBUniswapV4HookA Uniswap V4 hook that routes swaps to whichever venue — the V4 pool or the Juicebox project terminal — yields the most output tokens for the user. Uses a built-in TWAP oracle (30-minute window) to estimate V4 output and compares it against live Juicebox terminal previews for both buy-side (pay) and sell-side (cash-out) paths. Arbitrum afterInitafterAddLiqafterRemoveLiqbeforeSwap+2 6 18mo BackGeoOracleA TWAP oracle hook that records price observations and mitigates price impact by executing automatic backruns on large swaps, crediting the original sender with ERC6909 tokens. Only exact-input swaps are supported; calling routers must implement IMsgSender. Arbitrum beforeInitafterInitbeforeAddLiqbeforeRemoveLiq+3 6 7mo TokiHookCustom AMM curve hook for fixed-rate Principal Token (PT) trading using a Pendle-style yield curve. Handles its own swap math via beforeSwap with delta returns, blocks direct PoolManager liquidity ops, optionally rehypothecates idle liquidity into ERC4626 vaults, and maintains a TWAP oracle for logarithmic implied rates. Swaps are permanently disabled after PT maturity. Arbitrum afterInitbeforeAddLiqbeforeSwapswapDelta 5 19mo External DEX Wrapper (Arbitrum)Routes Uniswap v4 swaps through the Camelot (Algebra) V3 ETH/USDC pool on Arbitrum, intercepting swaps in beforeSwap and fully settling them via BeforeSwapDelta with a configurable owner-adjustable fee ratio. Arbitrum beforeSwapswapDelta 5 55d GuUniswapV4HookSingleton hook for GuCoin/reserve-token pools that computes dynamic swap fees using a volatility oracle (Algebra adaptive fee) and directional sliding fee factors. Collects fees via BeforeSwapDelta/AfterSwapDelta and distributes them to protocol and LP fee receivers. Swaps are gated by a per-pool security registry and a GuCoin LP status flag. Arbitrum afterInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+3 4 7mo ArbHookHook that intercepts swaps from a single authorized address ("muscle"), computing a custom BeforeSwapDelta based on input/output token decimals to absorb the swap amounts itself. All other callers receive a zero delta pass-through and proceed with standard pool behavior. Arbitrum beforeSwapswapDelta 4 14mo ArbitrageHookAfter each swap, compares the pool price to an external oracle (via INexArbitrage) and executes a nested rebalancing swap to push the pool price toward the oracle-derived target price. Arbitrum afterSwap 4 6mo The PoolThe Pool protocol's volatility-adjusted fee hook (on-chain contract: DynamicFeeHookV2). Takes a percentage of each swap's output via afterSwapReturnsDelta (25 bps base, scaling up to 37.5 bps under realized volatility) and routes it to a fee distributor. Also supports reserve-sale fills in beforeSwap, where a registered vault can offer single-sided inventory to swappers at a chosen price in either price-improvement or vault-spread mode. Arbitrum beforeSwapafterSwapswapDeltaafterSwapDelta 3 13mo FeeHookTracks swap fees in afterSwap and periodically collects them from an LP position, burning non-native token proceeds. Distributes accumulated ETH fees weekly to vMooney token holders who check in each week. Arbitrum beforeAddLiqafterSwapafterSwapDelta 3 17mo LimitOrderHookRecords the current tick before each swap using transient storage, then after the swap calls ILimitOrderManager.executeOrder() with the before/after ticks and swap direction to trigger limit order fills. A FEE_MANAGER_ROLE holder can update the pool's dynamic LP fee via poolManager.updateDynamicLPFee(). Arbitrum beforeSwapafterSwap 3 53d AnyPositionManager (Flaunch vested launch hook)Flaunch's hook for vested memecoin launches. Gates swaps on a per-pool scheduled open time (temporal fair-launch window), runs an internal swap pool that fills orders from fee inventory before Uniswap sees them, manages a bid wall, and distributes swap fees with optional referrer splits. Pools pair memecoins against registry-approved tokens. Arbitrum beforeInitafterAddLiqafterRemoveLiqbeforeSwap+4 2 2mo FlareHookA Uniswap v4 hook for the Lumen/Flare launch platform that collects a fixed trading fee (up to 5%) on each swap, directing the community share to a buyback pot. A designated burner address can trigger market buybacks of the launched token using accrued fees, sending all purchased tokens to the dead address. Arbitrum beforeInitbeforeAddLiqbeforeSwapafterSwap+2 2 2mo LaunchHookSingleton launch hook for the LaunchFactory supporting four launch modes (Beam, Prism, Flare, Dawn). Trading fees are split between a platform treasury, creator, and community; Flare pools accumulate fees for a permissioned buyback-and-burn to a dead address. Only the locker may add liquidity, and Dawn mode applies a 99% fade fee that decays 1% per second down to the resting rate. Arbitrum beforeInitbeforeAddLiqbeforeSwapafterSwap+2 2 5mo WLimitOrderHookA Uniswap v4 hook implementing single-tick limit orders with atomic swap + order placement. Users place orders by adding concentrated liquidity at a specific tick; when the pool price crosses that tick, the position is automatically filled. The swapAndPlaceOrder() function combines a swap and limit order placement in a single transaction, preventing front-running. Filled orders can be withdrawn at any time. Arbitrum afterInitafterSwap 2 6mo GridHookA grid trading hook for Uniswap v4 that allows users to configure, deploy, rebalance, and close multi-order grid positions. After each swap, records the current tick and swap count for bookkeeping. Supports Permit2-based token transfers and keeper authorization for automated rebalancing. Arbitrum afterInitafterAddLiqafterRemoveLiqafterSwap 2 7mo SafeSwapAnti-rug and anti-whale protection hook. Sell rate limiting, cooldowns, progressive fees, launch protection mode. Immutable config per pool. Arbitrum beforeInitbeforeSwapafterSwap 2 7mo OrketHookA Uniswap v4 hook for prediction market pools (YES/NO share tokens) that implements VALS dynamic fees calculated as e^[λ*(Δx/L)*σ]-1 from a backend-signed toxic velocity parameter. Every swap requires a valid ECDSA-signed SignedSigma in hookData; fee proceeds are routed to share token holders via YieldDistributor rather than to LPs. Arbitrum beforeAddLiqafterAddLiqafterRemoveLiqbeforeSwap+2 2 7mo OrketHookPrediction market hook for YES/NO share pools implementing VALS (Volatility-Adjusted Liquidity Sensitivity) fees. Requires a backend-signed sigma value per swap; fees are computed as e^(λ·Δx/L·σ), captured from the USDC collateral side via BeforeSwapDelta, and redirected to share holders through a YieldDistributor rather than to LPs. Arbitrum beforeAddLiqafterAddLiqafterRemoveLiqbeforeSwap+2 2 7mo OrketHookUniswap v4 hook for prediction market pools implementing a VALS dynamic fee formula (e^[λ*(Δx/L)*σ] - 1). Requires a server-signed sigma parameter in hookData for every swap; fees are taken from the collateral token and routed to a YieldDistributor for share holders. Blocks swaps and liquidity additions when the market is resolved or disputed. Arbitrum beforeAddLiqafterAddLiqafterRemoveLiqbeforeSwap+2 2 7mo OrketHookA Uniswap v4 hook for binary prediction market (YES/NO outcome) pools implementing a VALS dynamic fee formula (e^[λ*(Δx/L)*σ]-1). Every swap requires a backend-signed sigma parameter; fees are captured from the collateral token and distributed to share holders via a YieldDistributor. Also tracks LP virtual balances and feeds pool prices back to the prediction market. Arbitrum beforeAddLiqafterAddLiqafterRemoveLiqbeforeSwap+2 2 7mo OrketHookA Uniswap v4 hook for prediction market YES/NO pools implementing VALS (volatile-adjusted) dynamic swap fees. Every swap requires a signed oracle sigma parameter; the hook computes a fee as e^[λ*(Δx/L)*σ]-1 and captures it from the USDC (collateral) side via BeforeSwapDelta, routing fees to a YieldDistributor for share holders rather than LPs. Blocks swaps and liquidity changes when the market is resolved or disputed. Arbitrum beforeAddLiqafterAddLiqafterRemoveLiqbeforeSwap+2 2 7mo OrketHookPrediction market Uniswap v4 hook implementing VALS (Volatile Adverse-Liquidity Sensitivity) dynamic swap fees. Requires a signed sigma parameter per swap (from a trusted off-chain signer); reverts without it. Fees are captured as a BeforeSwapDelta and redirected to a YieldDistributor for share token holders, not LPs. Tracks LP virtual balances and updates pool prices after each swap. Arbitrum beforeAddLiqafterAddLiqafterRemoveLiqbeforeSwap+2 2 7mo OrketHookA prediction market pool hook implementing VALS (Volatility-Adjusted Liquidity Sensitivity) dynamic fees. Captures fees from swaps using a signed toxic-velocity (sigma) parameter, routing them to a YieldDistributor for share holders rather than LPs. Requires a backend-signed sigma payload in hookData and blocks swaps when the prediction market is resolved or disputed. Arbitrum beforeAddLiqafterAddLiqafterRemoveLiqbeforeSwap+2 2 7mo OrketHookUniswap v4 hook for prediction market pools (YES/NO outcome tokens vs. collateral) that computes a VALS dynamic fee (e^[λ·(Δx/L)·σ] − 1) using a backend-signed toxic-velocity parameter. The fee is taken from collateral via beforeSwapReturnsDelta and forwarded to a YieldDistributor for share holders; liquidity changes update LP virtual balances and yield tracking. Arbitrum beforeAddLiqafterAddLiqafterRemoveLiqbeforeSwap+2 2 7mo OrketHookA Uniswap v4 hook for prediction market pools that applies VALS (toxic velocity-adjusted) dynamic fees. Each swap requires a backend-signed sigma parameter; the hook computes an exponential fee (e^[λ·(Δx/L)·σ] − 1) and routes it via BeforeSwapDelta to a YieldDistributor for share token holders rather than LPs. Swaps and liquidity actions are blocked when the market is resolved or disputed. Arbitrum beforeAddLiqafterAddLiqafterRemoveLiqbeforeSwap+2 2 7mo OrketHookA Uniswap v4 hook for prediction market pools (YES/NO share tokens vs USDC collateral) that implements VALS (Volatility-Adjusted Liquidity Sensitivity) dynamic fees. Each swap requires a fresh ECDSA-signed sigma parameter from an authorized backend; fees are calculated as e^[λ*(Δx/L)*σ]-1 in basis points, captured via BeforeSwapDelta, and distributed to share token holders through a YieldDistributor contract. Arbitrum beforeAddLiqafterAddLiqafterRemoveLiqbeforeSwap+2 2 7mo OrketHookUniswap v4 hook for prediction market pools implementing VALS (Volatility-Adjusted Liquidity Sensitivity) dynamic fees. Requires a backend-signed sigma parameter per swap; fees are computed as e^[λ*(Δx/L)*σ]-1 and captured via BeforeSwapDelta, then distributed to share token holders via a YieldDistributor rather than to LPs. Arbitrum beforeAddLiqafterAddLiqafterRemoveLiqbeforeSwap+2 2 7mo OrketHookA Uniswap v4 hook for prediction market pools that implements VALS (Volatility-Adjusted Liquidity Sensitivity) fees, computed as e^[λ*(Δx/L)*σ]-1 and captured via beforeSwap delta. Every swap requires a cryptographically signed volatility parameter (σ) from a trusted signer encoded in hookData; swaps revert if the market is resolved or disputed. Arbitrum beforeAddLiqafterAddLiqafterRemoveLiqbeforeSwap+2 2 7mo OrketHookA prediction market pool hook implementing VALS (Volatility-Adjusted Liquidity Sensitivity) fees. Every swap requires an ECDSA-signed sigma parameter in hookData; fees are computed via an exponential formula (e^[λ·(Δx/L)·σ]−1) and routed to share holders through a YieldDistributor rather than to LPs. Arbitrum beforeAddLiqafterAddLiqafterRemoveLiqbeforeSwap+2 2 7mo OrketHookPrediction market pool hook implementing VALS dynamic fees (e^[λ·(Δx/L)·σ]−1) based on backend-signed toxic-velocity (sigma) parameters, capturing fees from the collateral (USDC) side and redistributing them to share holders via YieldDistributor. Tracks LP positions and updates prediction market YES/NO prices after each swap. Arbitrum beforeAddLiqafterAddLiqafterRemoveLiqbeforeSwap+2 2 7mo OrketHookPrediction market hook implementing VALS (Volatility-Adjusted Liquidity Sensitivity) fees. Every swap requires a backend-signed oracle sigma parameter; fees are computed as e^[λ*(Δx/L)*σ]−1 and redistributed to prediction market share holders via a YieldDistributor rather than to LPs. Liquidity and swaps are blocked once the market is resolved or disputed. Arbitrum beforeAddLiqafterAddLiqafterRemoveLiqbeforeSwap+2 2