UniHooks

SimHook

EthereumRegistered

Dynamic-fee hook that prices each swap using simulated price impact and a time-decaying cumulative price imbalance, with JIT liquidity protection and a governance-configurable protocol fee taken via afterSwap hook delta.

0xfea4c50b6d3bfcb9c6de4e44be0293c3a916bec4 First pool 7 Sept 2026View on explorer
ALooks safeRegistered, verified, immutable
Pools
6
Dynamic-fee pools
6
Last new pool
59d
Code size
14,904 B

What it can do

Runs code on every swap

Its code executes inside each trade in pools that use it.

Can take tokens from swaps

It can take or add tokens during a swap. Fees, burns and custom curves work this way, and so do scams.

Sets its own swap fee

Pools using it let the hook choose the swap fee instead of a fixed tier.

Can block LP withdrawals

It runs before liquidity is removed, so it can delay or refuse LP exits.

Gates who can add liquidity

It checks every deposit before it goes in.

Runs at pool creation

It runs when a pool is created, often to lock in that pool’s settings.

Safety report

Automated checks, not an audit
✓Not upgradeableNo proxy pattern found: the code is fixed.
✓No owner foundNo owner() function: nobody has an admin switch (as far as the standard check goes).
✓Listed in Uniswap’s hook registryRegistered with Uniswap Labs (a listing, not a security review).
✓Source code publishedThe code on the block explorer matches what's deployed (contract: SimHook).
iCan change swap amountsIt has a ReturnDelta permission. Normal for fees and burns, but also how fake-quote hooks steal.
iRestricted swapsSwap access: governance. Not everyone can trade every pool.
?No audit linkedAutomated checks only.

Pools using this hook

6 total
PairCreatedFeePool ID
PAXG / USDC 59d dynamic 0x6e5f…9560 Tx ↗
ETH / PAXG 59d dynamic 0x941a…63ce Tx ↗
WBTC / PAXG 59d dynamic 0x6a45…b2f1 Tx ↗
ETH / WBTC 59d dynamic 0xec37…5719 Tx ↗
WBTC / USDC 59d dynamic 0x28f5…b3e4 Tx ↗
ETH / USDC 2mo dynamic 0x1951…11ac Tx ↗