LaunchpadHook on Arc
Uniswap v4 Hook Contract 0x47e7936ae9891e61c5123db720593c05de7120cc on Arc · Launchpad · Verified contract
- Volume (24h)
- $105.61K
- Value locked (TVL)
- $127.55K
- All-time volume
- $17.42M
- Pools using this hook
- 9
- Swaps (24h)
- 1,930 (275 traders)
- Total swaps
- 155,166
What it does
A Uniswap v4 launchpad fee hook that charges each swap a creator-chosen ETH fee, splits it between the creator, treasury, and an automatic compounding floor, and applies optional decaying anti-sniper and flipper windows.
How it works step by step
- Charges every swap a per-pool fee taken in the quote asset (ETH or ERC-20) on the specified or unspecified side depending on swap direction and exactness
- Applies optional linear decaying launch windows: a sell window for flipper taxes and a shorter buy window for sniper taxes, both one-way and cancellable
- Imposes a flat 20% graduation surcharge in both directions for the first 2 seconds after pool initialization while the operator switch is on
- Splits accrued fees into a creator leg (minimum 40% gross), a creator-committed compounding leg, and a treasury remainder
- Automatically deploys the compounding leg as single-sided liquidity bands below the current price when accrued fees cross the settle threshold, with no keeper required
- Restricts pool initialization to allowlisted migrators and enforces the launchpad key shape
- Swap behaviour
- Buys and sells pay the pool's current fee (base plus any active launch window) taken in the quote asset on the appropriate side via beforeSwap or afterSwap return deltas; a 20% surcharge applies for 2 seconds after graduation if enabled. Accrued fees settle and compound inline once they exceed the threshold.
- Liquidity behaviour
- No liquidity callbacks are enabled. Accrued fees can be deployed as single-sided compounding liquidity bands below the current price, owned by the hook with no removal path.
- Fee behaviour
- Each pool pays a creator-chosen base fee from a fixed menu (0.3% to 10%), taken in ETH on the quote side for both buys and sells, with optional linear decaying launch windows for sells (5-20%) and buys (5-20%), and a flat 20% graduation surcharge in both directions for 2 seconds after graduation while the operator switch is on. Fees split between creator (floor 40% gross), a compounding share the creator can commit (0-50% of their leg), and treasury remainder. Fees only ever decrease over a coin's life.
- Owner & admin controls
- Owner (two-step Ownable) controls money routing: migrator allowlist, treasury, the live creator share (floor 40%), mandatory commit floor for new launches, mechanism-wide compounding pause, pass factory, immediate creator handoff, cancelling creator recoveries. Operators (hot keys) can tune cadence and bounded dials: settle threshold, default fee menu value, graduation surcharge on/off, per-pool fee cuts and window cancels, and propose creator recovery with a 24h delay (valid 7 days). Creators can re-route their own creator leg, propose handoffs, lower their fee, cancel windows and raise their compound commit (one-way).
Enabled Uniswap v4 callbacks
beforeInitialize, beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta
beforeInitialize: enforces migrator-only, launchpad-shaped pool initialization and stamps the decay clock. beforeSwap: takes the fee on the specified side for buy exact-in and sell exact-out swaps. afterSwap: takes the fee on the unspecified side for the other quadrants and triggers inline settle and compound when accrued fees pass the threshold. beforeSwapReturnDelta and afterSwapReturnDelta: return the fee as a positive hook delta so the swapper pays the hook, with matching take calls.
Security & trust assessment
Risk level: medium (verified source, high confidence).
Who controls it: The owner can change the treasury address, set the creator share and commit floor, pause compounding, and cancel recoveries; the owner can also move any pool's creator instantly via setCreator. Operators can propose creator redirects (delayed 24h, cancellable by owner), cut fees, set the settle threshold, and toggle the surcharge. The contract is immutable (no proxy); the hook address is baked into every PoolKey, so parameter changes are limited to the exposed setters.
Risk to user funds: The hook holds ETH or quote tokens accrued from fees and compound pots pending settlement, and can deploy the compound portion as locked liquidity in the pool. It can take up to the configured fee on each swap and cannot exceed the pre-declared menu and surcharge caps. Funds accrued in owed balances can only be claimed by the designated recipients or the treasury.
Security findings
- [medium] Creator fee stream redirectable by privileged keys: The owner can instantly redirect a pool's creator leg via setCreator, and operators can propose a redirect that executes after 24 hours unless the owner cancels it.
- [low] Fees held in contract until withdrawn: Accrued fees are credited to pull ledgers (owed) rather than pushed inside swaps; the treasury and creator balances are withdrawable only via collect, withdrawOwed or payOut, and failed native pushes stay on the ledger. Compound deployment reverts are contained by a try/catch so a failing compound does not brick swaps.
- [low] Live split and pause levers: The owner can set creatorShareBps (floor 40%) and treasury at any time, and the change applies to already accrued but unsettled fees. The surcharge toggle and compounding pause are also live switches.
- [info] Return-delta fee mechanism: The hook takes fees from the pool manager via take and returns matching positive hook deltas, so user swaps incur the fee and the hook balance nets to zero each swap.
Contract details
- Verified source
- Yes (LaunchpadHook)
- Compiler
- solc 0.8.36+commit.8a079791
- Bytecode size
- 21,145 bytes
- Upgradeable proxy
- No
- Detected patterns
- access-control, launchpad, liquidity-management, moves-currency, ownable, return-delta, self-unlock
Pools using LaunchpadHook
- USDC / FAZE (0.00% fee) — 24h volume $65.90K, TVL $78.22K, 1,113 swaps today
- USDC / AF (0.00% fee) — 24h volume $39.28K, TVL $33.27K, 812 swaps today
- USDC / BARK (0.00% fee) — 24h volume $146, TVL $3.35K, 1 swaps today
- USDC / FADE (0.00% fee) — 24h volume $144, TVL $3.09K, 3 swaps today
- USDC / MLG (0.00% fee) — 24h volume $141, TVL $3.35K, 1 swaps today
- USDC / FCAT (0.00% fee) — 24h volume $0, TVL $3.34K, 0 swaps today
- USDC / FAZE (0.00% fee) — 24h volume $0, TVL $1.46K, 0 swaps today
- USDC / MLG (0.00% fee) — 24h volume $0, TVL $1.47K, 0 swaps today
- USDC / APPROVE (0.00% fee) — 24h volume $0, TVL $6.41, 0 swaps today