UniHooks

OneTimeLaunchHookTemplate

EthereumRegistered

Restricts pool initialization and initial liquidity addition to a single occurrence per token. In afterSwap, when activated via mix(), selectively reverts buy-side swaps (non-zeroForOne direction) for addresses not in an owner-controlled allowlist, checked via tx.origin.

0x609517cf2746512fb12b937fc03278489a85e840 First pool 11 May 2026View on explorer
ALooks safeRegistered, verified, immutable
Pools
3
Dynamic-fee pools
0
Last new pool
5mo
Code size
3,971 B

What it can do

Runs code on every swap

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

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: OneTimeLaunchHookTemplate).
iRestricted swapsSwap access: allowlist. Not everyone can trade every pool.
?No audit linkedAutomated checks only.

Pools using this hook

3 total
PairCreatedFeePool ID
ETH / GRAV1TY 5mo 0.30% 0x7ecc…e574 Tx ↗
ETH / uLOBSTER 5mo 0.30% 0xf826…7b28 Tx ↗
ETH / CUB3 5mo 0.30% 0x12a7…5452 Tx ↗