Dynamic fee hook on Polygon
Uniswap v4 Hook Contract 0xa2212c375bc4816809794536d00356ebd1a48080 on Polygon · Dynamic fee
- Volume (24h)
- $0
- Value locked (TVL)
- $1,000
- All-time volume
- $0
- Pools using this hook
- 1
- Swaps (24h)
- 0 (0 traders)
- Total swaps
- 0
What it does
This hook sets a dynamic LP fee on each swap before it executes, but the exact fee amounts and which trades pay more or less cannot be determined from the decoded bytecode.
How it works step by step
- Implements beforeSwap, a view hook that runs before each swap on the pool it is attached to
- Exposes a FEE() getter and a poolManager() getter, indicating a constant fee value and a reference to the Uniswap v4 PoolManager
- Calls updateDynamicLPFee(PoolKey, uint24) on the pool manager, so it sets the LP fee used for swaps dynamically
- Other callbacks (initialize, liquidity, donate) are present in the dispatch table but appear to be default no-op pure implementations
- No storage variables were inferred, so the fee logic appears to rely on computed or constant values rather than mutable state
- Swap behaviour
- beforeSwap is a view function that computes an LP fee and passes it to the pool manager through updateDynamicLPFee before the swap executes. Which trades pay more or less cannot be determined from the decoded bytecode alone.
- Liquidity behaviour
- No liquidity callbacks.
- Fee behaviour
- Sets the LP fee dynamically per swap via updateDynamicLPFee, using a FEE value exposed by the FEE() getter. The exact fee formula cannot be determined from decoded bytecode.
- Owner & admin controls
- No admin controls found.
Enabled Uniswap v4 callbacks
beforeSwap
beforeSwap is enabled and used to set the dynamic LP fee for each swap; all other callbacks are present in the dispatch table but are not used for any observed logic.
Security & trust assessment
Risk level: low, estimated (decoded bytecode, low confidence).
Who controls it: No privileged key or admin function was identified in the decoded bytecode, so no centralized control over fees was found.
Risk to user funds: The hook does not appear to take, hold or move tokens directly; it only sets the LP fee through updateDynamicLPFee and returns no balance deltas, though this is inferred from selectors rather than verified source.
Security findings
- [info] Dynamic fee set before each swap: beforeSwap calls updateDynamicLPFee on the pool manager, so the fee applied to swaps is determined by hook logic rather than a static pool fee.
- [info] No storage or admin functions observed: No storage layout was inferred and no owner, pause or upgrade selectors were found, so no privileged key was identified from the bytecode.
- [low] Fee formula not fully decoded: Without source, the logic that determines the fee value cannot be fully verified, so the actual fee range and any bounds are unknown.
Contract details
- Verified source
- No
- Bytecode size
- 2,440 bytes
- Upgradeable proxy
- No
- Detected patterns
- dynamic-fee
Pools using Dynamic fee hook
- USDC / JPYC (Dynamic fee) — 24h volume $0, TVL $1,000, 0 swaps today