UniHooks

DopplerHookInitializer

BaseRegistered

DopplerHookInitializer is a Uniswap v4 hook on Base. Initializes Uniswap v4 pools with multi-curve (bonding curve) liquidity positions, supporting dynamic LP fees and optional DopplerHook callbacks for custom initialization, swap fee collection via afterSwap delta, and pool graduation.

Contract name
DopplerHookInitializer
0xbdf938149ac6a781f94faa0ed45e6a0e984c6544 First pool 11 Mar 2026View on explorer
ALooks safeRegistered, verified, immutable, no admin
Pools
378,155
Dynamic-fee pools
370,462
Last new pool
1m
Code size
24,384 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.

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: DopplerHookInitializer).
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

Pools using this hook

378,155 total, newest 50 shown
PairCreatedFeePool ID
WETH / 0xdff5…0ba3 1m dynamic 0x080d…d104 Tx ↗
WETH / 0xe7e2…9ba3 3m dynamic 0x8b6d…c5af Tx ↗
WETH / 0x4bf5…1ba3 7m dynamic 0x8188…247f Tx ↗
WETH / 0x7003…dba3 11m dynamic 0xaf91…b387 Tx ↗
WETH / 0x4bc3…fba3 13m dynamic 0x7652…38b7 Tx ↗
WETH / 0x4a51…2ba3 16m dynamic 0xf043…0e8e Tx ↗
WETH / 0x585e…9ba3 17m dynamic 0x8321…05b3 Tx ↗
WETH / 0xcfce…bba3 18m dynamic 0xc6ae…acf5 Tx ↗
0x355a…5ba3 / WETH 20m dynamic 0x46c7…5436 Tx ↗
0x018b…dba3 / WETH 23m dynamic 0x93ed…b13c Tx ↗
WETH / 0xb208…5ba3 24m dynamic 0x943e…b24a Tx ↗
BNKR / 0xea4f…6ba3 26m dynamic 0xc3be…7c1b Tx ↗
0x57cc…fee1 / PLTRc 31m dynamic 0x65eb…1575 Tx ↗
WETH / 0x7f40…8ba3 1h dynamic 0xa92b…4915 Tx ↗
WETH / 0x6550…3ba3 1h dynamic 0x7c7e…7ae3 Tx ↗
WETH / 0x4c96…0ba3 1h dynamic 0x9c0a…944a Tx ↗
WETH / 0xb2c7…fee1 1h dynamic 0x4cc0…0931 Tx ↗
WETH / CATHEREUM 2h dynamic 0x60b7…ce20 Tx ↗
A O DF / WETH 2h 0.00% 0x95f0…a063 Tx ↗
US O E / WETH 2h 0.00% 0xb20c…0246 Tx ↗
XT O / WETH 2h 0.00% 0x44b1…102f Tx ↗
M O NERO / WETH 2h 0.00% 0xedbd…a0ac Tx ↗
AOP / WETH 2h 0.00% 0xa816…88c2 Tx ↗
NAFF / WETH 2h 0.00% 0x86b6…684a Tx ↗
ADOF / WETH 2h 0.00% 0x5b86…fd12 Tx ↗
0x0e1d…1d76 / WETH 2h 0.00% 0xac9c…55d2 Tx ↗
0xa8ca…fee1 / 0xb200…67da 3h dynamic 0x6cc1…51bf Tx ↗
WETH / 0xda35…7ba3 3h dynamic 0x57db…e166 Tx ↗
WETH / 0x7b78…fba3 3h dynamic 0x788a…b24c Tx ↗
0x20ee…fba3 / WETH 3h dynamic 0xaa63…8ba7 Tx ↗
WETH / 0x8be5…cba3 3h dynamic 0xbdcf…cdf1 Tx ↗
WETH / 0x4201…bba3 3h dynamic 0xbac4…8e8e Tx ↗
WETH / 0x5381…9ba3 3h dynamic 0xb179…0541 Tx ↗
HIGHER / MUc 3h dynamic 0x4a25…00ea Tx ↗
WETH / POTA 4h dynamic 0xde81…5bbe Tx ↗
WETH / BANA 4h dynamic 0xf155…9fa8 Tx ↗
BULLERS / SPCXc 4h dynamic 0x0722…2674 Tx ↗
FSC / WETH 4h dynamic 0x7bcc…aa4f Tx ↗
WETH / PSNY 4h dynamic 0xe01d…5fdb Tx ↗
A O DF / WETH 5h 0.00% 0x53f0…4abf Tx ↗
US O E / WETH 5h 0.00% 0x223c…6954 Tx ↗
0x2917…50ab / WETH 5h 0.00% 0xb8eb…0382 Tx ↗
0x40b2…5db8 / WETH 5h 0.00% 0x83ab…22a5 Tx ↗
0x093d…fc47 / WETH 5h 0.00% 0x034a…e585 Tx ↗
0x2e9e…bbb8 / WETH 5h 0.00% 0x2ad1…faad Tx ↗
0x10c3…0067 / WETH 5h 0.00% 0xac02…b4ea Tx ↗
0x695d…1111 / PAXG 5h dynamic 0x61ab…67f5 Tx ↗
0x3c22…bbb6 / WETH 5h 0.00% 0x0dd5…b050 Tx ↗
WETH / 0x883a…aba3 5h dynamic 0xae1d…2959 Tx ↗
WETH / FUSE 5h dynamic 0x36a2…c868 Tx ↗
Questions about DopplerHookInitializer

Is DopplerHookInitializer safe?

DopplerHookInitializer gets an automated grade of A (looks safe): registered, verified, immutable, no admin. This is based on on-chain checks and Uniswap's hook registry, not an audit.

How do I launch a pool with DopplerHookInitializer?

Use "Launch a pool with this hook" on this page: enter your token, choose what to pair it with and a starting price, and sign one transaction. The pool is created on Uniswap itself, then you add liquidity there.

Which chain is DopplerHookInitializer on?

This DopplerHookInitializer contract is on Base at 0xbdf938149ac6a781f94faa0ed45e6a0e984c6544. 1 identical copy exists at other addresses.

How many pools use DopplerHookInitializer?

378,155 Uniswap v4 pools use this hook. The newest was created 1m ago.