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 KnightV4TaxHookA Uniswap v4 hook that levies a fixed 5% trade tax on every swap by taking the fee from the output currency in afterSwap via afterSwapReturnDelta. Accrued fees are held by the hook contract and can be withdrawn by the owner via claimFees(). Base afterSwapafterSwapDelta 2 4mo BaseSunMoonUsdcFeeV4HookCollects USDC fees on SunToken-USDC and MoonToken-USDC pool swaps, routing a portion to a SunCurve liquidity pool and a portion to a protocol budget address. Uses BeforeSwap and AfterSwap return deltas to capture fees directly from USDC in the swap; owner controls a pause flag and per-pool allowlists. Base beforeSwapafterSwapswapDeltaafterSwapDelta 2 5mo TokenFactoryA token factory that deploys ERC20 tokens, creates Uniswap v4 pools with initial liquidity, and allows token creators to claim accumulated LP fees. The afterSwap hook is a no-op that simply returns its selector. Base afterSwap 2 5mo TokenFactoryToken factory that deploys ERC20 tokens with Uniswap v4 pools (1% fee tier), seeding them with 99% of total supply as single-sided liquidity. The afterSwap hook is a no-op; LP fees accumulate in the pool and token creators can claim them via claimLPFees(). Base afterSwap 2 5mo GitlawbAgentHookCharges a configurable output fee (in basis points, max 10%) on each swap and transfers it to a treasury address using afterSwap with afterSwapReturnsDelta. The fee rate and treasury address are mutable by the immutable owner. Base afterSwapafterSwapDelta 2 5mo AvillHookEnforces a dynamic price floor for the Avill token in USDC/USDT pools. beforeSwap reverts sell orders when the current pool price falls below a floor derived from cumulative stable inflows and Avill sold; afterSwap updates those accumulators after each trade. Base beforeSwapafterSwap 2 5mo PepFitLaunchHookA controlled-launch hook that blocks all swaps until the owner calls enableTrading(). Includes an optional anti-snipe mechanism capping individual swap size (in ETH) for the first 5 blocks after launch. After trading is open, the hook is a pass-through with no effect on swap math. Base beforeSwap 2 6mo LayerMemeHookDynamicFeeV2Volatility-based dynamic LP fee hook for LayerMeme token pools. Computes fees from tick movement using a volatility accumulator, takes a 20% protocol fee on swaps involving the LayerMeme token via beforeSwap/afterSwap delta manipulation, and supports optional MEV protection and pool extensions. Base beforeInitbeforeAddLiqbeforeSwapafterSwap+2 2 6mo LayerMemeHookStaticFeeV2A Uniswap v4 hook for LayerMeme token pools that applies configurable per-direction static LP fees (separate rates for buying vs. selling the LayerMeme token) via updateDynamicLPFee, and collects a 20% protocol fee on each swap through delta adjustments. Includes a time-limited (2-minute) MEV protection module and supports optional pool extensions. Base beforeInitbeforeAddLiqbeforeSwapafterSwap+2 2 6mo ButeA bonding-curve ERC-20 token (BUTE) that uses beforeSwap to intercept ETH-in swaps: it mints BUTE via a multi-factor curve (temporal decay, burn echo, peak bonus) and returns a BeforeSwapDelta, routing buys through the hook's own ETH reserve. Sell-side swaps pass through unmodified; selling BUTE is handled via a direct sell() function. Base beforeSwapswapDelta 2 6mo HomelanderUniV4PluginA Uniswap v4 hook that dynamically overrides the LP fee in beforeSwap (zero for a privileged MEV executor, configurable for all others) and runs on-chain arbitrage in afterSwap by delegating to an external MEV router and executor, distributing captured profits via a configurable profit distributor. Base afterInitbeforeSwapafterSwap 2 6mo LaunchHookFee-splitting hook that skims a fixed 1% platform fee plus a configurable creator fee (0–20%) from every exact-input swap via BeforeSwapDelta, forwarding creator fees directly to the token contract. Pool initialization is gated to a factory address; exact-output swaps are unconditionally rejected. Base beforeInitbeforeSwapswapDelta 2 6mo BpegHookCalls `start` on a configured ERC token when the first liquidity is added to its pool, and updates an on-chain random seed (using block entropy) on each swap involving that token. Base afterAddLiqafterSwap 2 6mo BpegHookSyncs BPEG token holder NFT counts after swaps by calling syncSwap() on the BPEG contract in afterSwap, and sets the pool address on the BPEG contract in afterAddLiquidity when the first liquidity is added. Base afterAddLiqafterSwap 2 6mo GridHookA Uniswap v4 hook implementing per-user grid liquidity management. Users configure and deploy grid orders across price ranges; the hook tracks cumulative tick movement per block and reverts swaps that exceed a maximum price impact of 500 ticks per block to protect against excessive volatility. Base afterInitafterAddLiqafterRemoveLiqbeforeSwap+1 2 7mo Alphix LVR Fee HookDynamic LP fee hook that applies admin-controlled per-pool LP fees via `updateDynamicLPFee` and charges a configurable per-pool protocol fee on each swap's output via `afterSwap` with delta return. Accumulated protocol fees are held as ERC-6909 claims and can be swept to a treasury address by calling `handleHookFees()`. Base afterInitafterSwapafterSwapDelta 2 7mo MaybeHookA probabilistic Uniswap v4 hook for an ETH/MAYBE pool that implements "maybification": when a user opts in via hookData on an ETH→MAYBE exactIn swap, the MAYBE output is burned and Chainlink VRF randomness is used to determine whether the user wins a multiplied MAYBE payout (based on a configurable probability in basis points) or loses. LP fees are donated as MAYBE to liquidity providers. Base beforeInitbeforeSwapafterSwapswapDelta+1 2 8mo LightspeedPoolHookTakes a fixed 0.3% fee from the canonical currency (e.g. SPEED) on every swap and forwards it to a FeeCollector address via afterSwap delta return. Tracks accumulated fees per epoch per pool for trustless ranking in launch pool competitions. Base beforeSwapafterSwapafterSwapDelta 2 8mo ClawclickHookA two-phase token launch hook that imposes a decaying tax (up to 50%, floor 1%) and per-user position limits in Phase 1, graduating to a 1% LP fee model after 16x market cap growth. Fees are split 70/30 between the token beneficiary and the platform, with configurable multi-wallet fee distribution. Base beforeInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+2 2 8mo BlockAddLiquidityHookRecords tx.origin as the pool creator on initialization; restricts beforeAddLiquidity so only the original creator's EOA transaction origin can add liquidity, reverting with AddLiquidityBlocked for all others. Base afterInitbeforeAddLiq 2 9mo TradingFeeHookCollects a fixed 5% trading fee on swaps in registered pools, routing 0.5% to a treasury and 4.5% to token creators via a RevenueVault. Uses beforeSwap for exact-input buys and afterSwap for sells and exact-output buys, with WETH unwrapped to ETH before distribution. Base beforeSwapafterSwapswapDeltaafterSwapDelta 2 9mo AquinasPoolHookA Uniswap v4 hook for Aquinas DAOs that gates pool initialization to factory-authorized addresses. The factory registers a Safe address as the authorized initializer for each pool; any other caller is reverted, preventing frontrunning of LP initialization. Has no swap-path logic. Base beforeInit 2 9mo LimitOrderHookRecords the pre-swap tick in transient storage, then triggers limit order execution via an external LimitOrderManager for all ticks crossed during the swap. Supports role-gated dynamic LP fee updates via FEE_MANAGER_ROLE. Base beforeSwapafterSwap 2 10mo UniswapV4SwapFeeHookV1Charges configurable buy and sell fees (in basis points) on swaps involving a designated fee token, taking the fee amount via BeforeSwapDelta/AfterSwapDelta and forwarding it to a fee recipient contract. Separate fee rates apply for buy and sell directions, with fees capped at 50%. Base beforeSwapafterSwapswapDeltaafterSwapDelta 2 10mo OrkidKineticHookA Uniswap v4 hook that applies dynamic LP fee adjustments in beforeSwap based on route scores from an external PhysicsValidator contract (aligned flow → 0%, misaligned → 0.1%). In afterSwap, whitelisted bots can trigger JIT arbitrage via poolManager flash accounting (vacuum execution); non-whitelisted callers receive only fee gating. Base beforeSwapafterSwap 2 10mo LimitOrderHookRecords the pre-swap tick in transient storage, then after each swap calls an external ILimitOrderManager to execute limit orders based on tick movement. Supports role-gated dynamic LP fee updates via poolManager.updateDynamicLPFee(). Base beforeSwapafterSwap 2 10mo AlphixUniswap v4 hook that delegates all hook logic to a swappable AlphixLogic contract. Implements a dynamic LP fee algorithm adjusted via off-chain `poke` calls based on pool ratios. Supports multiple pool types (stable, standard, volatile), requires owner-controlled pool initialization and activation, and includes global pause and per-pool activation controls. Base beforeInitafterInitbeforeAddLiqafterAddLiq+10 2 11mo SimpleTempleHookA Uniswap v4 hook that deducts a configurable percentage (default 5%, max 30%) of each swap's output amount and transfers it directly to a designated charity address, using the afterSwap return delta pattern so the user pays the donation fee. Base afterSwapafterSwapDelta 2 11mo ADRIANSimpleTaxHookAfter-swap hook that deducts a configurable tax (default 10%, max 20%) on ADRIAN token purchases from a pool, taking the tax from PoolManager via `take()` and forwarding it to a designated tax recipient address. Tax rate and recipient are mutable by the contract owner. Base afterSwapafterSwapDelta 2 11mo ZoraV4CoinHookUniswap v4 hook for Zora Coins that creates multiple liquidity positions on pool initialization, then on every swap collects accrued LP fees, converts them to a backing currency via multi-hop paths, and distributes the converted fees as market rewards. Also integrates with a Zora limit order book to fill limit orders crossed during each swap. Base afterInitbeforeSwapafterSwap 2 11mo wASSBLASTER420A Uniswap v4 hook that charges a 0.7% fee on the wASS token in registered pools, splitting the fee 50/50 between an apple staking contract and a protocol owner. Fees are taken via beforeSwapReturnsDelta on wASS sells and via manager.take() in afterSwap on wASS buys. Market makers are exempt from hook fees. Base beforeInitbeforeSwapafterSwapswapDelta+1 2 11mo SuperStrategy Hook (Base)A Uniswap v4 hook that collects a 2% fee on each swap and auto-compounds the accumulated reserves back into pool liquidity. It forwards 0.30% to a protocol fee receiver, allows admin-designated market makers to trade fee-free, and supports multi-pool liquidity management with configurable auto-compounding thresholds. Base beforeInitafterInitbeforeSwapafterSwap+1 2 11mo SwapFeeHookCharges a time-decaying fee on USDC-paired pools, starting at 99% and linearly decreasing to a configurable rate over a set adjustment period. Fees are collected via BeforeSwapDelta (for USDC-in swaps) and afterSwap return delta (for non-USDC-in swaps), then distributed to a designated fee recipient. Only exact-input swaps are permitted. Base afterInitbeforeSwapafterSwapswapDelta+1 2 11mo AntiSnipeHookWithFeeSplitA Uniswap v4 hook that applies a time-decaying dynamic fee to deter sniping after token launch, splitting collected swap fees among up to three configurable recipients plus an optional vault. Base beforeInitafterInitbeforeSwapafterSwap 2 11mo SUKOBondingCurveHookA Uniswap v4 hook that replaces standard AMM pricing with a linear bonding curve for SUKO token. It intercepts swaps via BeforeSwapDelta, applying custom buy/sell pricing and collecting a 2% fee split between a protocol recipient (60%) and a creator (40%). Base afterInitbeforeSwapswapDelta 2 11mo SUKOClankerHookAccumulates estimated trading fees after each swap and periodically converts them into concentrated liquidity positions around the current tick. Maintains a configurable virtual liquidity display multiplier and optionally triggers reward collection via an external fee conversion locker contract. Base beforeInitbeforeAddLiqafterAddLiqafterRemoveLiq+4 2 12mo AntiSnipeHookWithFeeSplitApplies a time-decaying dynamic LP fee that starts high (anti-snipe) and drops to a lower rate after a configured duration. After each swap, collected fees are split among up to three configured recipients, with an optional portion sent to a vault address to build a floor price. Base beforeInitafterInitbeforeSwapafterSwap 2 12mo UpHookFee-collecting hook for ETH/token pools that deducts buy fees before the swap and sell fees after, splitting ETH proceeds among protocol, referral, and creator addresses. Restricts swap access to a trusted-router/quoter allowlist and tracks per-user token holdings for governance contribution attribution. Base beforeSwapafterSwapswapDeltaafterSwapDelta 2 12mo SuperStrategyA Uniswap v4 hook that collects percentage-based swap fees using BeforeSwapDelta, splitting proceeds between a per-pool hook reserve and a configurable protocol fee receiver. Manages concentrated liquidity positions per pool with cooldown-gated rebalancing logic. Base beforeInitafterInitbeforeSwapafterSwap+1 2 12mo FlamingStarHookTakes a configurable fee (default 6%) from the output of exact-input swaps and routes it to a designated recipient; blocks exact-output swaps. Separately, a public distributeFees() function burns a custom ERC20 token and distributes accumulated USDC 50/50 between an artist address and NFT holders proportionally. Base afterSwapafterSwapDelta 2 12mo CDHookA Uniswap v4 hook for CoinDAT (CD) token ETH pools that implements time-decaying swap fees starting at 99% and decreasing to 7% over ~92 minutes. After each swap, it collects fees via afterSwapReturnsDelta and distributes them to the CD token accumulation contract (72%), protocol treasury (14%), and token deployer (14%). Base beforeInitafterAddLiqafterSwapafterSwapDelta 2 12mo SuperStrategyA Uniswap v4 hook that skims 2.3% from each swap (2% retained in hook reserves for auto-compounding, 0.3% forwarded to a protocol fee receiver) via BeforeSwapDelta. Accumulated reserves are periodically compounded back into pool liquidity positions (one NFT position per pool), with an incentive mechanism rewarding callers who trigger the compounding. Base beforeInitafterInitbeforeSwapafterSwap+1 2 12mo SixHookTakes a configurable fee (default 6%) on exact-input swaps via afterSwapReturnsDelta, directing output tokens to a designated fee recipient. Blocks exact-output swaps. Includes optional off-chain USDC distribution logic to an artist address and NFT holders via a public distributeFees() function. Base afterSwapafterSwapDelta 2 12mo TokenMesaHookCollects a configurable USDC-denominated fee (up to 1%) on swaps by shaving the input amount via BeforeSwapDelta in beforeSwap and taking the USDC to a designated fee recipient in afterSwap. Maintains a simple TWAP oracle by recording per-block tick observations in a per-pool circular buffer of up to 100 entries. Base beforeSwapafterSwapswapDeltaafterSwapDelta 2 12mo CustomFeesHookStub hook with afterSwap permission enabled but all fee-collection logic commented out. The contract stores an immutable fee recipient and swap fee in BIPS, but afterSwap returns a zero delta without executing any fee or token transfer logic. Base afterSwap 2 12mo UpHookA fee-charging hook for ETH/token pools that pre-charges buy fees in beforeSwap via BeforeSwapDelta and post-charges sell fees in afterSwap via afterSwapReturnsDelta, splitting revenue among protocol, referral, and token creator. Only owner-configured trusted routers and quoters may swap; exact-output swaps are disabled. Base beforeSwapafterSwapswapDeltaafterSwapDelta 2 12mo EZKLDynFeeHookDynamic fee hook for Uniswap v4 that accepts ZK-proof-verified (EZKL/Halo2Verifier) fee updates signed by a Lit Protocol public key, then publishes them on-chain via updateDynamicLPFee. Restricts pool initialization to dynamic-fee-enabled pools (fee == 0x800000). Base beforeInit 2 12mo Super StrategyA fee-collecting hook that skims a 2.3% fee on each swap (2% hook reserves + 0.3% protocol) via beforeSwapReturnsDelta, accumulating reserves per pool. Pools are registered automatically on initialization. The owner can pause trading and claim LP fees; anyone can trigger liquidity management (minting or adding to positions via Uniswap v4's PositionManager) and receives a 0.1% caller incentive for doing so. Base beforeInitafterInitbeforeSwapafterSwap+1 2 12mo TokenMesaHookA Uniswap v4 hook that collects a configurable percentage fee (up to 1%) in USDC on swaps, liquidity additions, and removals, while recording tick observations for a TWAP oracle (circular buffer of up to 100 price points per pool). Base afterAddLiqafterRemoveLiqbeforeSwapafterSwap+3 2 13mo SlotMachineHookA gamified hook that collects a configurable fee (default 2%) on all swaps via BeforeSwapDelta, splitting it into dual per-pool ETH jackpots. On qualifying ETH buys (above a configurable minimum), it triggers a slot machine spin for the buyer; winning combinations (pair, two-pair, three-of-a-kind, four-of-a-kind) pay out ETH directly. Sell fees are converted to ETH via a JackpotSellExecutor. Buyers receive SpinToken ERC-20 tokens for additional spins. Base beforeInitbeforeAddLiqbeforeSwapafterSwap+1 2