Likely dynamic fee hook on Ethereum

Uniswap v4 Hook Contract 0x077c4e99702fd8e3682ecd80d533b9082f174080 on Ethereum · Dynamic fee

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

What it does

A Uniswap v4 hook that applies a dynamic swap fee in beforeSwap, with panic and anchor-based parameters, to adjust trading costs for traders and LPs.

How it works step by step

  • Overrides the swap fee in beforeSwap based on pool state
  • Reads pool state from the pool manager via extsload
  • Uses a BASE_FEE constant as the default fee level
  • Switches to a PANIC_FEE for a PANIC_DURATION when triggered
  • Tracks anchor state with ANCHOR_LIFETIME and TICK_THRESHOLD
Swap behaviour
beforeSwap computes and applies a dynamic fee for each swap using stored per-pool state and read-only fee constants.
Liquidity behaviour
Liquidity add and remove callbacks are exposed as views and appear to be pass-through with no state changes.
Fee behaviour
Hook appears to set a dynamic swap fee in beforeSwap, with BASE_FEE, PANIC_FEE, PANIC_DURATION, ANCHOR_LIFETIME and TICK_THRESHOLD constants suggesting a panic/anchor-based fee scheme; exact fee formula cannot be determined without source.
Owner & admin controls
No admin controls found.

Enabled Uniswap v4 callbacks

beforeSwap

beforeSwap is used to compute and apply a dynamic fee for each swap; afterInitialize is present in the dispatch table, but the hook permissions only enable beforeSwap.

Security & trust assessment

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

Who controls it: No owner or admin selectors were decoded, so no privileged key was identified in the bytecode; the constants appear to be hardcoded.

Risk to user funds: The hook overrides the swap fee but does not appear to take or hold tokens, so user funds are not directly custodied or blocked by the decoded logic.

Security findings

  • [info] Stateful fee logic in beforeSwap: Only one storage slot is inferred, a mapping read and written in beforeSwap, which holds per-pool state used for fee computation.
  • [info] Fee parameters appear immutable: Constants such as PANIC_FEE and TICK_THRESHOLD govern when fees spike; the parameters are read-only in the decoded selectors, so tuning requires redeployment.
  • [info] Reads pool state via extsload: The hook calls extsload on the pool manager to read pool state, which is a read-only dependency.

Contract details

Verified source
No
Bytecode size
10,373 bytes
Upgradeable proxy
No

Pools using Likely dynamic fee hook