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
20mo BTC ACC Hook (Base)A hook that takes a configurable fee (1-10%) on each swap and deposits it into a Bitcoin accumulation contract, converting swap fees from ETH, WETH, USDC, or cbBTC into Bitcoin for the swapper. The beforeInitialize hook enforces that pools must pair exactly one allowed base token (ETH/WETH/USDC/cbBTC) with a non-base token. Base beforeInitafterSwapafterSwapDelta 9 2mo DynamicFeeHookV2Implements a linearly-decaying dynamic LP fee (anti-sniper) that transitions from a high start fee to a lower end fee over a configurable duration, then locks in the end fee permanently. Maintains an internal TWAP oracle via a cumulative sqrt-price accumulator updated on each swap. Base beforeSwapafterSwap 8 4mo JBUniswapV4HookA Juicebox-integrated Uniswap v4 hook that routes exact-input swaps through either the V4 AMM or a Juicebox terminal (buy or sell side), choosing whichever path offers better output. It also maintains a TWAP oracle by recording price observations after each swap, add-liquidity, and remove-liquidity event. Base afterInitafterAddLiqafterRemoveLiqbeforeSwap+2 8 5mo TokenFactoryA token launch factory that deploys ERC-20 tokens, initializes Uniswap v4 pools with permanently locked liquidity, and collects a 0.5% tax on token purchase swaps (non-WETH output) via the afterSwap hook, forwarding the tax to a fee recipient. Base afterSwap 8 5mo HookTokenMaintains a registry of project tokens and enforces that only pre-registered tokens (paired with native ETH) can be used to initialize Uniswap v4 pools. On afterInitialize, it validates the pool's token is registered and records the pool ID → token mapping. Base afterInit 8 5mo UniClawHookV4Dual-mode Uniswap v4 hook supporting agent-only pools (requiring on-chain agent registry verification) and public pools. Captures swap fees via afterSwapReturnDelta with optional reputation-based fee discounts for verified agents. Base afterInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+3 8 10mo Aegis v3 Hook (Base)Spot is a Uniswap v4 hook that implements surge-based dynamic fees using a truncated geometric oracle, charges protocol fees (POL share) on swaps, and manages a full-range liquidity position that automatically reinvests accrued fees. Base afterInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+3 8 11mo HaberdasheryHookA fee-collecting hook that charges a configurable percentage fee (default 1%, max 10%) on each swap by taking the fee amount via beforeSwapReturnsDelta, accumulating fees per pool by currency. The owner can withdraw accumulated fees, automatically converting non-Habs token balances to the Habs token via an internal pool swap. Base afterInitbeforeSwapswapDelta 8 11mo C402DynamicFeeHookA hook that restricts pool initialization to whitelisted launchers, enforces one-time liquidity addition per pool, and applies a time-based dynamic LP fee (2.5% for the first 24 hours after pool creation, then 1% thereafter). Base beforeInitbeforeAddLiqbeforeSwap 8 12mo TokenMesaHookCollects a configurable USDC-denominated fee (up to 1% in basis points) on swaps by intercepting input amounts via BeforeSwapDelta, using an on-chain TWAP oracle (circular buffer of 100 tick observations) to convert non-USDC swap amounts into USDC-equivalent fee values. Fees are forwarded to a configurable recipient. Base beforeSwapafterSwapswapDeltaafterSwapDelta 8 12mo ArcmindA token launchpad hook that creates ETH-only paired pools, adds initial liquidity, and collects a configurable BPS fee on ETH-side swaps using beforeSwap/afterSwap delta returns. Fees are split between the token creator and the platform owner; deployed as a transparent upgradeable proxy. Base beforeInitbeforeSwapafterSwapswapDelta+1 8 13mo TruthMarketHookA prediction market hook that tracks pool tick movements and notifies an IOrderManager to settle tick-range orders after each swap. Optionally applies an admin-configurable fee on swaps by minting tokens to a fee collector, and supports an optional ISwapValidator for post-swap validation. Base beforeSwapafterSwapafterSwapDelta 8 16mo BoardHookA Uniswap v4 hook for token launches that manages a fair launch phase (one-sided liquidity position with temporal gating and optional Merkle-proof whitelisting), captures and distributes swap fees to protocol, creator, referrer, and swapper recipients, and blocks direct pool initialization — requiring tokens to be deployed through the hook's own `publiphi` function. Base beforeInitbeforeAddLiqafterAddLiqbeforeRemoveLiq+6 8 16mo DynamicFeeHookA Uniswap v4 hook that dynamically adjusts the LP fee on every swap. An owner can set the active fee to any value between 1% (10000) and 2% (20000) via setFee(); the current fee is returned as an lpFeeOverride in beforeSwap. Base beforeSwap 8 17mo CreatorCoinHookA Uniswap v4 hook for Zora creator coin pools that creates multiple liquidity positions via a Doppler multi-curve configuration on pool initialization, and on every swap collects accrued LP fees from all positions, converts them to a backing currency via multi-hop swap paths, and distributes the proceeds as rewards to the creator, referrers, and protocol. Base afterInitafterSwap 8 17mo ZoraV4CoinHookA Zora V4 Coin hook that registers Doppler multi-curve LP positions on pool initialization and, after each swap, collects accumulated fees, routes them to a target currency via nested pool swaps, and distributes market rewards to protocol participants and an optional trade referrer encoded in hookData. Base afterInitafterSwap 8 56d FlashPerpsHookCustom-curve perpetuals hook that acts as the sole market maker for PERP/USDG pools. Buy swaps mint new perp exposure from a registered vault; sell swaps unwind it. A fixed 0.30% USDG fee on all trades is routed to a FLASH buyback module. No passive liquidity or external LPs are permitted. Base beforeInitbeforeAddLiqbeforeSwapswapDelta 7 2mo DecayFeeHookA Uniswap v4 hook that applies a linearly decaying launch fee (anti-snipe) from a configurable START_FEE down to END_FEE over DECAY_SECONDS, then charges a flat fee. Pool initialization is restricted to a fixed MULTI_POOL address set at deployment. Base beforeInitbeforeSwap 7 2mo LaunchHookA shared Uniswap v4 hook for B20 token launchpads that gates pool creation to a factory, permanently locks single-sided liquidity, and charges a configurable swap fee (split among creator, platform, and optional referrer) plus a timestamp-anchored anti-snipe surcharge that decays to the base fee over a configurable window. Base beforeInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+3 7 4mo B20FeeHookA dynamic fee hook for native ETH/TOKEN pools that charges 1–5% fees in ETH on both buys (via beforeSwap delta) and sells (via afterSwap delta). The fee scales with the previous swap's tick movement as a volatility measure. Pool creation is factory-gated via beforeInitialize; exact-output swaps are reverted. Base beforeInitbeforeSwapafterSwapswapDelta+1 7 4mo JBUniswapV4HookA Uniswap V4 hook that routes swaps to whichever venue (V4 pool or Juicebox terminal) offers more output tokens, using a 30-minute TWAP oracle for manipulation-resistant price comparison. Also maintains a TWAP oracle by recording observations after pool initialization, liquidity changes, and swaps. Base afterInitafterAddLiqafterRemoveLiqbeforeSwap+2 7 7mo MoonsendFeeHook_BASEA factory-gated Uniswap v4 hook that enforces pool pre-registration before initialization and sets a one-time dynamic LP fee (from a fixed set of tiers: 1.33%–4.20%) via updateDynamicLPFee() in afterInitialize. Has no swap callbacks, imposing zero gas overhead per swap. Base beforeInitafterInit 7 8mo LaunchHookV2Launch guard hook that applies a 90% buy-side fee override during a configurable block window post-launch, then collects a 1% protocol/creator fee split on all swaps via afterSwapReturnsDelta. Base beforeSwapafterSwapafterSwapDelta 7 11mo PoolStartegyHooksNFT strategy hook that gates pool initialization and liquidity addition to the factory contract, collects time-decaying swap fees (starting at 99% and decreasing every 5 blocks), converts non-ETH fees via nested swaps, and distributes fees among a vault, optional strategy fee recipient, and protocol address. Blocks exact-output swaps. Base beforeInitbeforeAddLiqafterAddLiqbeforeSwap+2 7 11mo TokenMesaHookCollects a configurable USDC-denominated fee (up to 1%) on every swap using an internal TWAP oracle (circular buffer of 100 tick observations) to convert token amounts to USDC. Fees are deducted via beforeSwap/afterSwap return deltas and forwarded to a configurable recipient address controlled by the owner. Base beforeSwapafterSwapswapDeltaafterSwapDelta 7 12mo EthOnlyFeeHookRestricts pool initialization to ETH/token pairs with zero LP fee, and charges a configurable BPS fee on the ETH side of every swap via beforeSwap and afterSwap return deltas. Accumulated fees are minted as ERC-6909 claims and can be claimed by the owner, split between a creator and platform address. Base beforeInitbeforeSwapafterSwapswapDelta+1 7 15mo TokenFabA token launchpad hook that deploys ERC20 tokens via a bonding curve on Uniswap v4, blocking external liquidity additions and removals. When the bonding curve supply is exhausted, it automatically migrates liquidity to a full-range AMM pool. Collects a 5% fee on swaps (1% creator, 1% platform, 3% protocol) distributed to configurable fee receivers via afterSwapReturnsDelta. Base beforeInitbeforeAddLiqbeforeRemoveLiqafterSwap+1 7 15mo BoardHookA Uniswap v4 hook powering a token launchpad ("publiphi") with fair launch mechanics: it enforces a temporal launch window (blocking swaps before launch time), fills buys directly from a one-sided fair launch position during the launch window, and captures fees after every swap distributing them across protocol, creator, referrer, and swapper recipients. Base beforeInitbeforeAddLiqafterAddLiqbeforeRemoveLiq+6 7 17mo TokenFabBonding curve token launchpad hook. New ERC20 tokens launch on a concentrated bonding curve pool; once the curve supply is exhausted, the hook automatically transitions liquidity to a standard AMM pool split into base-only and token-only legs. A fixed 1% fee on each swap is split 50/50 between the token creator and the platform. Base beforeInitbeforeAddLiqbeforeRemoveLiqafterSwap+1 7 19mo ExponentialLiquidityHookA bonding curve hook that creates Uniswap v4 pools for newly deployed ERC20 pack tokens, distributing liquidity across exponentially spaced tick ranges. In afterSwap, it enforces whole-token sales, takes a 1% protocol fee via delta return, and when the full bonding curve supply is sold, removes all liquidity and transfers collected base tokens to a PackERC20 contract to enable Chainlink VRF-based pack opening. Base beforeInitafterSwapafterSwapDelta 7 19mo ExponentialLiquidityHookA bonding curve hook that deploys ERC20 tokens paired with WBTC. It manages segmented liquidity across 10 tick intervals within a fixed price range. When a swap moves the price past the bonding curve's end threshold, the hook removes all liquidity segments and calls enablePackOpening() on the token, graduating it from the bonding curve. Direct pool initialization is blocked; pools must be created via deployERC20Token(). Base beforeInitafterSwap 7 56d FlashPerpsHookCustom-curve perpetuals issuance hook where each registered PERP/USDG pool mints or unwinds leveraged perp exposure through Morpho-backed vaults. All swaps are fully intercepted via BeforeSwapDelta (no passive liquidity); a fixed 0.30% USDG fee routes to a buyback module. Base beforeInitbeforeAddLiqbeforeSwapswapDelta 6 57d LaunchFeeHookA launchpad fee hook that charges a configurable fee (default 2%, max 3%) on every swap denominated in the quote asset using beforeSwap/afterSwap return deltas. For dual-pool tokens (coin + NFT floor token), it mirrors 50% of each trade through the paired collection pool to keep both markets synchronized. Base beforeSwapafterSwapswapDeltaafterSwapDelta 6 2mo DecayFeeHookCharges a linearly decaying swap fee on the unspecified currency (via afterSwapReturnsDelta), from a configurable start rate down to an end rate over a fixed decay window. When the fee is denominated in the launched token, it converts it to stock via a nested pool swap and credits all proceeds to a MultiPool contract as ERC-6909 claims. Base beforeInitafterSwapafterSwapDelta 6 2mo TokenLaunchpadA permissionless fixed-supply token launchpad hook for Uniswap v4. The beforeInitialize callback always reverts for external callers, ensuring only the launchpad itself can initialize launch pools via its createToken function, which atomically deploys a token, sets up a pool, and seeds permanent liquidity positions. Base beforeInit 6 5mo LayerMemeHookStaticFeeV2A meme token launchpad hook that enforces separate static LP fees for buying vs. selling the meme token, collects a 20% protocol fee on each swap via before/afterSwap delta returns, and optionally integrates an MEV protection module (active for up to 2 minutes post-launch) and a pluggable pool extension. Base beforeInitbeforeAddLiqbeforeSwapafterSwap+2 6 6mo BurnOnSwapHookBurns a configurable percentage (up to 3%) of a designated token on each swap by taking a portion of the swap amount from the pool manager and calling burn() on the token contract. Configuration is per-pool and owner-controlled. Base beforeSwapafterSwapswapDeltaafterSwapDelta 6 7mo Hook_V2EMA-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. Base afterInitbeforeAddLiqbeforeRemoveLiqafterRemoveLiq+2 6 7mo DynamicFeeHookA Uniswap v4 hook implementing a 14-step dynamic fee schedule (0.03%–1.00%) based on price volatility, with anti-JIT liquidity protection that enforces a 300-block (~10 min) minimum hold period before liquidity can be removed. Base afterInitbeforeAddLiqbeforeRemoveLiqafterRemoveLiq+1 6 8mo SeedifyFeeHookA time-based fundraise fee hook for Uniswap v4 that charges configurable fees on swaps involving a designated fundraise token, with a higher initial rate during a launch window that drops to a lower rate afterward. Fees are split between platform and creator treasuries and accumulated for on-demand withdrawal. Base afterInitbeforeSwapafterSwapswapDelta+1 6 9mo ZoraV4CoinHookUniswap v4 hook for Zora Coins that collects LP fees on every swap, converts them to a backing currency via multi-hop paths, and distributes them as rewards. On initialization it provisions multiple liquidity positions per coin configuration, and after each swap it fills Zora limit orders based on the tick range crossed. Base afterInitbeforeSwapafterSwap 6 17mo TokenFabA bonding curve token launch platform hook that manages ERC-20 token launches through a fixed bonding curve phase, collects 1% swap fees split 50/50 between creator and platform fee recipients, and automatically migrates fully-bonded tokens to a standard AMM pool with split single-sided liquidity positions. Base beforeInitbeforeAddLiqbeforeRemoveLiqafterSwap+1 6 17mo TokenFabA token launch hook implementing a bonding curve for initial price discovery. When the bonding curve supply cap (15.75M tokens) is reached, it automatically removes liquidity and graduates to an AMM pool. Collects a 1% swap fee split 50/50 between creator and platform fee recipients. External liquidity management is blocked. Base beforeInitbeforeAddLiqbeforeRemoveLiqafterSwap+1 6 18mo TokenFabToken launch factory hook implementing a bonding curve for newly deployed ERC-20 tokens. Blocks external pool initialization and liquidity additions, collects a 1% swap fee on the base token split between creator and platform, and automatically graduates tokens to a full-range AMM pool when the bonding curve supply threshold is reached. Base beforeInitbeforeAddLiqafterSwapafterSwapDelta 6 57d BluestonkHookSkims a flat 2% fee on every swap denominated in the quote asset (currency1), split 50/50 between a platform wallet and the registered token creator. LP fee is forced to zero so all fees flow through the hook via beforeSwap and afterSwap delta returns. Base afterInitbeforeSwapafterSwapswapDelta+1 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 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 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 6mo 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