Uniswap v4 hooks on Ethereum
Every hook attached to at least one Uniswap v4 pool on Ethereum, explained in plain English, with safety checks and the pools that use it.
AgeHookChainPermissionsPools
14mo
SimpHookA dynamic fee hook that computes LP fees using a VPIN-based model. It tracks order imbalance across fixed-size volume buckets and estimates price impact via an illiquidity measure, then sets a per-swap fee override in beforeSwap. afterSwap records actual price impact and updates volume trackers for subsequent fee calculations.
Ethereum
beforeInitafterInitbeforeSwapafterSwap
2
14mo
0x8f3e…0088Runs code on every swap · Can take tokens from swaps
Ethereum
beforeSwapswapDelta
2
14mo
0x89fc…4080Runs code on every swap
Ethereum
beforeSwap
2
15mo
0x1321…0880Runs code on every swap · Sets its own swap fee · Gates who can add liquidity
Ethereum
beforeAddLiqbeforeSwap
2
15mo
ProAdvancedTibuHookletA concentrated liquidity hook for an ETH/TIBU pool that implements dynamic swap fees with surge protection and volume-based adjustments, auto-rebalancing of the liquidity position, an on-chain oracle with manipulation protection, and owner-controlled fee collection with configurable pause and emergency modes.
Ethereum
beforeInitafterInitafterAddLiqbeforeRemoveLiq+8
2
15mo
AngstromAngstrom is a decentralized exchange that takes control of its transaction ordering, preventing value extraction from liquidity providers and traders. By running application-specific auctions, Angstrom internalizes MEV and redirects the extracted value back to users, preventing arbitrage losses and sandwich attacks while reducing trading fees and gas.
Ethereum
beforeInitafterInitbeforeAddLiqbeforeRemoveLiq+4
2
16mo
0xb9c4…6aecRuns code on every swap · Can take tokens from swaps · Sets its own swap fee · Can block LP withdrawals · Gates who can add liquidity · Runs at pool creation · Handles donations to LPs
Ethereum
beforeInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+4
2
17mo
0xd083…8080Runs code on every swap · Sets its own swap fee
Ethereum
beforeSwap
2
17mo
0x23ce…e088Runs code on every swap · Can take tokens from swaps · Runs at pool creation
Ethereum
beforeInitbeforeSwapswapDelta
2
17mo
0x4182…8080Runs code on every swap · Sets its own swap fee
Ethereum
beforeSwap
2
17mo
0xebbe…c080Runs code on every swap · Sets its own swap fee
Ethereum
beforeSwap
2
17mo
0x6cbf…4080Runs code on every swap · Sets its own swap fee
Ethereum
beforeSwap
2
17mo
0xee20…c444Runs code on every swap · Can take tokens from swaps
Ethereum
afterAddLiqafterSwapafterSwapDelta
2
20mo
PredicateHookGates swaps via the Predicate attestation network: callers must supply a signed PredicateMessage in hookData, validated against a configurable policy and a quorum of EigenLayer operators before the swap is permitted. Requires hookData on every swap.
Ethereum
beforeSwap
2
3h
0x39d9…6488Runs code on every swap · Can take tokens from swaps · Runs at pool creation
Ethereum
beforeInitafterAddLiqbeforeSwapswapDelta
1
3h
0x7523…e488Runs code on every swap · Can take tokens from swaps · Runs at pool creation
Ethereum
beforeInitafterAddLiqbeforeSwapswapDelta
1
3h
0x3f82…2488Runs code on every swap · Can take tokens from swaps · Runs at pool creation
Ethereum
beforeInitafterAddLiqbeforeSwapswapDelta
1
3h
0xff03…a488Runs code on every swap · Can take tokens from swaps · Runs at pool creation
Ethereum
beforeInitafterAddLiqbeforeSwapswapDelta
1
3h
0x9737…6488Runs code on every swap · Can take tokens from swaps · Runs at pool creation
Ethereum
beforeInitafterAddLiqbeforeSwapswapDelta
1
5h
FoundationHookV2Runs code on every swap · Can take tokens from swaps · Runs at pool creation
Ethereum
beforeInitbeforeSwapafterSwapswapDelta+1
1
6h
0x0985…20ccRuns code on every swap · Can take tokens from swaps · Runs at pool creation
Ethereum
beforeInitbeforeSwapafterSwapswapDelta+1
1
11h
0xe128…60ecRuns code on every swap · Can take tokens from swaps · Sets its own swap fee · Runs at pool creation · Handles donations to LPs
Ethereum
beforeInitbeforeSwapafterSwapbeforeDonate+2
1
18h
0x5f7d…a145Runs code on every swap · Can take tokens from swaps · Takes a cut when LPs withdraw · Runs at pool creation
Ethereum
beforeInitafterRemoveLiqafterSwapafterSwapDelta+1
1
18h
0x7804…e145Runs code on every swap · Can take tokens from swaps · Takes a cut when LPs withdraw · Runs at pool creation
Ethereum
beforeInitafterRemoveLiqafterSwapafterSwapDelta+1
1
18h
0xf7c7…2145Runs code on every swap · Can take tokens from swaps · Takes a cut when LPs withdraw · Runs at pool creation
Ethereum
beforeInitafterRemoveLiqafterSwapafterSwapDelta+1
1
19h
0xf833…28a0Runs code on every swap · Gates who can add liquidity · Runs at pool creation · Handles donations to LPs
Ethereum
beforeInitbeforeAddLiqbeforeSwapbeforeDonate
1
22h
0xd494…a044Runs code on every swap · Can take tokens from swaps · Runs at pool creation
Ethereum
beforeInitafterSwapafterSwapDelta
1
22h
0x8857…4044Runs code on every swap · Can take tokens from swaps
Ethereum
afterSwapafterSwapDelta
1
1d
0x36fe…e145Runs code on every swap · Can take tokens from swaps · Takes a cut when LPs withdraw · Runs at pool creation
Ethereum
beforeInitafterRemoveLiqafterSwapafterSwapDelta+1
1
1d
0xdbab…e145Runs code on every swap · Can take tokens from swaps · Takes a cut when LPs withdraw · Runs at pool creation
Ethereum
beforeInitafterRemoveLiqafterSwapafterSwapDelta+1
1
1d
0x9703…6145Runs code on every swap · Can take tokens from swaps · Takes a cut when LPs withdraw · Runs at pool creation
Ethereum
beforeInitafterRemoveLiqafterSwapafterSwapDelta+1
1
1d
HookRuns code on every swap · Can take tokens from swaps · Takes a cut when LPs withdraw · Runs at pool creation
Ethereum
beforeInitafterRemoveLiqafterSwapafterSwapDelta+1
1
1d
TaxHookRuns code on every swap · Can take tokens from swaps · Runs at pool creation
Ethereum
afterInitbeforeSwapafterSwapswapDelta+1
1
1d
TaxHookRuns code on every swap · Can take tokens from swaps · Runs at pool creation
Ethereum
afterInitbeforeSwapafterSwapswapDelta+1
1
1d
TaxHookRuns code on every swap · Can take tokens from swaps · Runs at pool creation
Ethereum
afterInitbeforeSwapafterSwapswapDelta+1
1
1d
TaxHookRuns code on every swap · Can take tokens from swaps · Runs at pool creation
Ethereum
afterInitbeforeSwapafterSwapswapDelta+1
1
1d
TaxHookRuns code on every swap · Can take tokens from swaps · Runs at pool creation
Ethereum
afterInitbeforeSwapafterSwapswapDelta+1
1
1d
TaxHookRuns code on every swap · Can take tokens from swaps · Runs at pool creation
Ethereum
afterInitbeforeSwapafterSwapswapDelta+1
1
1d
TaxHookRuns code on every swap · Can take tokens from swaps · Runs at pool creation
Ethereum
afterInitbeforeSwapafterSwapswapDelta+1
1
1d
TaxHookRuns code on every swap · Can take tokens from swaps · Runs at pool creation
Ethereum
afterInitbeforeSwapafterSwapswapDelta+1
1
1d
TaxHookRuns code on every swap · Can take tokens from swaps · Runs at pool creation
Ethereum
afterInitbeforeSwapafterSwapswapDelta+1
1
1d
TaxHookRuns code on every swap · Can take tokens from swaps · Runs at pool creation
Ethereum
afterInitbeforeSwapafterSwapswapDelta+1
1
1d
TaxHookRuns code on every swap · Can take tokens from swaps · Runs at pool creation
Ethereum
afterInitbeforeSwapafterSwapswapDelta+1
1
1d
TaxHookRuns code on every swap · Can take tokens from swaps · Runs at pool creation
Ethereum
afterInitbeforeSwapafterSwapswapDelta+1
1
1d
GainsHookRuns code on every swap · Can take tokens from swaps · Gates who can add liquidity · Runs at pool creation
Ethereum
beforeInitbeforeAddLiqbeforeSwapafterSwap+2
1
1d
SyncHookRuns code on every swap · Can take tokens from swaps · Runs at pool creation
Ethereum
beforeInitbeforeSwapafterSwapswapDelta+1
1
1d
0xf12b…68c8Runs code on every swap · Can take tokens from swaps · Sets its own swap fee · Gates who can add liquidity · Runs at pool creation
Ethereum
beforeInitbeforeAddLiqbeforeSwapafterSwap+1
1
1d
0xe1c4…28c8Runs code on every swap · Can take tokens from swaps · Sets its own swap fee · Gates who can add liquidity · Runs at pool creation
Ethereum
beforeInitbeforeAddLiqbeforeSwapafterSwap+1
1
1d
JBUniswapV4HookRuns code on every swap · Can take tokens from swaps · Runs at pool creation
Ethereum
afterInitafterAddLiqafterRemoveLiqbeforeSwap+2
1
1d
0x8ef3…6044Runs code on every swap · Can take tokens from swaps · Runs at pool creation
Ethereum
beforeInitafterSwapafterSwapDelta
1