Explore hooks
Every hook that has been attached to at least one Uniswap v4 pool.
AgeHookChainPermissionsGradePoolsAddress
4mo
Unnamed hookRuns on every swap · Can change what you receive
Unichain
beforeSwapswapDelta
C
1
0x24e6…8088
5mo
Unnamed hookRuns on every swap · Can change what you receive
Unichain
beforeSwapswapDelta
C
2
0xb0d6…4088
5mo
Unnamed hookRuns on every swap · Can change what you receive
Unichain
beforeSwapswapDelta
C
10
0xd689…4088
5mo
Unnamed hookRuns on every swap · Can change what you receive
Unichain
beforeSwapswapDelta
C
8
0x1673…0088
5mo
Unnamed hookCan block withdrawals
Unichain
beforeRemoveLiq
B
1
0x8b93…c200
5mo
Unnamed hookCan take a cut on withdrawal
Unichain
afterRemoveLiqremoveLiqDelta
C
1
0x74de…0101
5mo
Unnamed hookRuns on every swap · Can change what you receive
Unichain
afterSwapafterSwapDelta
C
1
0x4d8f…0044
5mo
Unnamed hookRuns on every swap · Can change what you receive
Unichain
afterSwapafterSwapDelta
C
1
0xae1b…c044
5mo
Unnamed hookRuns on every swap · Can change what you receive
Unichain
afterSwapafterSwapDelta
C
1
0x431b…c044
5mo
SpireTracks per-address "horn length" (HORN token balance weighted by holding tenure) after each swap, accumulating reward weight for a UNI distribution system. Periodically harvests LP fees from a HORN/UNI pool to burn HORN and distribute UNI to holders proportionally; includes a "monarch" mechanic where the highest horn-length holder can claim a crown pot after a cooldown.
Unichain
afterSwap
A
1
0x54c7…0040
5mo
Unnamed hookRuns on every swap
Unichain
afterSwap
B
1
0xbd62…c040
5mo
Unnamed hookRuns on every swap · Can change what you receive
Unichain
afterSwapafterSwapDelta
C
1
0xd750…c044
5mo
PrediXHookProxyV2ERC1967-style upgradeable proxy for a prediction market AMM hook. Gates swaps through a trusted-router allowlist with per-swap anti-sandwich identity commitments; all registered pools must use dynamic fees, which the hook overrides per-swap. Emits per-trade price and USDC volume events for each registered prediction-market pool. Enforces 48-hour timelocks on upgrades, diamond rotation, and admin transfers.
Unichain
beforeInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+2
C
1,034
0x2ea5…6ae0
5mo
Unnamed hookRuns on every swap · Can change what you receive · Can change deposits · Checks new pools
Unichain
afterInitafterAddLiqbeforeSwapafterSwap+3
C
1
0x8c19…d4ce
5mo
Unnamed hookRuns on every swap · Can change what you receive · Can change deposits · Checks new pools
Unichain
afterInitafterAddLiqbeforeSwapafterSwap+3
C
1
0x3bbb…54ce
5mo
Unnamed hookRuns on every swap
Unichain
beforeSwapafterSwap
D
1
0xd733…00c0
6mo
AsyncSwapConverts exact-input swaps into async limit orders: the maker's input is escrowed in beforeSwap via BeforeSwapDelta, bypassing the pool AMM entirely. A pre-authorized filler later settles by delivering at least the maker's specified minimum output. Supports order cancellation and limit-price updates; full-fill only in v1.
Unichain
beforeInitbeforeAddLiqbeforeSwapswapDelta
A
1
0x917b…6888
6mo
AsyncSwapAsync order book that intercepts exact-input swaps — the maker's input is taken as a 6909 claim and an open order is created at a limit price. A filler later settles by delivering the minimum output amount directly to the maker, bypassing the AMM entirely.
Unichain
beforeInitbeforeAddLiqbeforeSwapswapDelta
A
1
0x91db…a888
6mo
Unnamed hookRuns on every swap · Can change what you receive
Unichain
beforeSwapswapDelta
C
7
0xf133…c088
6mo
Unnamed hookRuns on every swap · Can change what you receive · Checks new pools
Unichain
afterInitbeforeSwapswapDelta
C
13
0xb249…5088
6mo
AegisHookUniswap v4 hook that applies dynamic LP fees via an oracle-driven fee manager, charges a configurable hook fee on each swap's input amount, and periodically reinvests accumulated hook fees as full-range liquidity through the AegisEngine.
Unichain
afterInitbeforeSwapafterSwapswapDelta+1
A
3
0x0e0d…50cc
6mo
Unnamed hookRuns on every swap · Checks new pools
Unichain
beforeInitbeforeSwap
C
1
0x14aa…e080
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
A
1
0xcd5a…4ac0
6mo
GridHookAutomated grid trading hook that deploys user-configured liquidity positions across evenly-spaced tick ranges. Supports per-user grid deployment, rebalancing when price moves beyond a configurable threshold, and enforces a per-block maximum price impact circuit breaker in afterSwap.
Unichain
afterInitafterAddLiqafterRemoveLiqbeforeSwap+1
A
2
0x74c3…d5c0
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
A
1
0xddff…4040
6mo
Unnamed hookRuns on every swap · Checks new pools
Unichain
beforeInitbeforeSwap
C
1
0xd8a3…e080
6mo
Unnamed hookRuns on every swap · Checks new pools
Unichain
beforeInitbeforeSwap
C
1
0xc468…a080
6mo
Unnamed hookRuns on every swap · Checks new pools
Unichain
beforeInitbeforeSwap
C
1
0x888a…e080
6mo
Unnamed hookRuns on every swap · Checks new pools
Unichain
beforeInitbeforeSwap
C
1
0x5c08…a080
6mo
Unnamed hookRuns on every swap · Checks new pools
Unichain
beforeInitbeforeSwap
C
1
0xcaba…6080
7mo
GridHookGrid trading hook that deploys user liquidity across multiple evenly-spaced tick ranges. Supports configurable order count, distribution weights, and automated rebalancing by authorized keepers when price moves beyond a threshold. Uses permit2 for token settlement.
Unichain
afterInitafterAddLiqafterRemoveLiqafterSwap
A
9
0x2e7c…9540
7mo
GridHookA grid trading hook that lets users configure and deploy automated grid liquidity orders around the current tick. After each swap, it records the updated tick and swap count to support user-triggered rebalancing of grid positions.
Unichain
afterInitafterAddLiqafterRemoveLiqafterSwap
A
2
0x8240…d540
7mo
GridHookA grid trading hook that allows users to deploy configurable liquidity grids around the current tick. Supports manual and keeper-triggered rebalancing as price moves, with slippage protection and Permit2-based token settlement.
Unichain
afterInitafterAddLiqafterRemoveLiqafterSwap
A
2
0xdaa7…5540
7mo
Unnamed hookRuns on every swap
Unichain
beforeSwap
D
1
0x3a3a…4080
7mo
Unnamed hookRuns on every swap · Can change what you receive
Unichain
beforeSwapafterSwapswapDeltaafterSwapDelta
D
1
0x7480…00cc
7mo
Unnamed hookRuns on every swap · Checks new pools
Unichain
afterInitafterAddLiqafterRemoveLiqafterSwap
B
1
0x94ae…d540
7mo
AssetToAssetSwapHookForERC4626Periphery hook that automates asset-to-asset swaps for ERC4626 vault-backed pools. In beforeSwap, it converts the user's input asset into vault wrapper shares, performs a nested swap through a companion yield-harvesting pool, then redeems the output shares back to the underlying asset, returning the full delta so the pool itself executes no further swap.
Unichain
beforeAddLiqbeforeSwapswapDelta
A
2
0xc923…4888
7mo
EMADynamicFeeHookEMA-based dynamic fee hook for Uniswap V4. Calculates swap fees using Exponential Moving Average of price, with 30-step fee schedule (0.01%-3.00%) and 300-block anti-JIT protection via tx.origin. No owner, no admin functions, fully immutable.
Unichain
afterInitbeforeAddLiqbeforeRemoveLiqafterRemoveLiq+2
A
10
0x6398…1bc0
7mo
Unnamed hookRuns on every swap
Unichain
afterSwap
B
1
0x9138…8040
7mo
Unnamed hookRuns on every swap · Can change what you receive · Can block withdrawals · Controls who can add liquidity
Unichain
beforeAddLiqbeforeRemoveLiqbeforeSwapafterSwap+1
C
1
0xaafe…0ac8
7mo
Unnamed hookRuns on every swap · Sets its own fee · Checks new pools
Unichain
beforeInitafterInitbeforeSwapafterSwap
B
1
0xf425…b0c0
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
A
1
0xf874…b0c0
7mo
Unnamed hookRuns on every swap · Can change what you receive · Controls who can add liquidity · Checks new pools
Unichain
beforeInitbeforeAddLiqbeforeSwapafterSwap+1
C
1
0x1112…28c4
7mo
Unnamed hookRuns on every swap · Can change what you receive · Controls who can add liquidity · Checks new pools
Unichain
beforeInitbeforeAddLiqbeforeSwapafterSwap+1
C
1
0xbaeb…28c4
7mo
Unnamed hookCan block withdrawals · Controls who can add liquidity
Unichain
beforeAddLiqbeforeRemoveLiq
C
2
0x5119…4a00
7mo
Unnamed hookCan block withdrawals · Controls who can add liquidity
Unichain
beforeAddLiqbeforeRemoveLiq
B
1
0xd2ab…0a00
7mo
Unnamed hookCan block withdrawals · Controls who can add liquidity
Unichain
beforeAddLiqbeforeRemoveLiq
B
1
0x8922…ca00
7mo
Unnamed hookRuns on every swap · Can change what you receive · Can block withdrawals · Controls who can add liquidity
Unichain
beforeAddLiqbeforeRemoveLiqbeforeSwapafterSwap+1
C
1
0x308a…cac8
7mo
Unnamed hookRuns on every swap · Can change what you receive · Can block withdrawals · Controls who can add liquidity
Unichain
beforeAddLiqbeforeRemoveLiqbeforeSwapafterSwap+1
C
1
0xd376…4ac8
7mo
Unnamed hookRuns on every swap · Sets its own fee · Checks new pools
Unichain
beforeInitafterInitbeforeSwapafterSwap
B
1
0xca5d…30c0