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 GridHookGridHook imposes a 3% sell tax on GRID→ETH swaps by claiming a portion of the ETH output via afterSwapReturnsDelta. Accumulated ETH is held in the contract and can be used by any caller to trigger a buyback-and-burn of GRID tokens through the same pool. Ethereum afterSwapafterSwapDelta 1 6mo GlowERC-20 token (GLOW) combined with a Uniswap v4 hook that applies a 3% sell tax on ETH output, splitting proceeds 50/50 between burning ETH to the dead address and distributing ETH dividends to non-excluded token holders. Liquidity removal is permanently blocked via an always-reverting beforeRemoveLiquidity. Only the deployer (via tx.origin check) may add liquidity. Ethereum beforeInitbeforeAddLiqafterAddLiqbeforeRemoveLiq+3 1 6mo PlumbHookA bonding curve hook that intercepts all swaps to execute buy/sell operations on its own ERC-20 token (PlumbToken) via a custom price curve with a ratcheting ETH floor price backstop. External liquidity additions are disabled. Includes a team-controlled graduation mechanism that migrates accumulated ETH liquidity to a full-range Uniswap v3 position. Ethereum beforeInitbeforeAddLiqbeforeSwapswapDelta 1 6mo SummerHookUniswap v4 hook for the Summer protocol that gates pool initialization to the Launchpad, enforces full-range LP positions, and charges a 0.25% protocol fee on each swap's unspecified-currency side via afterSwapReturnsDelta. Also runs a 4-week SUMMER token farming program with vesting for LP stakers and a Founders Pool for Genesis Badge holders. Ethereum beforeInitbeforeAddLiqafterSwapafterSwapDelta 1 6mo HookControllerV2Controls LP fees dynamically (30 bps normal, 300 bps in defensive mode triggered by liquidation cascades), gates new short positions via a pause flag that any caller can toggle by calling the permissionless updateHookState function (which has no access control), and maintains a per-pool tick observation ring buffer for TWAP computation. Ethereum afterInitbeforeAddLiqbeforeSwapafterSwap 1 6mo DopplerA time-bounded token launch hook implementing a Dutch auction-style mechanism via rebalancing liquidity slugs. It enforces a trading window (startingTime to endingTime), dynamically adjusts LP fees, tracks total proceeds against a minimum threshold, and supports a migration function to transfer assets after a successful or failed sale. Ethereum beforeInitafterInitbeforeAddLiqbeforeSwap+2 1 6mo UniswapV4HookA Uniswap v4 hook that collects a 1.2% fee on swaps, accumulating ETH fees into a burn pot for periodic token buyback-and-burn operations. Liquidity additions are permanently blocked after the initial deposit, and sells can be restricted to a deployer-controlled allowlist once an unrestricted `erase()` function is called by any address. Ethereum beforeInitbeforeAddLiqbeforeSwapafterSwap+2 1 6mo ProofOfTimeHookUniswap v4 hook that rewards liquidity providers with time-weighted POT token emissions, enforces anti-whale buy caps during a 10-minute launch window, and applies a decaying buy/sell tax (35% to 2% over the first hour) collected in the non-protected currency and sent to a configurable treasury. Ethereum afterInitafterAddLiqafterRemoveLiqbeforeSwap+3 1 6mo EPOWZeroFeeHookA Uniswap v4 hook that overrides LP fees to zero for pools containing the EPOW token. Only dynamic-fee pools with EPOW as one of the pool's currencies can be initialized; the hook enforces this on both pool creation and each swap. Ethereum afterInitbeforeSwap 1 6mo MirrorA tax hook for ETH-paired pools that deducts a 10% fee (1000 BPS) on both buys and sells, forwarding proceeds to a hardcoded treasury address. Also maintains a bonding registry that links consecutive swappers via a reflection/echo system, emitting events when bonded wallets trade. Ethereum afterInitbeforeSwapafterSwapswapDelta+1 1 6mo SummerPreviewHookA teaser hook that permits pool initialization so indexers can observe the SUMMER token's preview pool, while permanently reverting all liquidity additions to keep the pool at zero liquidity. Ethereum beforeInitbeforeAddLiq 1 6mo HTOHookIntegrated presale and Uniswap v4 hook for the HTO token. Manages an ETH presale (100 ETH hard cap), adds launch liquidity with the LP NFT minted to the deployer address, and collects a fixed 1% trade tax on every swap that is automatically used to buy back and burn HTO tokens when price moves 30% from the last buyback price. Ethereum beforeInitafterInitbeforeAddLiqbeforeSwap+3 1 6mo AGIFeeHookUniswap v4 hook that taxes swaps involving the AGI token, collecting a configurable sell fee (via BeforeSwapDelta in beforeSwap) and buy fee (via afterSwapReturnsDelta in afterSwap), both denominated in AGI and forwarded to a configurable fee recipient. Fees are capped at 10% per side and adjustable by an owner. Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 1 6mo PROVERSelf-hook ERC20 token (21M hard cap) that seeds its own ETH/PROVER Uniswap v4 pool with 18.9M tokens as single-sided LP. Levies a 1% hook-side fee on ETH-leg swaps via BeforeSwapDelta/afterSwapReturnsDelta. Includes keccak256 proof-of-work mining distributing tokens from a 2.1M reserve. Ethereum beforeInitbeforeSwapafterSwapswapDelta+1 1 6mo SanctumHookApplies a 2% skim fee on SANCTUM token buys (USDC→SANCTUM) and tiered sell fees (1–6%) based on the seller's holding duration, routing 90% to a reserve vault and 10% to a team wallet. Sell fees: same-block 6%, held <7 days 4%, held <14 days 3%, held ≥14 days 1%. Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 1 6mo TaxHookCharges a fixed 3% (300 bps) tax on every ETH/TOKEN pool swap by taking the tax amount from the pool manager and forwarding it to a hardcoded treasury address. Tax is applied on buys (via beforeSwap delta) and sells (via afterSwap delta). Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 1 6mo X3DHookCaptures fees on X3D/ETH swaps in beforeSwap using BeforeSwapDelta: 20% flat for the first 5 minutes post-launch, then up to 1.25% (owner-configurable). Fees split 45/45/10 to a pot vault, dividend tracker, and treasury. Triggers round settlement on each swap and stores ETH input in transient storage for automatic key grants by the X3D token contract. Ethereum beforeSwapswapDelta 1 6mo TombHookA Uniswap v4 hook for the canonical TOMB/ETH pool that permanently burns TOMB on every swap via an asymmetric fee: 1% on buys (withheld directly from TOMB output) and 5% on sells (used to fund a nested ETH→TOMB buyback, with the purchased TOMB then burned). Only exact-input swaps are supported. Ethereum beforeInitbeforeSwapafterSwapafterSwapDelta 1 6mo RigHookProof-of-liquidity mining hook for a single ETH/RIG pool. Applies buy (2%) and sell (5%) swap taxes via BeforeSwapDelta; buy tax funds ETH rewards, sell tax is 50% burned and 50% swapped back to ETH via an internal poolManager.swap() call. Rewards are distributed per 720-second epoch to LPs weighted by capital depth, range tightness, and position age. Ethereum beforeInitbeforeAddLiqafterAddLiqbeforeRemoveLiq+4 1 6mo UAPHookA deflationary hook that charges asymmetric fees on UAP/ETH swaps (1% on buys, 5% on sells) and permanently burns UAP. On buys, UAP output is directly skimmed and burned; on sells, ETH output funds a nested buyback swap and the resulting UAP is burned. Ethereum beforeInitbeforeSwapafterSwapafterSwapDelta 1 6mo PosHookA Uniswap v4 hook that charges a fixed 1% ETH fee on every swap in ETH/TOKEN pools. Uses beforeSwap and afterSwap return deltas to collect the fee from the ETH side of each swap, covering all four swap directions (exactIn/exactOut × ETH-input/ETH-output). Accumulated fees are held in the hook contract and withdrawable by an immutable fee recipient. Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 1 6mo SqueezeCurveMainnetTaxHookAn ERC-20 token ("squeeze curve" / "sc") combined with a Uniswap v4 hook that collects a 2% swap tax on every trade. In afterSwap, the hook takes the tax from the unspecified-token side of the swap via poolManager.take() and sends it to an immutable taxRecipient address, returning the fee amount as an afterSwap delta. Ethereum afterSwapafterSwapDelta 1 6mo TransparentHookA Uniswap v4 hook that implements phased buy and sell fees (higher opening rates, then baseline rates), routing buy-fee tokens into a seller inventory that is automatically sold via nested swaps into the pool before each user sell, with ETH proceeds forwarded to a collector address. Ethereum beforeInitbeforeSwapafterSwapswapDelta+1 1 6mo UniswapV4HookBurns 1.7% of currency1 on every swap via pool manager take and token burn calls. Restricts liquidity addition to a single initial deposit per token, and optionally blocks sell swaps (currency1 to currency0) for addresses not on the deployer-managed allowlist when the timeBased flag is enabled for a token. Ethereum beforeInitbeforeAddLiqbeforeSwapafterSwap+2 1 6mo LuckyHookA lottery hook that taxes 5% of all token→ETH sells and accumulates proceeds in an on-chain jackpot. Every 20 sells, a pseudo-random winner is selected from the last 50 buyers and receives the entire jackpot in ETH via poolManager.take(). Ethereum afterSwapafterSwapDelta 1 6mo PumpFeeHookA market-cap-tiered fee hook for launcher pools that applies a dynamic LP fee override and splits additional creator and protocol fees on each swap's input currency based on the token's current spot-price-derived market cap tier. Ethereum afterInitbeforeSwapafterSwapswapDelta+1 1 6mo FortuneCookieHookA Uniswap v4 hook that runs a per-epoch lottery: after each swap it issues tickets to the swapper (via tx.origin) proportional to ETH trading volume and adds a configurable tax to an ETH prize pot. At epoch end, anyone can trigger a Chainlink VRF draw to randomly select a winning ticket holder who receives the pot. Ethereum beforeInitafterSwap 1 6mo LendingHookV2A Uniswap v4 hook implementing a range-aware lending AMM (lo0p protocol) that seeds the pool with single-sided LOOP token liquidity across multiple price bands, skims a fixed 1% fee on all swaps via BeforeSwapDelta/AfterSwapDelta, and enforces a same-block liquidation lockout. Supports borrow, repay, and liquidation operations tied to concentrated liquidity bands. Ethereum beforeInitafterInitbeforeAddLiqbeforeRemoveLiq+4 1 6mo MRPHookCollects a 3% tax on ETH-denominated exact-input swaps by intercepting both beforeSwap and afterSwap deltas, accumulating the tax as ERC-6909 native-ETH claims, and distributing the collected ETH to a token mine distributor. Also advances a rolling per-swap entropy seed using block randomness to support downstream randomized minting. Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 1 6mo TokenHookAn ERC20 token that doubles as a Uniswap v4 hook. Mints a fixed supply to a specified address on deployment. All hook callbacks are no-ops returning the required selectors without modifying swap behavior. Ethereum afterInitbeforeSwapafterSwap 1 6mo SanctumHookFee-skimming hook for a SANCTUM/USDC pool. Takes a 2% buy fee and a tiered sell fee (1–6% based on how long the seller has held SANCTUM, via an on-chain clock), routing proceeds 90% to a vault and 10% to a team wallet. Both buy and sell skims are implemented via BeforeSwapDelta/afterSwapReturnDelta. Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 1 6mo LotoHookA lottery hook that skims a 0.5% fee from each swap's output side into an epoch-based pot. At the end of each epoch (~7200 blocks), a winner is selected via sqrt-weighted lottery based on fee contributions, receiving 80% of the ETH pot; 10% rolls over and 10% is donated to LPs. Accumulated LOTO tokens collected as fees are burned at draw time. Ethereum afterSwapafterSwapDelta 1 6mo HookPrices swaps on an exponential bonding curve (K × (1 - e^(-eth/S))) instead of AMM, charging a dual-phase tax — 0.2% with 1 ETH buy cap in Phase 1, 0.5% uncapped in Phase 2. Locked taxes auto-release as rewards to staked NFT holders when circulating supply drops below target. Uses beforeSwapReturnDelta for custom delta accounting and blocks all LP additions via beforeAddLiquidity. Ethereum afterInitbeforeAddLiqbeforeSwapafterSwap+1 1 6mo CAULDRONCAULDRON is an ERC20 token and Uniswap v4 hook that applies a hardcoded 3% flat tax on ETH in buy swaps (via beforeSwap) and ETH out in sell swaps (via afterSwap), forwarding collected ETH to a fixed TAX_ADMIN address. Ownership is renounced at deployment. Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 1 6mo TaoBankV4HookA bonding-curve AMM hook for the TBANK token that replaces standard Uniswap v4 swap execution with custom buy/sell logic against an ETH-backed floor-price curve. Liquidity provision is disabled, and the team can trigger graduation to a Uniswap v3 pool, permanently disabling further swaps through this hook. Ethereum beforeInitbeforeAddLiqbeforeSwapswapDelta 1 6mo RecoilHookA fully custom AMM hook that replaces pool swap logic entirely. Handles ETH↔token swaps via a custom bonding curve (RecoilCurve) with inventory-based pricing, auto-LP provisioning, protocol fees, and recoil/afterburn credit mechanics. Trading must be activated by a designated launch controller. Ethereum beforeSwapswapDelta 1 6mo RockTestHookA fee-collecting hook for the PETROCK token that takes configurable buy/sell fees in native ETH and routes them to a fee wallet via pool delta mechanisms. Emits a randomized on-chain RockSignal message on every swap and triggers rock token pool initialization on first liquidity add. Ethereum afterAddLiqbeforeSwapafterSwapswapDelta+1 1 6mo TaxHookCollects a phased fee on every swap involving the configured token/WETH pool: 20% for the first 50 blocks after trading is enabled, 5% for blocks 51–300, then 3% thereafter. Fees are sent directly to a configurable fee wallet via the afterSwap return delta; trading must be explicitly enabled by the owner. Ethereum afterSwapafterSwapDelta 1 6mo AlphaHookA floor-backed bonding curve hook that replaces standard Uniswap v4 swaps with a custom buy/sell mechanism using an ETH reserve. Buys mint ALPHA tokens against the curve; sells burn them with a ratcheting ETH floor price guarantee. The team can migrate all liquidity to a Uniswap v3 pool upon graduation. Ethereum beforeInitbeforeAddLiqbeforeSwapswapDelta 1 6mo CovenA hook and ERC20 token (COVEP) that collects a 10% tax (1000 bps) on ETH-paired buys and sells, taking the tax from the pool and forwarding it to a hardcoded treasury address. It also tracks "ritual chains" — consecutive sequences of 13 unique buyers each spending ≥0.5 ETH — sealing a coven on completion; a sell by a chain member resets the chain. Ethereum afterRemoveLiqbeforeSwapafterSwapswapDelta+1 1 6mo UniPerpsA gamified ERC20 token hook that applies a 10% ETH tax on both buys and sells via BeforeSwapDelta/AfterSwapDelta, forwarding taxes to a fixed treasury. Sellers become a "corpse" for 100 blocks; the next buyer within that window "raises" the corpse, otherwise it expires. Ethereum beforeSwapafterSwapbeforeDonateswapDelta+1 1 6mo V4LCA Uniswap v4 hook that levies a fixed 1% ETH tax on every ETH/token swap: 1% of ETH input is taken before buys (ETH→token) and 1% of ETH output is taken after sells (token→ETH), forwarding the tax to a hardcoded TAX_ADMIN address. The contract also deploys the V4locity (V4LC) ERC-20 token and renounces ownership at construction. Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 1 6mo HaloHookA swap tax hook that deducts 2% of the ETH (currency0) side of every swap and forwards the proceeds to a configurable reflection vault. The tax applies to both buys (ETH in) and sells (ETH out) via afterSwapReturnsDelta. Ethereum beforeInitbeforeSwapafterSwapafterSwapDelta 1 6mo UniFORGETax hook for ETH/token pools that deducts a 10% fee on ETH buys (via beforeSwap delta) and sells (via afterSwap delta), forwarding taxes to a hardcoded treasury address. Buyers spending ≥0.1 ETH earn "shards" that can be forged into tiered badges (bronze/silver/gold/diamond) via an on-chain forging mechanic. Ethereum beforeAddLiqbeforeSwapafterSwapswapDelta+1 1 6mo SqueeezeCurveTestHookAn ERC-20 token contract that doubles as a Uniswap v4 afterSwap hook; the hook callback emits a SwapObserved event recording the sender and token total supply. Users can mint tokens by paying a fixed ETH fee per unit, up to a maximum mint count of 50,000. Ethereum afterSwap 1 6mo GBYV4HookA gamified tax hook that applies dynamic randomized buy (1–8%) and sell (3–12%) taxes on each swap. Tax proceeds fund a round reward pool and a buyback reserve. Large buys above a USD threshold qualify for reward rounds; eligible holders receive token distributions when rounds finalize. A separate mechanism swaps reserve tokens for WETH and burns repurchased tokens. Ethereum beforeSwapafterSwapswapDeltaafterSwapDelta 1 6mo RippleBurnHookCollects a 3% tax on every exact-input swap in a single designated pool, routing 30% to a dev address and holding the remainder in the hook. Burns 10% of the hook's RBURN token balance and starts a 20-swap celebration window when cumulative quote-currency volume reaches doubling milestones. Ethereum beforeSwapafterSwapswapDelta 1 6mo TaxHookA hook that applies dynamic LP fee overrides based on buy/sell direction via a pluggable external IAntiBotModule. In beforeSwap it queries the module for a fee (falling back to tx.origin if no hookData is provided), and in afterSwap it records the trade in the module. The owner can update the anti-bot module address at any time. Ethereum beforeSwapafterSwap 1 6mo AvaHookTracks sell-side tax accrual (default 3%, owner-adjustable up to 10%) on an ETH/AVA Uniswap v4 pool via afterSwap; increments a cumulative counter and emits an event per AVA-sell, but does not transfer or collect any tokens. Ethereum afterSwap 1 6mo LendingHookV3A Uniswap v4 hook implementing a range-aware lending AMM. It seeds the pool with single-sided liquidity across discrete tick bands and charges a 1% fee on all swaps (buy fees via BeforeSwapDelta in beforeSwap, sell fees via afterSwap delta). Also supports ETH-backed borrowing with band-specific liquidation that recycles collateral back as pool liquidity. Ethereum beforeInitafterInitbeforeAddLiqbeforeRemoveLiq+4 1