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
6mo UspegHookUniswap v4 hook for the USPEG token that calls token.start() on pool initialization and enforces a configurable per-buy amount limit in beforeSwap. Also automatically ratchets off an early-phase mint discount once the pool sqrtPriceX96 drops below a fixed threshold (equivalent to 1 USPEG = 0.005 ETH). Ethereum afterInitbeforeSwap 1 6mo UspegHookActivates a USPEG ERC-20 collectible token at pool initialization and enforces a time-increasing per-buy token limit during swaps. Also permanently ends a 10:1 early-mint discount once the pool price crosses a configured sqrtPrice threshold. Ethereum afterInitbeforeSwap 1 6mo Pepe100KSimpleV4HookA minimal Uniswap v4 hook that triggers token activation on pool creation. In afterInitialize, it verifies the pool contains the associated token and calls token.start() if not already started. It has no swap, liquidity, donate, or fee logic — all other hook callbacks revert with HookNotImplemented. Ethereum afterInit 1 6mo PokpegHookCalls `start()` on a configured token contract when the first liquidity is added to its pool, and updates an on-chain random seed on each subsequent swap involving that token. Ethereum afterAddLiqafterSwap 1 6mo PokpegHookA hook that calls `start()` on a configurable token when the first liquidity is added to its pool, and updates an on-chain random seed after each swap involving that token. BSC afterAddLiqafterSwap 1 6mo DeployerTaxHookCharges a configurable buy/sell tax (up to 15% hardcap) on exact-input swaps for a single token pool by returning a BeforeSwapDelta, accumulating fees as ERC6909 claim tokens on the PoolManager and draining them to a developer wallet via drainFees(). Ethereum beforeSwapswapDelta 1 6mo UpegHookA hook that calls `start()` on a configured token when the first liquidity is added to its pool, and updates an on-chain pseudo-random seed on every swap involving that token. BSC afterAddLiqafterSwap 1 6mo UCatHookCustom v4 hook for UniCat — a production v4 hook combined with an ERC-721 NFT collection (888 hard cap) and staking miner on Ethereum mainnet. Hook capabilities: - afterAddLiquidity: one-time initialization trigger that calls token.start() on the first liquidity event involving the UCat token - afterSwap: re-randomizes a global seed used as entropy for on-chain SVG NFT generation when wallets first receive UCat Integrates with: - UCat ERC-20 (0x36608E64D5391bF40486EC81886308a6b8bC06a5) - UC... Ethereum afterAddLiqafterSwap 1 6mo CMDHookUniswap v4 hook for the CMD (Ten Commandments) token that collects buy and sell fees in afterSwap, implements an anti-sniper launch decay, an adaptive sell dampener (volume-based surcharge), and a per-user cooldown surcharge. Fee proceeds are routed to a fee address, a buyback address, and a companion CMDCommandments contract that manages a locked LP position and periodic buy-and-burn cycles. Ethereum beforeInitafterSwapafterSwapDelta 1 6mo EulerSwapEulerSwap implements a custom AMM curve as a Uniswap v4 hook, routing swap funds through Euler lending vaults. It uses BeforeSwapDelta to handle all swap accounting with a parameterized curve (configurable concentration and equilibrium pricing), while blocking direct liquidity provision and donations to prevent unproductive positions. Ethereum beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 6mo UpngHookA minimal Uniswap v4 hook for the uPNG token that calls token.start(poolManager) once via afterInitialize when a pool is created. All other callbacks are stubs with no permission flags set. Ethereum afterInit 1 6mo UpngHookMinimal hook for the uPNG token with only afterInitialize active. On pool initialization, calls token.start(address(poolManager)) to bootstrap the associated token. All swap and liquidity callbacks are disabled stubs. Ethereum afterInit 1 6mo DynamicFeeHookCharges a 25 BPS hook fee on each swap via afterSwapReturnDelta, with a 1.5x multiplier when inter-block price moves exceed 1%. Fees are forwarded to an owner-configured FeeDistributor. Uses per-pool, block-gated price tracking to prevent cross-pool oracle manipulation. Arbitrum beforeSwapafterSwapafterSwapDelta 1 6mo DeltaHookA wave-tax hook that applies zone-aware swap taxes: buys always pay a 3% baseline ETH tax in beforeSwap via BeforeSwapDelta, with ETH rebates paid in afterSwap to buyers in peak (net −3%) or dip (net −6%) price zones relative to the running ATH. Sells are taxed 3% normally or 12% during deep dips, funding the rebate vault. Ethereum beforeInitbeforeSwapafterSwapswapDelta 1 6mo DeltaHookA wave-tax hook that applies dynamic buy and sell taxes based on the token's price relative to a running peak price. Taxes range from 3–12% on sells and up to 6% rebates on buys depending on market zone (peak, mid, dip), with a warmup period, per-block and per-tx rebate caps, and zone-transition cooldowns to limit MEV. Ethereum beforeInitbeforeSwapafterSwapswapDelta 1 6mo NonceV4HookV3Launchpad-controlled hook that gates pool initialization and initial liquidity minting to a trusted launchpad address. Enforces a fixed tick range and opening price, locks principal removal, and disables donations for registered token pools. Ethereum beforeInitbeforeAddLiqbeforeRemoveLiqbeforeDonate 1 6mo DeltaHookA wave-tax hook that applies a 6% fee on sells and taxable buys, and pays a 6% ETH rebate on buys when the price is near or above a tracked all-time high or in a deep-dip zone. Collects fees via beforeSwap return delta and pays rebates from an ETH vault in afterSwap. Ethereum beforeInitbeforeSwapafterSwapswapDelta 1 6mo SwayHookJITJIT-LP hook for token launches with engine-based dynamic pricing (PowerCurve / Momentum / Hybrid). Hook holds 100% of token supply at launch and provides liquidity just-in-time during swaps via beforeSwap/afterSwap callbacks. Designed to look like a standard V4 pool to off-chain quoters. Base beforeAddLiqbeforeRemoveLiqbeforeSwapafterSwap 1 6mo The PoolUniswap v4 dynamic fee hook that captures 25 bps per swap (scaling 1.5× in volatile blocks) and routes 80% of fees back to in-range LPs via poolManager.donate(), with the remaining 20% to treasury. Pairs with an ERC-4626 vault for auto-compounding LP yield. No emissions token. Arbitrum beforeSwapafterSwapafterSwapDelta 1 6mo DeployerTaxHookCharges a configurable per-direction buy/sell tax (up to a 15% hardcap) on exact-input swaps for a single token pool by returning a BeforeSwapDelta. Fees are accrued as ERC6909 claim tokens on the PoolManager and drainable by anyone to a configurable dev wallet. Ethereum beforeSwapswapDelta 1 6mo PAMHookETH-side fee collector for the Perpetual Asteroid Machine token; converts fees to ASTEROID and distributes to PAM holders Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 1 6mo CounterA simple counter hook that increments per-pool counters on beforeSwap, afterSwap, beforeAddLiquidity, and beforeRemoveLiquidity. Each callback only records call counts with no access control, fee logic, or swap modification. Unichain beforeAddLiqbeforeRemoveLiqbeforeSwapafterSwap 1 6mo PunkHookA Uniswap v4 hook for the Punk token that calls start() on the token upon the first liquidity addition and updates an on-chain random seed after each swap involving the token. Ethereum afterAddLiqafterSwap 1 6mo FullRangeLBPStrategy (Octra)The dedicated hook for the wOCT pool, from Octra's April 2026 auction. It uses a full-range position to seed the pool across the whole tick range rather than a concentrated band. Ethereum beforeInit 1 6mo GridHookA grid trading hook that distributes liquidity across evenly-spaced tick ranges for a given pool. Users configure grid parameters and deploy orders; the hook tracks swaps for MEV protection and enforces a per-block maximum tick movement limit, reverting swaps that would cause excessive price impact. Arbitrum afterInitafterAddLiqafterRemoveLiqbeforeSwap+1 1 6mo DeployerTaxHookCharges a configurable buy/sell tax (up to a hardcapped 15%) on exact-input swaps for a single token pool by intercepting swaps via BeforeSwapDelta to reduce effective input. Fees accrue as ERC6909 claim tokens on the PoolManager and can be drained to a designated dev wallet by anyone calling drainFees(). Ethereum beforeSwapswapDelta 1 6mo DeployerTaxHookCharges a configurable buy/sell tax (up to a 15% hardcap) on exact-input swaps for a specific token's ETH pool by returning a BeforeSwapDelta, accruing fees as ERC6909 claim tokens on the PoolManager drainable to a designated dev wallet. Ethereum beforeSwapswapDelta 1 6mo GridHookA grid trading hook that deploys multi-range liquidity positions across configurable tick intervals. Tracks cumulative tick movement per block in afterSwap and reverts swaps that exceed a maximum price impact threshold per block. BSC afterInitafterAddLiqafterRemoveLiqbeforeSwap+1 1 6mo PointsHookAwards ERC20 loyalty points to users who buy a paired token using TOKEN_A through allowlisted routers. In afterSwap, mints points proportional to the TOKEN_A amount spent; non-allowlisted routers can still swap but receive no points. Unichain afterSwap 1 7mo GoldenGateFeeHookRoutes all v4 swaps through configured Uniswap v3 reference pools by absorbing the full input via BeforeSwapReturnDelta, executing the v3 swap inside beforeSwap, deducting a time-varying pulse-based fee retained as ERC20 balance in the hook, and settling net output back to the PoolManager. Arbitrum beforeSwapafterSwapswapDelta 1 7mo ShieldPadRouterA modular Uniswap v4 hook that delegates swap lifecycle callbacks to pluggable security modules via delegatecall. Returns a dynamic LP fee override aggregated from enabled modules, and collects a configurable protocol fee on each swap using afterSwapReturnsDelta. Arbitrum beforeInitbeforeSwapafterSwapafterSwapDelta 1 7mo TrinityHookV8A token-launch hook that maintains a single continuous concentrated liquidity position. On each exact-input swap, it extracts a symmetric fee: buy fees are forwarded to a configurable treasury address, sell fees are burned by transferring to 0xdead. External liquidity additions are permanently blocked; only the hook owner may seed the pool via addLiquidity(). Base beforeAddLiqbeforeSwapswapDelta 1 7mo AngstromL2A Uniswap v4 hook that charges MEV taxes on swaps and JIT liquidity events based on gas priority fees, distributes LP compensation rewards across tick ranges, and collects configurable protocol and creator swap fees. All pools must use native ETH as currency0. Base beforeInitafterAddLiqafterRemoveLiqbeforeSwap+5 1 7mo MoonsendFeeHookEthA Uniswap v4 hook that applies a dynamic LP fee override in `beforeSwap` for pools registered by an owner-controlled factory. Each pool's fee tier is set at registration time from a fixed set of allowed values; unregistered pools receive no override. Ethereum beforeInitbeforeSwap 1 7mo ETIMTaxHookA tax hook for ETIM/ETH swaps that deducts a configurable tax (up to 10%) on buys and sells via beforeSwap. Buy taxes (in ETH) and sell taxes (in ETIM) are held in this contract, with sell taxes split among S6, Foundation, Official, and a burn address. Buys are gated by a governance flag from an external main contract. Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 1 7mo ZA_HookAn owner-controlled liquidity management hook that holds tokens and manages Uniswap v4 positions on behalf of authorized operators. Hook callbacks (afterSwap, afterAddLiquidity, afterRemoveLiquidity) are pure no-ops returning zero deltas; active management is performed via privileged ZA_* functions for minting positions, adding/removing liquidity, and executing swaps through a configured v4 router. BSC afterAddLiqafterRemoveLiqafterSwap 1 7mo MoonpotHookA floor-price defense hook for a TMP/USDC pool. It applies a dynamic sell tax that ramps from a maximum rate near the floor tick down to a base rate as price rises above it, and intercepts and burns excess TMP tokens that would push the price below the protocol floor. Buys are charged a flat base defense tax. Base beforeInitbeforeSwapswapDelta 1 7mo MoonpotHookA price-floor hook for a TMP/USDC pool that applies dynamic sell fees scaled by distance above a configurable floor tick, burns any TMP sold beyond a per-swap maximum, and allows a manager to inject protocol liquidity into the pool. Base beforeInitbeforeSwapswapDelta 1 7mo EulerSwapA Uniswap v4 hook implementing a custom single-sided AMM curve backed by Euler lending vaults. Swaps are executed entirely in beforeSwap by taking input tokens into an Euler vault and withdrawing output tokens from another, using a configurable curve invariant with optional expiration. Arbitrum beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 7mo ClankerHookStaticFeeV2A Clanker protocol hook with configurable per-direction static LP fees (clanker vs paired token direction), dynamically updated on each swap via updateDynamicLPFee. Collects a 20% protocol fee on the non-clanker token per trade using BeforeSwapDelta and AfterSwapDelta, with optional MEV protection modules and pool extensions. Base beforeInitbeforeAddLiqbeforeSwapafterSwap+2 1 7mo V4PoolHookV4PoolHook charges a fixed 1% protocol fee on exact-input swaps by intercepting input tokens via poolManager.take() and returning a BeforeSwapDelta; exact-output swaps are unconditionally blocked. Accumulated fees are claimable by a designated FEE_COLLECTOR role, and liquidity addition is restricted to an lpManager until a CONFIG_ADMIN enables public liquidity. Base beforeInitbeforeAddLiqbeforeSwapswapDelta 1 7mo ZA_HookA hook with no-op afterSwap, afterAddLiquidity, and afterRemoveLiquidity callbacks. Includes owner/authorized-caller controlled functions for minting, adding liquidity to, and withdrawing from Uniswap v4 positions held by the hook contract. BSC afterAddLiqafterRemoveLiqafterSwap 1 7mo ZA_HookAn owner-controlled liquidity management hook that allows authorized callers to rebalance token holdings via swaps, mint LP positions, add liquidity to existing positions, and withdraw funds. The afterSwap, afterAddLiquidity, and afterRemoveLiquidity callbacks are no-ops that do not modify swap or liquidity behavior. BSC afterAddLiqafterRemoveLiqafterSwap 1 7mo Ash HookAshHook collects a configurable protocol fee (default 5%, max 10%) on ETH/ASH pool swaps: an ETH fee on buys is taken in beforeSwap via returnDelta, and an ETH fee on sells is taken in afterSwap, both forwarded to a treasury address. The owner can pause fee collection and update the fee rate and treasury. Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 1 7mo AshHookProtocol fee hook for an ASH/ETH pool that charges a configurable rate (default 5%, max 10%) on ETH input for buys and ETH output for sells, forwarding collected fees to a treasury address via `take()`; the owner can pause fee collection or update the treasury and fee rate. Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 1 7mo ClassicSwapHookA Uniswap v4 hook that wraps a single pool with V2-style full-range liquidity, issuing fungible ERC-20 LP tokens proportional to deposited amounts. Direct liquidity modification is blocked at the hook level; all deposits and withdrawals go through the hook's own deposit/withdraw functions. Arbitrum afterInitbeforeAddLiqbeforeRemoveLiq 1 7mo EulerSwapCustom-curve AMM hook that routes swaps through Euler lending vaults (EVC). Handles the full swap execution in beforeSwap: computes quotes against vault reserves, deposits input tokens into Euler supply vaults, and withdraws output tokens — bypassing standard Uniswap v4 pool liquidity. Blocks external LP positions, donations, and supports optional pool expiration via block.timestamp. Arbitrum beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 7mo StableStableHookDynamic fee hook for stable/stable pools that adjusts LP fees based on price deviation from a configurable reference price. Fees decay exponentially when the pool price is outside the optimal range, incentivizing arbitrage back to peg while charging reduced fees for stabilizing swaps. Ethereum beforeInitbeforeSwap 1 7mo ZA_HookOwner-managed liquidity management hook that allows authorized callers to mint positions, increase liquidity, and withdraw funds from Uniswap v4 positions. The afterSwap, afterAddLiquidity, and afterRemoveLiquidity callbacks are all no-ops that do not alter swap or liquidity behavior. BSC afterAddLiqafterRemoveLiqafterSwap 1 7mo LogCumHookA dynamic fee hook that sets swap fees proportional to cumulative logarithmic price impact with time decay. It tracks directional market imbalance across swaps and charges higher fees when swaps increase imbalance, using a configurable illiquidity metric and min/max fee bounds. Unichain beforeInitafterInitbeforeSwapafterSwap 1