Likely custom pricing hook on Base

Uniswap v4 Hook Contract 0x00e260d26a30538c0c19cc257bf77b1fa44988a8 on Base · 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

This hook runs its own pricing engine for swaps using externally reported liquidity, blocks direct LP deposits and donations, and leaves withdrawals untouched, with exact trader pricing unverifiable from bytecode.

This read was written for the hook 0x1150…c8a8 on Arbitrum and reused here: the two share a code shape, so constants such as fees, owners and addresses can differ.

How it works step by step

  • Replaces the normal Uniswap pool pricing with its own swap logic, quoting and filling trades itself through a swap return delta.
  • Blocks direct liquidity additions to the pool (LiquidityNotAllowed error), so liquidity comes from the hook's own effective-liquidity source.
  • Checks an external contract for whether trading is live and how much effective liquidity is available before filling a swap.
  • Blocks or restricts donations to the pool.
  • Includes a quoting/helper function that can be called to preview swap results.
Swap behaviour
On each swap the hook computes the price and amounts itself, using liquidity reported by an external source, and overrides the pool's normal swap math via a return delta. Swaps revert if the source is not live or liquidity is insufficient.
Liquidity behaviour
Adding liquidity directly to the pool appears to be rejected. Remove-liquidity callbacks are disabled, so any existing positions can always be withdrawn without hook interference.
Fee behaviour
Exact fee levels cannot be confirmed from bytecode; pricing and any spread are determined inside the hook's custom swap math rather than the pool's static fee.
Owner & admin controls
No owner storage or admin setters found in the hook itself; behaviour may depend on an external contract that reports liveness and effective liquidity, whose controls are unknown.

Enabled Uniswap v4 callbacks

beforeAddLiquidity, beforeSwap, beforeDonate, beforeSwapReturnDelta

beforeAddLiquidity: rejects direct LP deposits; beforeSwap: runs custom pricing and checks live status; beforeSwapReturnDelta: lets the hook fill the swap itself instead of the pool curve; beforeDonate: blocks donations.

Security & trust assessment

Risk level: medium, estimated (decoded bytecode, medium confidence).

Who controls it: No admin keys found in the hook; whoever controls the external liquidity/liveness contract can effectively pause or limit swaps.

Risk to user funds: The hook sets the amounts traders pay and receive on swaps through its return delta, with no verifiable fee cap. It cannot touch or lock LP principal on withdrawal.

Security findings

  • [medium] Custom swap pricing via return delta: The hook overrides swap amounts using its own math; exact pricing and any embedded spread cannot be verified from unverified bytecode.
  • [low] Depends on external liquidity source: Swaps rely on an external contract's isLive and getEffectiveLiquidity results, which can halt trading if it reports not live.
  • [info] LP withdrawals unaffected: Remove-liquidity callbacks are disabled, so the hook can never block withdrawals.

Contract details

Verified source
No
Bytecode size
15,634 bytes
Upgradeable proxy
No
Detected patterns
return-delta

Pools using Likely custom pricing hook