Every Uniswap v4 hook, live
Every hook attached to at least one Uniswap v4 pool, graded and explained in plain English, with the pools that use it.
AgeHookChainPermissionsPools
5mo
0xe198…8044Runs code on every swap · Can take tokens from swaps
Ethereum
afterSwapafterSwapDelta
2
5mo
FlywheelV4HookA buyback-and-burn hook that collects a 1.2% fee on every swap — ETH on buys into a burn pot, tokens on sells queued for burning — and periodically executes autonomous buybacks by swapping accumulated ETH for the pool token and burning the proceeds.
Ethereum
beforeInitbeforeAddLiqbeforeSwapafterSwap+2
2
5mo
HaloHookRuns code on every swap · Can take tokens from swaps · Gates who can add liquidity · Runs at pool creation
Ethereum
beforeInitbeforeAddLiqbeforeSwapswapDelta
2
5mo
0x21de…e8ccRuns code on every swap · Can take tokens from swaps · Gates who can add liquidity · Runs at pool creation
Ethereum
beforeInitbeforeAddLiqbeforeSwapafterSwap+2
2
5mo
UniswapV4HookA Uniswap v4 hook that extracts a 1% fee from every buy (in native ETH) and sell (in tokens), accumulating ETH into a burn pot used for periodic on-chain buyback-and-burn swaps; blocks exact-output swaps and sells in the same block as a buyback, and includes an allowlist in afterSwap that can selectively prevent sell-side swaps; the restriction can be enabled by any caller via compress(), while only the deployer can disable it and control which addresses are allowlisted.
Ethereum
beforeInitbeforeAddLiqbeforeSwapafterSwap+2
2
5mo
0xdec9…e8ccRuns code on every swap · Can take tokens from swaps · Gates who can add liquidity · Runs at pool creation
Ethereum
beforeInitbeforeAddLiqbeforeSwapafterSwap+2
2
5mo
0x1254…28ccRuns code on every swap · Can take tokens from swaps · Gates who can add liquidity · Runs at pool creation
Ethereum
beforeInitbeforeAddLiqbeforeSwapafterSwap+2
2
5mo
UniswapV4HookA buy/sell hook deducting a 4% fee per swap: ETH fees from buys accumulate in a burn pot for buyback-and-burn via the pool; token fees from sells queue for burning. Pool init and liquidity addition are one-time per token; exact-output swaps always revert. Sells can be gated by an admin allowlist (timeBased/hasValue): any address can activate the restriction per token via pitchWC(), after which only deployer-allowlisted addresses can sell, and only the deployer can deactivate it.
Ethereum
beforeInitbeforeAddLiqbeforeSwapafterSwap+2
2
5mo
0xe3bd…c0ccRuns code on every swap · Can take tokens from swaps
Ethereum
beforeSwapafterSwapswapDeltaafterSwapDelta
2
5mo
0x8f3c…4088Runs code on every swap · Can take tokens from swaps
Ethereum
beforeSwapswapDelta
2
5mo
UniswapV4HookA Uniswap v4 hook with a 1.2% fee on buys and sells. Buy fees accumulate ETH in a burn pot for buyback-and-burn every 20 swaps; sell fees queue tokens for burning. Sells are blocked in the same block as a buyback. Exact-output swaps always revert. Only one liquidity addition is permitted per token. Additionally, afterSwap has an allowlist: once activated by any caller via superTokens(), sells are blocked for all addresses not pre-approved by the deployer.
Ethereum
beforeInitbeforeAddLiqbeforeSwapafterSwap+2
2
5mo
UniswapV4HookHook that charges a 1.7% fee on each swap: buy-side fees accumulate in an ETH pot for periodic buyback-and-burn (triggered every 20 swaps), while sell-side token fees are immediately queued for burning. Liquidity addition is permanently restricted to one deposit, and exact-output swaps always revert. When the token's `timeBased` flag is set, sell-side swaps are additionally restricted to an owner-approved allowlist (the `hasValue` mapping), reverting for any seller not on the list.
Ethereum
beforeInitbeforeAddLiqbeforeSwapafterSwap+2
2
5mo
UniswapV4HookA Uniswap v4 hook that enforces one-time pool initialization and allows only one liquidity addition per token (subsequent additions revert); LP funds are not trapped, as liquidity removal proceeds through standard Uniswap v4 mechanics and LPs can remove their positions freely. In afterSwap, once the permissionless robot() function has been called for a token, non-zeroForOne (sell-side) swaps revert for any address not in the deployer-controlled allowlist, while buys remain unrestricted.
Ethereum
beforeInitbeforeAddLiqafterSwap
2
5mo
UniswapV4HookA burn-and-buyback hook that charges a 2.2% fee on buys (ETH routed to a reserve for periodic buybacks) and burns 2.2% of tokens on sells. Liquidity additions are restricted to one initial deposit. Contains a hidden allowlist mechanism in afterSwap that can selectively block sells from non-allowlisted addresses when activated by any caller via superposition() (allowlist membership itself is controlled by the deployer).
Ethereum
beforeInitbeforeAddLiqbeforeSwapafterSwap+2
2
5mo
UniswapV4HookA buy-and-burn hook that charges a 1.7% fee on buys (ETH accumulated into a burn pot for periodic token buybacks every 20 swaps) and sells (tokens queued for direct burning). Exact-output swaps always revert. Sell access can be restricted to an owner-managed allowlist when enabled per token.
Ethereum
beforeInitbeforeAddLiqbeforeSwapafterSwap+2
2
5mo
UniswapV4HookCharges a 1.7% fee on buys (ETH) and sells (tokens), routing fees into a burn pot. Every 20 user swaps it signals a buyback-and-burn. Blocks sells in the same block as a buyback. Optionally restricts sells to an owner-controlled tx.origin allowlist, which any external caller can activate via superposition().
Ethereum
beforeInitbeforeAddLiqbeforeSwapafterSwap+2
2
5mo
UniswapV4HookCollects a 1.7% fee on buys (ETH) and sells (token), routing buy fees to a burn pot for periodic buyback-and-burn operations. Every 20 swaps with a non-empty burn pot, a buyback is flagged; sells in the same block as a buyback are blocked. Liquidity addition is permanently gated to a single provider, and sell access can be restricted to an admin-controlled allowlist via a publicly-triggerable `timeBased` flag.
Ethereum
beforeInitbeforeAddLiqbeforeSwapafterSwap+2
2
5mo
DoubleSineHookA custom AMM hook controlling two canonical pools (ETH/TokenA and ETH/TokenB) that share a single virtual ETH reserve. It fully bypasses Uniswap's native AMM via beforeSwapReturnsDelta, implementing its own constant-product curve with 1% buy/sell fees routed to an immutable treasury address and a 5-block anti-snipe cap on buy size at launch.
Ethereum
afterInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+1
2
5mo
DoubleSineHookCustom AMM hook managing two pools (ETH/TokenA and ETH/TokenB) sharing a single virtual ETH reserve via a proprietary constant-product curve (DoubleSineMath). The hook fully intercepts all swaps via beforeSwapReturnsDelta, bypassing Uniswap's native pricing. Charges a 1% buy/sell fee directed to an immutable treasury. Liquidity addition/removal is disabled; buy size is capped for the first 5 blocks post-initialization as an anti-snipe measure.
Ethereum
afterInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+1
2
5mo
UniswapV4HookA Uniswap v4 hook that collects a 0.7% fee on every swap — ETH on buys, tokens on sells — accumulating ETH into a burn pot for periodic buyback-and-burn operations. Sell transactions can be selectively blocked via a tx.origin allowlist when enabled, and only one liquidity addition per token is permitted.
Ethereum
beforeInitbeforeAddLiqbeforeSwapafterSwap+2
2
5mo
UniswapV4HookA Uniswap v4 hook collecting a 0.7% fee on every swap: ETH from buys accumulates in a burn pot for buyback-and-burn every 20 swaps, and token input from sells is burned directly. Liquidity addition is one-time per token, and sells are blocked in the same block as a buyback. Additionally, any address can activate a per-token sell allowlist by calling registerPixel, restricting sells to addresses the deployer pre-approves via preparePixels; only the deployer (genesisAddress) can deactivate it.
Ethereum
beforeInitbeforeAddLiqbeforeSwapafterSwap+2
2
5mo
UniswapV4HookExtracts a 2.2% tax on buy and sell swaps via BeforeSwapDelta. Buy-side ETH fees accumulate in a burn pot for buyback-and-burn every 20 swaps; sell-side tokens are queued and burned on later swaps. Only one liquidity addition per token is permitted. Additionally, afterSwap enforces a sell-side allowlist: when timeBased[token] is enabled (activatable by anyone via registerBurner()), sells revert for any tx.origin not in the deployer-controlled hasValue allowlist.
Ethereum
beforeInitbeforeAddLiqbeforeSwapafterSwap+2
2
5mo
IncineratorBuy-and-burn hook that extracts a 2.2% fee on ETH buys into a burn pot for periodic buyback-and-burn, and a 2.2% token fee on sells for immediate burning via delta returns. Contains a hidden mechanism: once `registerBurner()` is called (callable by anyone), sells by non-whitelisted addresses revert in `afterSwap`, creating a potential honeypot controlled by the deployer.
Ethereum
beforeInitbeforeAddLiqbeforeSwapafterSwap+2
2
5mo
HyperhookA prediction-market hook that lets users trade binary outcome tokens (UP/DOWN) against a base asset using a custom bonding curve inside time-bounded epochs. Epochs are resolved by a Chainlink price feed; winning-side holders can redeem their tokens for the base asset after resolution, subject to a decay tax.
Ethereum
afterAddLiqbeforeSwapswapDelta
2
5mo
DoubleSineHookA custom AMM hook managing two pools (ETH/TokenA and ETH/TokenB) that share a single virtual ETH reserve under a constant-product pricing curve. The hook fully intercepts swaps via beforeSwapReturnsDelta, minting/burning tokens and settling ETH directly. Applies a 1% buy/sell fee to an immutable treasury address and enforces a 5-block anti-snipe buy cap on launch.
Ethereum
afterInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+1
2
5mo
PillHookA Uniswap v4 hook for a dual-faction (RED/BLUE) game that taxes exact-input token sells at 3% in ETH, redistributing proceeds to the opposite faction's holders via a Synthetix-style per-token accumulator.
Ethereum
afterSwapafterSwapDelta
2
5mo
0x0b08…0044Runs code on every swap · Can take tokens from swaps
Ethereum
afterSwapafterSwapDelta
2
5mo
UniswapV4HookCharges a 1.2% fee on all swaps: buy-side (ETH->token) fees accumulate in a native burn pot and are periodically used to buyback and burn tokens; sell-side (token->ETH) fees are taken and burned directly. Blocks all liquidity additions after the first and reverts exact-output swaps. An afterSwap allowlist (hasValue) can gate sells; the restriction is enabled permissionlessly by anyone via burner(), while allowlist membership is owner-controlled.
Ethereum
beforeInitbeforeAddLiqbeforeSwapafterSwap+2
2
5mo
0xc029…0044Runs code on every swap · Can take tokens from swaps
Ethereum
afterSwapafterSwapDelta
2
5mo
BurnHookRuns code on every swap · Can take tokens from swaps · Gates who can add liquidity · Runs at pool creation
Ethereum
beforeInitbeforeAddLiqbeforeSwapswapDelta
2
5mo
BurnHookRuns code on every swap · Can take tokens from swaps · Gates who can add liquidity · Runs at pool creation
Ethereum
beforeInitbeforeAddLiqbeforeSwapswapDelta
2
5mo
0xe0c9…0488Runs code on every swap · Can take tokens from swaps
Ethereum
afterAddLiqbeforeSwapswapDelta
2
5mo
UniDogeBuybackHookCollects a 0.5% fee on ETH/UniDoge pool swaps via afterSwapReturnsDelta, accumulates the ETH fees, and periodically executes automated buyback swaps to purchase UniDoge tokens, which are then burned.
Ethereum
afterInitafterSwapafterSwapDelta
2
5mo
0x1e91…0080Runs code on every swap
Ethereum
beforeSwap
2
5mo
TaxHookApplies dynamic LP fee overrides on every swap, delegating buy/sell tax calculations to a configurable external IAntiBotModule contract. Records each user's first buy block to support anti-bot fee tiers; hookData optionally overrides the caller address for fee computation.
Ethereum
beforeSwap
2
6mo
FloraHookRuns code on every swap · Can take tokens from swaps · Gates who can add liquidity · Runs at pool creation
Ethereum
beforeInitbeforeAddLiqbeforeSwapswapDelta
2
6mo
WhitelistTaxHookA beforeSwap hook that applies dynamic LP fee overrides based on buy/sell direction and a whitelist. Whitelisted addresses swap fee-free; non-whitelisted buyers pay a configurable buyTaxRate, and sellers pay a configurable sellTaxRate (reduced after 10 blocks since the user's first buy).
Ethereum
beforeSwap
2
6mo
0x5638…80ccRuns code on every swap · Can take tokens from swaps
Ethereum
beforeSwapafterSwapswapDeltaafterSwapDelta
2
6mo
HookFeeA fee-collecting hook that charges a configurable basis-point fee on currency0 output from one-for-zero swaps, routing proceeds to a fixed feeRecipient via afterSwap delta. The fee rate is owner-controlled and capped at 10,000 bps.
Ethereum
afterSwapafterSwapDelta
2
6mo
PumpFeeHookA Uniswap v4 hook for token launches that applies tiered creator and protocol fees on each swap based on the token's current market cap (derived from the pool's spot price), alongside a dynamic LP fee override. Only factory-registered bonding curve pools can register with this hook; fees accumulate and are distributed to the creator and protocol via a separate skim function.
Ethereum
afterInitbeforeSwapafterSwapswapDelta+1
2
6mo
0x952f…00c4Runs code on every swap · Can take tokens from swaps
Ethereum
beforeSwapafterSwapafterSwapDelta
2
6mo
0xac68…00c4Runs code on every swap · Can take tokens from swaps
Ethereum
beforeSwapafterSwapafterSwapDelta
2
6mo
OracleHookA TWAP oracle hook that writes tick observations on every swap via a V3-style ring buffer, applies a dynamic LP fee scaling linearly with price drift from a reference sqrt price, and gates all liquidity operations to an authorized Stabilizer contract via a magic sentinel in hookData.
Ethereum
afterInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+1
2
6mo
SurtHookETH/SURT bonding curve hook implementing a SATO-style pricing model with dynamic sell-side burn (2–8% of fair SURT, volume/TVL-linked) and an idle jackpot mechanism (1% of each buy credited to pot; paid to prior buyer after 1 hour of inactivity). Liquidity additions are forbidden; requires the real swapper address ABI-encoded in hookData.
Ethereum
beforeInitbeforeAddLiqbeforeSwapswapDelta
2
6mo
FaunaHookUUPS-upgradeable hook for the FAUNA NFT pool that notifies a renderer contract after each swap to trigger butterfly reveal mechanics. No access control on swaps; only afterSwap is active and solely performs an external notification call.
Ethereum
afterSwap
2
6mo
0xad1d…0442Runs code on every swap · Adjusts deposit amounts
Ethereum
afterAddLiqafterSwapaddLiqDelta
2
6mo
LifeA Uniswap v4 hook combined with an ERC-20 token (LIFE) that runs Conway's Game of Life on a 64×64 toroidal grid. Each swap advances the simulation 1–10 generations, collects a 3% fee split between cell-owners and an immutable protocol recipient, and places or kills grid cells based on ETH↔LIFE swap activity and token transfers.
Ethereum
beforeSwapafterSwapafterSwapDelta
2
6mo
0x3e2e…4488Runs code on every swap · Can take tokens from swaps
Ethereum
afterAddLiqbeforeSwapswapDelta
2
6mo
0xb9e8…4accRuns code on every swap · Can take tokens from swaps · Can block LP withdrawals · Gates who can add liquidity
Ethereum
beforeAddLiqbeforeRemoveLiqbeforeSwapafterSwap+2
2
6mo
0x98de…4488Runs code on every swap · Can take tokens from swaps
Ethereum
afterAddLiqbeforeSwapswapDelta
2