Custom pricing hook on Ethereum

Uniswap v4 Hook Contract 0x9e8cd610e8532db5e8685cfc9af40b299fa98088 on Ethereum · Custom pricing

Volume (24h)
$0
Value locked (TVL)
$0
All-time volume
$0
Pools using this hook
1
Swaps (24h)
0 (0 traders)
Total swaps
0

What it does

A swap-time hook that runs before each swap and can adjust the settled amounts via a return delta, with its exact purpose not determinable from bytecode alone.

How it works step by step

  • Executes logic in beforeSwap on every swap against this pool
  • Reads and writes storage slots 0 to 3 during swaps
  • Returns a before-swap delta that can modify settled token amounts
  • Exposes three unnamed view functions that likely return configuration or state
  • No liquidity or fee-specific callbacks are present
Swap behaviour
beforeSwap runs before every swap in the pool, reads and updates stored state, and returns a delta that can change the swap's settled amounts.
Liquidity behaviour
No liquidity callbacks.
Fee behaviour
Uses the pool's static fee; no fee override is visible in the decoded functions.
Owner & admin controls
No admin controls found.

Enabled Uniswap v4 callbacks

beforeSwap, beforeSwapReturnDelta

beforeSwap: runs before each swap and is the only state-mutating entry point; beforeSwapReturnDelta: allows the hook to return a delta that alters the amounts settled for the swap.

Security & trust assessment

Risk level: high (decoded bytecode, low confidence).

Who controls it: No privileged role is visible in the decoded functions, so centralization risk cannot be determined beyond the absence of admin selectors.

Risk to user funds: Because beforeSwapReturnDelta is enabled, the hook can alter settled swap amounts and could hold or move token value during swaps; the exact economic effect cannot be confirmed without source.

Security findings

  • [high] Before-swap return delta enabled: The hook can return a before-swap delta, meaning it can change the amounts a swap settles and potentially take or supply tokens during the swap.
  • [medium] Mutable swap state in storage: beforeSwap writes to storage slots 0 through 3 and reads slots 0 and 1 in view functions, indicating swap-dependent state that could be manipulated or stale.
  • [info] Unnamed view functions: Three view selectors (0x3bc33eac, 0xa88a39b5, 0xe8035c9c) are exposed but their names are unknown, so their purpose cannot be confirmed without source.

Contract details

Verified source
No
Bytecode size
1,615 bytes
Upgradeable proxy
No
Detected patterns
return-delta

Pools using Custom pricing hook