UniHooks

DNAHook

Ethereum

Runs code on every swap. Can take tokens from swaps. Sets its own swap fee. Can block LP withdrawals. Takes a cut when LPs withdraw. Gates who can add liquidity. Adjusts deposit amounts. Runs at pool creation. Handles donations to LPs.

0xc724dd91b41069782a1b3d19a89b1248d2c4bfff First pool 11 Oct 2026View on explorer
CBe carefulNot in Uniswap’s hook registry · Can take tokens out of swaps
Pools
1
Dynamic-fee pools
1
Last new pool
25d
Code size
12,902 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.

Takes a cut when LPs withdraw

It can change what LPs get back when they remove liquidity.

Gates who can add liquidity

It checks every deposit before it goes in.

Adjusts deposit amounts

It can adjust token amounts when liquidity is added.

Runs at pool creation

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

Handles donations to LPs

It runs when someone donates tokens to the pool’s LPs.

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).
!Not in Uniswap’s hook registryUnregistered hooks get less scrutiny. Most scam hooks are unregistered.
✓Source code publishedThe code on the block explorer matches what's deployed (contract: DNAHook).
iCan change swap amountsIt has a ReturnDelta permission. Normal for fees and burns, but also how fake-quote hooks steal.
?No audit linkedAutomated checks only.

Pools using this hook

1 total
PairCreatedFeePool ID
ETH / DNA 25d dynamic 0xf618…a370 Tx ↗