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
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 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 6mo 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 2mo CharityHookA shared Uniswap v4 hook for charity token launches that charges a 1–10% trading tax (with an anti-snipe surcharge that decays over a configurable window) always in the pool's paired asset, accruing fees as ERC-6909 claims per pool, then distributing them among a protocol treasury (30%), a per-launch charity, and the token creator on sweep. Ethereum beforeInitbeforeSwapafterSwapswapDelta+1 7 3mo AtomicLimitOrderHookAtomicLimitOrderHook atomically combines a swap and a limit-order placement in a single transaction, extending OpenZeppelin's LimitOrderHook. It prevents front-running between the two steps and adds guards that keep order accounting consistent under aggregator-style multi-hop swaps. Uses the AFTER_INITIALIZE and AFTER_SWAP flags; ordinary swaps through the pool require no custom hook data. Ethereum afterInitafterSwap 7 6mo LodeHookA Uniswap v4 hook that captures top-of-block LVR and routes it through a per-pool splitter The first swap of each block on an opted-in pool pays an additional premium scaled by `premiumBps`. Subsequent swaps in the same block pay only standard pool fees. A `minAuctionInputSize` floor defeats dust-disarm attacks, sub-economic swaps skip the auction slot without consuming it. Safety. - Pause guardian (separate multisig, kills capture globally in one tx) - Per-pool deactivation - 24h timelock ... Ethereum beforeSwapswapDelta 7 8mo ClankerHookStaticFeeA Uniswap v4 hook for Clanker token pools that enforces separate configurable static LP fees for buying vs. selling the Clanker token, collects a 20% protocol fee on each swap via beforeSwap/afterSwap delta returns, and activates an optional MEV-protection module during the first 2 minutes after pool creation. Ethereum beforeInitbeforeAddLiqbeforeSwapafterSwap+2 7 54d FewV4ShellHookRoutes all swaps through a FewToken-wrapped LP pool via an atomic wrap/swap/unwrap sequence in beforeSwap, returning the full fill as a beforeSwap delta so the shell pool itself is never the execution venue. Reverts if no LP route or sufficient inventory is available; hookData is ignored; an owner can register explicit LP pool mappings. Ethereum beforeInitbeforeSwapswapDelta 6 56d LaunchFeeHookA Uniswap v4 hook that charges a configurable fee (up to 5%) on the quote asset of every swap for launch pools, replacing the LP fee. Supports dual-pool "mirror" swaps that route a portion of each trade through a partner pool to minimize price divergence between paired markets. Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 6 2mo StockMemeV4FeeHookA fee hook for StockMeme pools that charges 1.5% per swap (1.0% to the pool creator, 0.5% to the protocol treasury), denominated in the pool's quote asset. Fees are collected via swap deltas and claimable by the creator on-chain, with optional X-linked claims via EIP-712 signatures. Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 6 2mo SimHookDynamic-fee hook that prices each swap using simulated price impact and a time-decaying cumulative price imbalance, with JIT liquidity protection and a governance-configurable protocol fee taken via afterSwap hook delta. Ethereum beforeInitafterInitbeforeAddLiqafterAddLiq+4 6 2mo SockMarketHookTriggers liquidity collection from a registered locker contract after each non-zeroForOne swap. Pools must be registered by a factory-authorized locker before swaps can proceed; unregistered pools revert. Protocol-initiated swaps (identified by hookData marker from the locker) skip collection to avoid recursion. Ethereum afterSwap 6 4mo JBUniswapV4HookA Uniswap V4 hook that routes exact-input swaps to either the V4 pool or a Juicebox project terminal, choosing whichever venue offers more output, using a 30-minute TWAP oracle for manipulation-resistant comparison. Also maintains a TWAP oracle ring buffer queryable by external contracts such as buyback hooks. Ethereum afterInitafterAddLiqafterRemoveLiqbeforeSwap+2 6 4mo JBUniswapV4HookA Uniswap v4 hook that routes swaps between the V4 pool and Juicebox project terminals, selecting whichever venue gives the user more output tokens. Uses a 30-minute TWAP oracle to compare routes for buy-side (pay into project for tokens) and sell-side (cash out project tokens) swaps. Also serves as a TWAP oracle for external contracts via an IGeomeanOracle-compatible interface. Ethereum afterInitafterAddLiqafterRemoveLiqbeforeSwap+2 6 4mo EquityPegHookA hook that acts as an equity-pegged market maker, quoting token↔USDC swaps at a price derived from an external equity/stock feed. Liquidity deposits are fully blocked; each swap is settled in full via beforeSwapReturnDelta using locked ERC-6909 inventory seeded at graduation. Swaps revert when the feed is stale or not-ok, or when the pool is frozen by the factory admin. Ethereum beforeInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+1 6 5mo FarmHookA Uniswap v4 hook that acts as a yield farm and liquidity manager, enforcing full-range liquidity added only through the hook. Charges a 1% swap fee routed to a fee recipient, distributes minted reward tokens via a Synthetix-style accumulator with tiered emissions (6.6M/day bootstrap, then 660k/day), and applies a 10% claim tax redistributed to current LPs. Ethereum beforeInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+3 6 5mo UNI20HookA BRC-20-style inscription protocol layered on Uniswap v4. Users embed DEPLOY, MINT, or TRANSFER operations in swap hookData; MINT and DEPLOY ops extract ETH fees from the swap via BeforeSwapDelta and poolManager.take(), minting ERC-1155 tokens to the swapper's EOA. Swaps without hookData pass through normally. Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 6 6mo OneTimeLaunchHookTemplateA one-time launch hook that restricts pool initialization and initial liquidity addition to occur only once per token (currency1). In afterSwap, gates one-direction swaps (non-zeroForOne) to an allowlist of addresses checked via tx.origin when the restriction is enabled per token. Ethereum beforeInitbeforeAddLiqafterSwap 6 6mo HookFeeCharges a configurable basis-point fee on token1-to-token0 swaps by intercepting the output amount in afterSwap and redirecting the fee portion to an immutable feeRecipient via afterSwapReturnsDelta. The fee rate is owner-adjustable up to 10,000 bps. Ethereum afterSwapafterSwapDelta 6 8mo TokiHookA custom AMM hook implementing Pendle-style yield trading for Principal Tokens (PTs) on Uniswap V4. Uses a custom curve with beforeSwapReturnsDelta to fully handle swap execution, disables swaps after PT maturity via block.timestamp expiry, and optionally rehypothecates idle liquidity into ERC4626 vaults to boost LP yields. Ethereum afterInitbeforeAddLiqbeforeSwapswapDelta 6 8mo ClankerHookStaticFeeA Uniswap v4 hook that applies separate static LP fees for buying and selling a designated clanker token, taking a 20% protocol cut on the paired-token side of each swap via beforeSwap/afterSwap delta adjustments. Includes a time-limited MEV protection module active for up to 2 minutes post-pool-creation. Ethereum beforeInitbeforeAddLiqbeforeSwapafterSwap+2 6 13mo TokenWorks Hook v2A Uniswap v4 hook for NFTStrategy trading pools that applies time-decaying buy fees (starting at 99% and decreasing to 10% as blocks accumulate) and a flat 10% sell fee, collecting fees via afterSwap delta returns and distributing them to configured recipients. Ethereum beforeInitafterAddLiqafterSwapafterSwapDelta 6 13mo TokenWorks Hook v4A hook for the TokenWorks NFT strategy ecosystem that restricts pool initialization and liquidity addition to the NFTStrategyFactory, and collects a configurable swap fee (default 10%, with a 95% initial buy fee) distributed among the collection owner, a protocol fee address, and PNKSTR token holders. Ethereum beforeInitbeforeAddLiqbeforeSwapafterSwap+1 6 58d FugaziV4HookA Uniswap v4 hook for Fugazi token pools that collects a fixed 1% swap fee denominated in the reserve token and distributes it among a burn address, the token creator, and a protocol treasury. Only works with pools pairing a FugaziToken against a designated reserve token with zero LP fee. Ethereum beforeInitbeforeSwapafterSwapswapDelta+1 5 2mo NFTXFlexHookAllows for exotic token pairings for liquidity against NFTX pools Ethereum beforeInitbeforeAddLiqafterAddLiqbeforeRemoveLiq+4 5 2mo SpectraBlocklistHookUniswap v4 hook that blocks swaps from addresses on a configurable blocklist, checking both the immediate swap caller (sender) and tx.origin. The immutable owner can update the blocklist but cannot affect fees, liquidity, or swap amounts. Ethereum beforeSwap 5 3mo SaturnOmnichainV4HookA Uniswap v4 hook for the Saturn Omnichain project. The afterInitialize callback is a pure no-op (just returns the selector). An external initializePools() function calls a LiquidityBootstrapper contract to seed liquidity and stores the resulting initial tick. Has no swap, liquidity modification, or donation logic. Ethereum afterInit 5 6mo OneTimeLaunchHookTemplateEnforces one-time pool initialization and initial liquidity per token (currency1). When the buy gate is activated via the unprotected `bigInt()` function (callable by anyone), non-zeroForOne (buy) swaps revert unless `tx.origin` is in a deployer-managed allowlist. Ethereum beforeInitbeforeAddLiqafterSwap 5 8mo FreeholdHookIntercepts all swaps in creator-registered sDAI/SyntheticFiatToken pools and routes them through the token's mint() and redeem() functions via BeforeSwapReturnsDelta, providing oracle-priced, zero-slippage virtual liquidity with no real liquidity held in the pool. Ethereum beforeSwapswapDelta 5 8mo CumHookDynamic LP fee hook that adjusts fees based on cumulative price impact (CPI) across swaps. Fees scale with directional market imbalance and time-decay between swaps; each pool must be explicitly configured with fee bounds, decay parameters, and illiquidity scale before trading is permitted. Ethereum beforeInitafterInitbeforeSwapafterSwap 5 10mo ERC20StrategyHookA Uniswap v4 hook for ERC20Strategy pools that takes time-based buy fees (starting at 99%, decreasing 1% per minute to a floor of 10%) and distributes collected fees among the strategy contract (80%), PunkStrategy token (10%), and a configurable protocol fee address (10%). Pool creation and liquidity addition are restricted to the ERC20StrategyFactory. Ethereum beforeInitafterAddLiqafterSwapafterSwapDelta 5 21mo FairTradeHookAnti-MEV hook that blocks swaps from owner-blocklisted addresses, reverts same-block swaps from the same sender (sandwich detection), and enforces a configurable per-address timestamp cooldown between swaps. Ethereum beforeAddLiqbeforeRemoveLiqbeforeSwapafterSwap 5 21mo BunniHookCore hook for Bunni v2, a concentrated liquidity protocol on Uniswap v4. Implements a virtual AMM with dynamic fees (TWAP-based + surge detection), am-AMM bidding for LVR/MEV recapture, auto-rebalancing via FloodPlain, and an on-chain price oracle. Ethereum afterInitbeforeAddLiqbeforeSwapswapDelta 5 46d Permissioned PoolsPermissioned Pools are a Uniswap V4 hook system that allows trading of tokenized and regulated assets onchain. The hook checks an issuer-managed allowlist on every swap and liquidity addition, while a verified wrapper contract keeps the permissioned token compatible with the standard PoolManager. Ethereum beforeInitbeforeAddLiqbeforeSwapafterSwap 4 59d StockpairHookA Uniswap v4 hook implementing a token launchpad with permanently locked liquidity after seeding. Charges 0% on buys and a 2% sell fee on exact-input token sells, split 60% to the token creator and 40% to the platform via afterSwapReturnsDelta. Ethereum beforeAddLiqbeforeRemoveLiqafterSwapafterSwapDelta 4 59d LaunchHookToken launch hook that charges a time-decaying anti-snipe fee on quote-currency buys, starting near 99% at pool open and decreasing linearly over 20 seconds to a configured steady-state rate (1%–10%). Fees are split between a platform and a tracker. Ethereum afterInitbeforeSwapafterDonateswapDelta 4 59d MeridianHookA launchpad hook managing Meridian launch pools: single-sided concentrated liquidity positions (token-only, LP locked). Skims fees from buy inputs via beforeSwap delta and sell outputs via afterSwap delta, splitting between protocol, creator, and an optional holder distributor. Includes an anti-snipe fee that decays linearly from a higher rate to the base fee over a configurable post-launch window. Ethereum beforeInitbeforeAddLiqbeforeSwapafterSwap+2 4 2mo NimbusHookFee-collection hook for registered token/quote pairs. On each eligible swap, takes a configurable toll (up to 5%) from the quote amount via BeforeSwapDelta/afterSwap return delta, and accumulates the fees for a designated seeker address to withdraw via siphon(). Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 4 2mo StockLaunchEthHookA Uniswap v4 hook for ETH-paired token launch pools that charges a mandatory 1% platform fee plus a configurable creator fee on every swap. Fees are taken from the stock/ETH currency via BeforeSwapDelta and AfterSwapDelta and held as claimable balances. Only factory-registered pools may use this hook. Ethereum beforeInitbeforeSwapafterSwapswapDelta+1 4 2mo StockMemeV4FeeHookCharges a fixed 1.5% swap fee on the pool's registered quote token, splitting it between the pool creator (1%) and protocol treasury (0.5%); fees are accumulated as ERC-6909 claims redeemable by the creator directly or via EIP-712 X-account signature. Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 4 2mo TideHookA fee-skimming hook that collects a configurable levy (default 1%, max 5%) on each swap's quote-side amount. Fees are captured via beforeSwap/afterSwap delta returns and held in the hook contract, where they can be claimed by designated "sailors" registered in the paired factory. Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 4 2mo SwapFeeHookThe single Uniswap v4 hook for the gwei.fun launchpad. In beforeSwap, it charges a configurable fee (platform fee plus optional per-pool creator tax with linear anti-snipe decay) on the specified currency, holding collected amounts as ERC-6909 claims on the PoolManager for lazy redemption by creators and a buyback vault. Pools must be pre-registered before initialization. Ethereum beforeInitbeforeSwapswapDelta 4 3mo EthCreatorFeeHookV3A Uniswap v4 hook for native ETH/token pools that charges immutable, per-pool directional buy and sell fees in ETH, split between a factory-authenticated creator reward vault and a fixed protocol fee recipient. Pools must be pre-registered by the token creator before initialization. Ethereum beforeInitbeforeSwapafterSwapswapDelta+1 4 4mo PortXHookA two-phase meme token launch hook for the PortX platform. During the bonding curve phase it NoOps the core AMM entirely, pricing trades against a virtual-reserve constant-product curve with a 1% fee; after the curve sells out, it graduates the pool to a standard AMM and continues charging a 1% fee on all swaps via delta returns. External liquidity addition and removal are permanently blocked. Ethereum beforeInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+3 4 4mo V4TaxHookApplies a fixed 5% buy and 5% sell tax on swaps in registered pools. Tax is collected in the base asset via beforeSwap/afterSwap deltas, minted to the token address, and recorded as dividends through the token's recordTaxFromHook function. Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 4