Uniswap v4 Hook Permission Calculator
Which hook calls does your contract implement? Get the required address suffix.
Your hook implements…
Required address suffix (low 14 bits)
…1780
bits: 01011110000000 (14-bit permission field) — the PoolManager checks uint160(address) & bit, so the address's LOW 14 bits must equal this value; HookMiner salts a CREATE2 deployment until they do. A hook must implement a call if — and only if — its bit is set.
Decode a hook address
Example: 0x3EED…9780 decodes to the five-call firewall (afterInitialize, afterAdd/RemoveLiquidity, beforeSwap, beforeRemoveLiquidity) — its low 14 bits are 0x1780.
About the V4 Hook Calculator
Uniswap v4 gives hooks contract-address-derived permissions: the bits of the address itself determine which hook callbacks the pool will call. Designing a hook means designing an address whose flags land in the right bits.
This calculator maps hook addresses to their permission flags and back — before-beforeInitialize, before-swap, after-swap and the full grid — so you can verify a deployed hook or plan a vanity address with the exact permissions you need. All computation is local keccak and bit math in your browser.
How to use
- Paste a hook address to see which permissions its bits encode.
- Or select desired flags to see the address constraints.