UniHooks

PaperHook

EthereumRegistered

A fee-collecting hook for a single ETH/token pool that levies a time-decaying swap duty — opening at a configured rate (e.g. 5%) and decaying smoothly to a resting rate (e.g. 1%) over a fixed window from the first swap — routing collected ETH directly to an immutable Pyx address via poolManager.take(), and emitting a daily record to a Foil contract after every swap.

0x39ea7ca4c04d9bad04f5f0b644fe607aa623a0cc First pool 14 Sept 2026View on explorer
ALooks safeRegistered, verified, immutable
Pools
1
Dynamic-fee pools
0
Last new pool
52d
Code size
5,321 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.

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: PaperHook).
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 / PAPER 52d 0.30% 0xa426…ac76 Tx ↗