UniHooks

Uniswap v4 hooks on Base

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

AgeHookChainPermissionsPools
53d 0x569f…08c0Runs code on every swap · Gates who can add liquidity Base beforeAddLiqbeforeSwapafterSwap 2 53d FlashPerpsHookA custom-curve (NoOp) perpetuals hook where each registered PERP/USDG pool is a single-venue market; swaps mint new perp exposure (buy) or unwind existing positions (sell) through registered vaults, charging a flat 0.3% USDG fee routed to a buyback escrow. No passive liquidity providers exist; `beforeAddLiquidity` always reverts. Base beforeInitbeforeAddLiqbeforeSwapswapDelta 2 54d 0xc63e…4b80Runs code on every swap · Sets its own swap fee · Can block LP withdrawals · Gates who can add liquidity Base beforeAddLiqbeforeRemoveLiqafterRemoveLiqbeforeSwap 2 54d 0xaa79…1bc0Runs code on every swap · Sets its own swap fee · Can block LP withdrawals · Gates who can add liquidity · Runs at pool creation Base afterInitbeforeAddLiqbeforeRemoveLiqafterRemoveLiq+2 2 54d 0x19e8…9040Runs code on every swap · Runs at pool creation Base afterInitafterSwap 2 54d 0x1a0c…a880Runs code on every swap · Sets its own swap fee · Gates who can add liquidity · Runs at pool creation Base beforeInitbeforeAddLiqbeforeSwap 2 56d 0x9907…20ccRuns code on every swap · Can take tokens from swaps · Runs at pool creation Base beforeInitbeforeSwapafterSwapswapDelta+1 2 56d LaunchFeeHookSets a creator-specified dynamic LP fee (1%–3%) on pool initialization via afterInitialize. Only the authorized launchpad can open pools; the fee is read from launchpad.pendingLpFee() and written once using poolManager.updateDynamicLPFee(). Base afterInit 2 57d 0x9d43…20ccRuns code on every swap · Can take tokens from swaps · Runs at pool creation Base beforeInitbeforeSwapafterSwapswapDelta+1 2 59d 0x6774…20c4Runs code on every swap · Can take tokens from swaps · Runs at pool creation Base beforeInitbeforeSwapafterSwapafterSwapDelta 2 59d 0xf4f3…6accRuns code on every swap · Can take tokens from swaps · Can block LP withdrawals · Gates who can add liquidity · Runs at pool creation Base beforeInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+3 2 2mo LiqpadLaunchHookLaunch hook for B20/VVV token pair pools that collects a 1% fee on each swap: B20 input fees are burned via IBurnableB20, while VVV input fees are routed to a FeeRouter for 70/30 accounting. Only factory-registered and initialized pools may be used; exact-output swaps are disabled. Base beforeInitbeforeSwapafterSwapswapDelta+1 2 2mo 0x0eb4…08c0Runs code on every swap · Gates who can add liquidity Base beforeAddLiqbeforeSwapafterSwap 2 2mo 0x6411…28ccRuns code on every swap · Can take tokens from swaps · Sets its own swap fee · Gates who can add liquidity · Runs at pool creation Base beforeInitbeforeAddLiqbeforeSwapafterSwap+2 2 2mo 0x795c…20ccRuns code on every swap · Can take tokens from swaps · Runs at pool creation Base beforeInitbeforeSwapafterSwapswapDelta+1 2 2mo 0xd1c1…60ccRuns code on every swap · Can take tokens from swaps · Runs at pool creation Base beforeInitbeforeSwapafterSwapswapDelta+1 2 2mo 0x68a5…d0c4Runs code on every swap · Can take tokens from swaps · Sets its own swap fee · Runs at pool creation Base afterInitbeforeSwapafterSwapafterSwapDelta 2 2mo 0xf79a…e880Runs code on every swap · Sets its own swap fee · Gates who can add liquidity · Runs at pool creation Base beforeInitbeforeAddLiqbeforeSwap 2 2mo 0x079b…1080Runs code on every swap · Sets its own swap fee · Runs at pool creation Base afterInitbeforeSwap 2 2mo 0x7102…2044Runs code on every swap · Can take tokens from swaps · Runs at pool creation Base beforeInitafterSwapafterSwapDelta 2 2mo 0x0fd5…8a80Runs code on every swap · Can block LP withdrawals · Gates who can add liquidity Base beforeAddLiqbeforeRemoveLiqbeforeSwap 2 2mo 0x2b26…e0ccRuns code on every swap · Can take tokens from swaps · Runs at pool creation Base beforeInitbeforeSwapafterSwapswapDelta+1 2 2mo 0xa418…c040Runs code on every swap Base afterSwap 2 2mo 0xacc7…8040Runs code on every swap Base afterSwap 2 2mo 0xfe20…00c4Runs code on every swap · Can take tokens from swaps · Sets its own swap fee Base beforeSwapafterSwapafterSwapDelta 2 2mo JITRangeHookA sole-operator JIT market maker that injects a one-tick liquidity range at an operator-pushed price before each swap and removes it afterward, with configurable spread, skew, staleness bounds, and window-based notional risk controls. Third-party liquidity is blocked; the hook is the sole LP. Base beforeAddLiqbeforeSwapafterSwap 2 2mo AdvancedFeeHookV5A post-swap tax hook for a token launchpad that deducts a configurable percentage fee from each swap's output token, splitting it between a platform treasury and creator-defined payees. The creator share can optionally be partially burned and/or reinvested as single-sided liquidity. Pool initialization is gated to a designated launcher address. Base beforeInitafterSwapafterSwapDelta 2 2mo 0x6462…c880Runs code on every swap · Sets its own swap fee · Gates who can add liquidity Base beforeAddLiqbeforeSwap 2 2mo 0x96f8…55d4Runs code on every swap · Can take tokens from swaps · Sets its own swap fee · Runs at pool creation · Handles donations to LPs Base afterInitafterAddLiqafterRemoveLiqbeforeSwap+3 2 2mo UmiaHookSingleton oracle-only hook for Umia LBP pools that maintains dual-ring TWAP oracles (per-block fine ring and hourly coarse ring) and restricts liquidity management to a registered operator (SpotLiquidityVault). Swaps execute as vanilla Uniswap v4 swaps with no fee override or delta modification. Base beforeInitafterInitbeforeAddLiqbeforeRemoveLiq+1 2 2mo 0x0b8c…c880Runs code on every swap · Sets its own swap fee · Gates who can add liquidity Base beforeAddLiqbeforeSwap 2 2mo 0xe2b7…8080Runs code on every swap · Sets its own swap fee Base beforeSwap 2 2mo UmiaHookSingleton Uniswap v4 hook for Umia LBP pools that maintains a TWAP oracle (SpotMarketOracle) and gates liquidity additions/removals to a registered per-pool operator, while allowing unrestricted swaps with no fee delta. Base beforeInitafterInitbeforeAddLiqbeforeRemoveLiq+1 2 2mo 0xbe9c…85cfRuns code on every swap · Can take tokens from swaps · Sets its own swap fee · Takes a cut when LPs withdraw · Adjusts deposit amounts Base afterAddLiqafterRemoveLiqbeforeSwapafterSwap+4 2 2mo 0xde67…40c4Runs code on every swap · Can take tokens from swaps · Sets its own swap fee Base beforeSwapafterSwapafterSwapDelta 2 2mo CapGateReverts swaps where the absolute amount specified exceeds MAX_TRADE (100e18 units). Inherits AeonFee, which takes a mandatory 10 bps fee on the unspecified (output) currency of every swap via afterSwap return delta, routing it to a hardcoded recipient. Base beforeSwapafterSwapafterSwapDelta 2 2mo FlashHookUniswap v4 hook for the FLASH protocol implementing OTC buy fills, realized sell taxes distributed to stakers, creators, and protocol, and multi-venue routing using custom accounting deltas (BeforeSwapDelta/AfterSwapDelta) to route portions of swaps off-AMM. Base beforeInitbeforeSwapafterSwapswapDelta+1 2 2mo FlashHookA Uniswap v4 hook implementing a WETH-rooted token launch ecosystem with OTC buy fills, realized sell taxes distributed to stakers/creators/protocol, and multi-venue sell routing via external aggregators. Swaps are gated on an active Uniswap v4 protocol fee set by governance. Base beforeInitbeforeSwapafterSwapswapDelta+1 2 2mo GlueHookImplements a shield-and-pump mechanism for configured pools: beforeSwap intercepts sells of a designated main token by absorbing them from a pre-funded secondary-token pot (returning a BeforeSwapDelta), while afterSwap amplifies buys by spending pot reserves on a nested pump swap and auto-harvests LP fees on every swap. Base beforeInitbeforeSwapafterSwapswapDelta 2 2mo RetardV111DelayedHookProxyA time-delayed upgradeable proxy for a Uniswap v4 hook using EIP-1967 storage slots and delegatecall. The proxied implementation handles beforeSwap (with delta return), beforeAddLiquidity, and beforeInitialize. Upgrades require a minimum 1-day delay, must be scheduled then executed by an authority address, and are validated for storage-version and config compatibility. Base beforeInitbeforeAddLiqbeforeSwapswapDelta 2 2mo FlashHookUniswap v4 hook for the FLASH protocol implementing WETH-rooted token ecosystems with a static 0.6% LP fee, realized sell taxes distributed to stakers/creator/protocol, full-fill-or-skip OTC buy decks, and multi-venue external sell routing. Swaps are blocked until governance configures the directional protocol fee. Base beforeInitbeforeSwapafterSwapswapDelta+1 2 2mo RetardV111DelayedHookProxyUpgradeable proxy for the retard.market v111 AMM hook, delegating all calls to an implementation via delegatecall with a time-delayed upgrade path (minimum 1-day delay). Implements beforeSwap with delta returns for custom pricing based on virtual depth and fixed entry fees. Base beforeInitbeforeAddLiqbeforeSwapswapDelta 2 2mo 0x1d7c…4f00Can block LP withdrawals · Gates who can add liquidity Base beforeAddLiqafterAddLiqbeforeRemoveLiqafterRemoveLiq 2 2mo AdvancedFeeHookV3A token launchpad hook (BaseStonk) that collects configurable swap taxes in afterSwap, splitting fees between a platform treasury, per-pool creator payees, a token burn address, and single-sided liquidity reinvestment. Pool initialization is restricted to a trusted launcher address. Base beforeInitafterSwapafterSwapDelta 2 2mo FlashUniswap v4 hook for the FLASH protocol implementing realized sell taxes with multi-venue routing, OTC desk fills for buys, price impact mitigation, and staking reward distribution across WETH-rooted main and sub-token pools. Base beforeInitbeforeSwapafterSwapswapDelta+1 2 2mo FlashRuns code on every swap · Can take tokens from swaps · Runs at pool creation Base beforeInitbeforeSwapafterSwapswapDelta+1 2 2mo 0x10a5…60ccRuns code on every swap · Can take tokens from swaps · Runs at pool creation Base beforeInitbeforeSwapafterSwapswapDelta+1 2 2mo FlashA Uniswap v4 hook for the FLASH protocol that charges dynamic sell taxes on protocol token sells, routes buy orders through a combined OTC deck and AMM, and distributes collected fees to stakers, pool creators, and a treasury. Pools require pre-registration via stagePoolLaunch and operate with a static 0.6% LP fee. Base beforeInitbeforeSwapafterSwapswapDelta+1 2 2mo StockPadHookShared Uniswap v4 hook for StockPad token launch pools that enforces a per-swap buy cap on the launched token. Pools must be pre-registered by a designated launcher with a maxBuyPerSwap limit; afterSwap reverts if any swap would extract more than the configured cap. Base beforeInitafterSwap 2 2mo FlashHookA token launch and trading hook for WETH-rooted ecosystems that enforces a static 0.6% LP fee, applies realized sell taxes distributed to stakers and pool admins, and routes buy-side volume through an OTC deck before hitting the AMM. Base beforeInitbeforeSwapafterSwapswapDelta+1 2