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
3mo FriarVolatility-responsive dynamic LP fee hook using the Liquidity Book volatility-accumulator model. Sets per-swap LP fees based on recent price movement — low base fee in calm markets that surges with volatility and decays over configurable windows. No owner, no upgradeability; all parameters are immutable. Robinhood afterInitbeforeSwap 1 3mo StockPegHookA launch hook for a StockPeg (sPEG) / ETH pool that charges a 3% (300 bps) fee on the ETH side of every swap, routing fees to a treasury address. Restricts pool initialization to a designated bootstrapper and tracks when initial liquidity is added to gate token launch. Robinhood beforeInitafterAddLiqbeforeSwapafterSwap+2 1 3mo Rivers Shared LaunchHook V4Singleton Uniswap v4 hook for Rivers launch pools implementing a phased launchpad lifecycle with band-based bonding curve mechanics. Takes protocol and creator fees on swaps via delta manipulation, dynamically overrides LP fees based on pool phase, and restricts swaps and liquidity to a controller during pre-graduation phases. Robinhood beforeInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+3 1 3mo AMT-1 Canonical Market HookImmutable custom-accounting Uniswap v4 hook for AMT-1 markets. Routes exact-input swaps through deterministic mint and burn pricing without LP liquidity or a secondary pool price. Github: https://github.com/Amt-Protocol/amt-1/ Robinhood beforeInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+1 1 3mo CreatorFeeHookAn immutable custom-accounting hook that charges a fee on every swap in canonical WETH. Fees are split between a creator and a platform, accumulated as PoolManager ERC-6909 claims, and deposited into a fee escrow contract via `settleFees()`. Robinhood beforeInitbeforeSwapafterSwapswapDelta+1 1 3mo WickHookSingle-pool hook with a 0% LP fee that captures a 4% hook fee on each swap (2.25% pot, 0.75% team, 1% staking distributor). Includes a launch guard that restricts buy-side swaps to allowlisted senders until disabled by the owner. Robinhood afterInitbeforeSwapafterSwapafterSwapDelta 1 3mo WickHookUniswap v4 hook for the WICK token that captures a fee on each swap via afterSwapReturnsDelta, splitting proceeds between a prize pot, team wallet, and staking distributor. A configurable launch guard in beforeSwap restricts WICK purchases to an allowlist until deactivated by the owner. Robinhood afterInitbeforeSwapafterSwapafterSwapDelta 1 3mo PNGStrategy HookApplies configurable buy and sell fees on ETH↔strategy-token swaps by intercepting them via BeforeSwapDelta (buy) and AfterSwapDelta (sell), taking fees in ETH via poolManager.take(). Collected fees are split among a strategy contract, an owner recipient, and a holder rewards recipient according to configurable BPS ratios; pool initialization and liquidity addition are restricted to the strategy contract. Robinhood beforeInitafterAddLiqbeforeSwapafterSwap+2 1 3mo RobHookUniswap v4 hook that applies a fixed 3% trade tax on all swaps, collecting fees in the quote asset and minting ERC-6909 claims to an immutable fee recipient. Also checks a 6-hour interval in beforeSwap and calls an external triggerHeist() on the associated token contract when the interval has elapsed. Robinhood beforeInitafterInitbeforeSwapafterSwap+2 1 3mo SharesHookCharges a fixed 2.5% fee on buys and sells in a specific native/token pool, redirecting fees to a configurable recipient. On each swap, updates an on-chain random seed and records volume with a launch controller; triggers token start on first liquidity addition. Robinhood afterAddLiqbeforeSwapafterSwapswapDelta+1 1 3mo HoodsHookSingleton fee hook for hoods.meme pools that charges market-cap-tiered ETH fees (up to 1%) on every swap, splitting proceeds between a platform treasury and a creator via HoodsSplitter. Pools must be registered by the associated factory; sell exactOut swaps are rejected. Robinhood beforeInitbeforeSwapafterSwapswapDelta+1 1 3mo SpiralHookMinimal hook for the $SPIRAL token that calls token.start() on the pool manager when a pool is initialized via afterInitialize. Has no swap, liquidity, fee, or access-control logic; all other hook callbacks are no-op stubs. Ethereum afterInit 1 3mo FUNDFeeHookTakes an immutable 5% fee on the WETH leg of a FUND/WETH pool via BeforeSwapDelta and AfterSwapDelta. Collected WETH is split 25% to a configurable marketing receiver and 75% to an immutable stock rewards controller, redeemable as ERC-20 WETH. Robinhood beforeInitbeforeSwapafterSwapswapDelta+1 1 3mo LendsProtocolHookCharges an owner-configurable fee (up to 5%) on swaps in explicitly enabled pools, collecting it in the quote currency and distributing it proportionally to up to 10 weighted fee recipients via beforeSwap and afterSwap delta adjustments. Robinhood beforeSwapafterSwapswapDeltaafterSwapDelta 1 3mo Rob0HookA bonding curve hook for Robinhood Chain that handles all swap accounting in beforeSwap, minting and burning Rob0Token against an ETH price curve. The pool holds no liquidity; the hook acts as the sole counterparty. Swaps are restricted to trusted routers and require an ABI-encoded swapper address in hookData. Robinhood beforeInitbeforeAddLiqbeforeSwapswapDelta 1 3mo SpcxStrategyHookA fee-taking hook for a single ETH/SPCXSTR pool that charges a decaying buy tax (95%→10% at ~1%/min via block.timestamp) and a flat 10% sell tax via afterSwapReturnsDelta. Token-denominated fees are converted to ETH mid-swap via a nested pool swap; ETH shortfalls are deferred as ERC-6909 claims. Collected ETH is split 90/10 between a mutable controller address and a dev address. Exact-output swaps are unconditionally reverted. Robinhood beforeInitafterAddLiqafterSwapafterSwapDelta 1 3mo GeysirHookA minimal Uniswap v4 hook for the $GEYSIR token that calls token.start() on pool initialization to activate the token. Only the afterInitialize flag is set; it has no swap or liquidity hooks and does not modify swap behavior in any way. Robinhood afterInit 1 3mo BangFeeHookA tax hook for an ETH/index-token pool that charges a fixed fee (up to 4%) on every swap by diverting ETH to a treasury address. ETH-specified swaps are taxed in beforeSwap via a BeforeSwapDelta; index-token-specified swaps are taxed in afterSwap via an AfterSwapDelta. Robinhood beforeInitbeforeSwapafterSwapswapDelta+1 1 3mo StrategyHookA multi-strategy hook that collects a time-decaying swap fee via afterSwapReturnsDelta, splitting proceeds between an ops wallet and fee collector. Pools are owner-initialized and mapped to configurable strategies; exact-output swaps revert. Robinhood beforeInitafterAddLiqafterRemoveLiqafterSwap+1 1 3mo LiquidityGateRestricts liquidity operations so only an immutable locker address can add liquidity to the pool, and permanently prevents any real liquidity removal (liquidityDelta < 0) by any position owner, locking principal forever while still allowing fee collection via zero-delta calls. Robinhood beforeAddLiqbeforeRemoveLiq 1 3mo DooV4BuyHookAn afterSwap hook for a Doo token pool that records buy events to an external DooPowerRegistry. When hookData containing (buyer address, USDT principal, Doo amount) is provided, it logs the purchase via the registry; swaps with empty or invalid hookData emit an ambiguity event and complete normally without reverting. BSC afterSwap 1 3mo GateFeeGraduateHookA shared Uniswap v4 hook that gates LP access to a single launcher-controlled position, charges a static 1% fee always collected in ETH via return deltas (beforeSwap for buy-exactInput, afterSwap for other cases), and auto-graduates a pool on-chain once cumulative net ETH bought in crosses a 4 ETH threshold. Robinhood beforeInitbeforeAddLiqbeforeSwapafterSwap+2 1 3mo CashPerpHookV2A fee-collection hook that charges a configurable basis-point fee (max 20%) on registered pools, always denominated in the quote currency (the non-strategy-token side of the pool). Fees are minted as ERC-6909 claims directly to a strategy vault, with per-address fee exemptions for keeper buyback routers. Robinhood beforeSwapafterSwapswapDeltaafterSwapDelta 1 3mo flUSDCHooksA custom constant-sum hook implementing 1:1 swaps between USDC and flUSDC. In beforeSwap, the hook takes the full input, converts it via flUSDC deposit or withdraw, and settles the output back to the PoolManager. Direct liquidity provision is blocked. Unichain beforeInitbeforeAddLiqbeforeSwapswapDelta 1 3mo flETHHooksA custom-curve hook for ETH/flETH pools implementing a 1:1 constant-sum swap: it takes the full input from the PoolManager, converts it via flETH deposit/withdraw, and settles the output back — bypassing concentrated liquidity math entirely. Direct liquidity addition is blocked. Unichain beforeInitbeforeAddLiqbeforeSwapswapDelta 1 3mo SaturnOmnichainV4HookMinimal hook for the Saturn Omnichain project. Stores the initial tick and a pool-initialized flag when `initializePools()` delegates to an external `ISaturnOmnichainLiquidityBootstrapper` contract; the `afterInitialize` callback itself is a no-op that only returns its selector. BSC afterInit 1 3mo SaturnOmnichainV4HookA minimal hook for the Saturn Omnichain project with an afterInitialize no-op callback. Pool initialization (including storing initialTick and poolInitialized) is performed via the initializePool() external function. All hook callbacks are no-op stubs with no swap, liquidity, or fee customization logic. BSC afterInit 1 3mo VeyraHookAn ERC-20/NFT hybrid token backed by a single Uniswap v4 pool. Each whole token held automatically mints a corresponding NFT; LP fees are periodically harvested from the pool and distributed pro-rata to NFT holders. The afterSwap hook callback performs no logic and does not alter swap behavior. Robinhood afterSwap 1 3mo SaturnOmnichainV4HookA minimal hook with afterInitialize permission (no-op callback) and a convenience initializePool() function that deploys a fixed ETH/TOKEN pool at 0.3% fee and 1:1 initial price. Records initial tick and pool state in contract storage. No swap, liquidity, or donation logic is active. Ethereum afterInit 1 3mo SaturnOmnichainV4HookMinimal hook for the Saturn Omnichain project; the afterInitialize callback itself is a no-op. A separate initializePool() function on the contract records the initial pool tick and sets a poolInitialized flag. Has no effect on swaps, liquidity operations, or fees. Base afterInit 1 3mo SaturnOmnichainV4HookA minimal hook for the Saturn Omnichain project that records the initial tick and pool initialization state in its public initializePool() function; the afterInitialize callback is a no-op. All other hook callbacks are no-ops; the hook has no swap logic or access control. BSC afterInit 1 3mo FWATokenHookETH/FWAToken pool hook that charges a flat 1% fee on all swaps, routing proceeds to an owner-set fee wallet (buys: fee taken in FWAToken and swapped to ETH; sells: fee taken in ETH). Pool initialization is gated on the token's `launching()` flag; buy-side swaps revert for unauthorized callers until the owner enables external trading via `externalBuysEnabled`. Ethereum beforeInitafterAddLiqafterSwapafterSwapDelta 1 3mo SaturnOmnichainV4HookA minimal hook that only uses afterInitialize (as a no-op stub) to satisfy the interface. Provides an initializePool() helper that deploys an ETH/token pool with fixed parameters (0.3% fee, tick spacing 60). Does not alter swap or liquidity behavior. Ethereum afterInit 1 3mo SaturnOmnichainV4HookA minimal hook for the Saturn Omnichain project that records the initial tick in its initializePool() function; the afterInitialize callback is a no-op. Has no swap, liquidity, or fee logic — it is purely a pool initialization helper with no effect on swap execution. BSC afterInit 1 3mo FairLaunchHookA fair-launch bonding curve hook that bypasses the Uniswap v4 CL AMM via `beforeSwapReturnsDelta`. ETH↔token swaps execute against a custom curve reserve with configurable buy/sell fees and a floor reserve. Liquidity addition is permanently forbidden. Each swap requires `SwapHookData` (trader, recipient, minOut, deadline) in `hookData`; only a designated router address may trigger swaps. Robinhood beforeInitbeforeAddLiqbeforeSwapswapDelta 1 3mo MarketMakerHookZeroSeedProtocol-owned market maker hook for a single token/USDC pair that maintains a fixed ask ladder above spot and trailing bid structures below. Charges a flat fee (split between deployer and protocol) on all swaps plus a piecewise-linear zone tax on sells (burned), with LP fees permanently overridden to 0 via beforeSwap delta. No admin keys, no upgrade path. Robinhood beforeInitbeforeAddLiqbeforeSwapafterSwap+2 1 3mo SazareHookV2A bonding-curve AMM hook for SZR/WETH that uses custom accounting (BeforeSwapDelta) to route all swaps through an internal issuance curve with a WETH-backed floor price and protocol fees. Supports only exact-input swaps; external liquidity provision is forbidden. Robinhood beforeInitbeforeAddLiqbeforeSwapswapDelta 1 3mo MarketMakerHookA protocol-owned automated market maker hook that places structured ask ladders above spot and recycles captured USDC into bid positions. Charges a flat fee on all swaps and a depth-based zone tax on sells, using beforeSwap/afterSwap return deltas to skim fees in-flight. No admin, no upgrade path, and no keeper dependency. Robinhood beforeInitbeforeAddLiqbeforeSwapafterSwap+2 1 3mo UV4FeeDeltaHookFee-skimming hook that collects 0.2% (configurable up to 10%) from swaps involving a designated feeCurrency token, using BeforeSwapDelta and AfterSwapDelta to mint ERC-6909 claims on PoolManager. Owner can withdraw accrued fees; whitelisted aggregators and simulation quotes (tx.origin == address(0)) bypass the fee. Owner can pause all swaps. BSC beforeSwapafterSwapswapDeltaafterSwapDelta 1 3mo UStockAn ERC-20 token (uSTOCK) that is also its own Uniswap v4 hook for its uSTOCK/ETH pool. Charges a fixed 3% fee on every swap via afterSwapReturnsDelta, accruing fees as ERC-6909 claims inside the PoolManager. Anyone may call convert() once per 5 minutes to redeem those fees, swap them into a pseudo-randomly chosen tokenized stock from a fixed basket, and distribute the proceeds pro-rata to holders with ≥10,000 uSTOCK. Robinhood afterSwapafterSwapDelta 1 3mo CoilHookAn ERC-20 launchpad token whose beforeSwap hook skims a fixed percentage fee (configurable up to 5%) from every swap using the beforeSwapReturnsDelta pattern, then distributes it among a protocol wallet, token holders via a MasterChef-style dividend accumulator, and a platform buy-and-burn treasury. Ownership is renounced after pool seeding, making the fee split immutable. Robinhood beforeSwapswapDelta 1 3mo RobinArrowERC-20 token (ARROW, 100,000 fixed supply) that doubles as a Uniswap v4 hook for the official ARROW/WETH pool. Collects swap fees in ARROW (1% on buys, 2% on sells), distributing 80% pro-rata to all eligible holders and 20% to the current "Robin Arrow" holder — a gamified title earned by qualifying buys (≥100 ARROW net) and immediately lost on any sell. Robinhood beforeInitbeforeSwapafterSwapswapDelta+1 1 3mo CurveHookImplements a constant-product bonding curve (pump.fun-style) inside a Uniswap v4 pool using beforeSwap return deltas and ERC-6909 claims for pre-graduation trading; once accumulated ETH reaches a configurable threshold, graduates by seeding full-range liquidity and transitioning to standard AMM behavior. Arbitrum beforeSwapswapDelta 1 3mo RobFeeHookFixed 2% swap fee on the native-ETH side of the pool, both directions, distributed instantly to four fixed recipients. Fee rate is a constant; only the distribution split is owner-adjustable. Non-upgradeable, no pool-creation or liquidity restrictions Robinhood beforeSwapafterSwapswapDeltaafterSwapDelta 1 3mo MemeFolioTaxHookImmutable 3% native-ETH swap tax hook for a single ETH/token pool. Tax is taken in beforeSwap (on buys) and afterSwap (on sells) via BeforeSwapDelta/AfterSwapDelta, stored as PoolManager claims, and permissionlessly distributed 2:1 to immutable buyback and treasury wallets. Robinhood beforeInitbeforeSwapafterSwapswapDelta+1 1 3mo EulerSwapEulerSwap is a Uniswap v4 hook implementing a custom AMM curve backed by Euler lending vaults. It takes full control of swaps via beforeSwapReturnsDelta, depositing input tokens into and withdrawing output tokens from Euler vaults, with configurable fees and an optional timestamp-based expiration that halts swaps after a set deadline. Ethereum beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 3mo QuiverHookA fair-launch ERC-20/ERC-721 hybrid token (QUIVER, 4663 supply) on Robinhood Chain that seeds a single Uniswap v4 ETH/QUIVER pool with its entire supply and distributes pool swap fees to NFT holders pro-rata. The afterSwap hook callback is a no-op; token/NFT synchronization runs via ERC-20 transfer hooks. Robinhood afterSwap 1 3mo PrismStocksHookA DN404-style ERC20/NFT hybrid token acting as a Uniswap v4 hook. Swap fees are collected from the hook's own liquidity position and forwarded to PrismStockVault, where a keeper converts them into SPY stock token dividends distributed to NFT holders proportional to their token balance. Robinhood afterSwap 1 4mo P0nziHookA Uniswap v4 hook paired with a deflationary ERC-20 (p0nzi) that permanently burns a percentage of each swap output: 1% on ETH→p0nzi buys via direct incineration, and 5% on p0nzi→ETH sells via a nested internal buyback swap that converts the fee ETH back to p0nzi and incinerates it. Robinhood beforeInitbeforeSwapafterSwapafterSwapDelta 1 4mo OneSidedWethLaunchHookA token launch hook that deploys a new ERC-20 token, initializes a WETH-paired Uniswap v4 pool, and mints a one-sided (token-only) liquidity position locked via V4PositionLocker. Direct liquidity additions are blocked except through the hook's own createLaunch flow. Robinhood beforeInitafterInitbeforeAddLiq 1