PonypadHook on Ethereum

Uniswap v4 Hook Contract 0x60ba0b87055ad06d5430bca353140c85c586e888 on Ethereum · Launchpad · Verified contract

Volume (24h)
$12.99K
Value locked (TVL)
$0
All-time volume
$12.99K
Pools using this hook
2
Swaps (24h)
76 (58 traders)
Total swaps
76

What it does

A bonding-curve launchpad where buys and sells pay a curve fee of up to 5% in ETH split between creator and treasury, then graduate into a 1% fee pool whose liquidity the owner controls and can withdraw.

How it works step by step

  • Runs a bonding-curve token launchpad: each new token (1 billion supply) gets an ETH/token pool where the hook itself fills all swaps from a virtual-reserve curve holding 800 million tokens.
  • Charges a curve fee in ETH on buys and sells (set per launch, capped at 5%), split between the token creator and the protocol treasury and claimable by them later.
  • When the curve sells out, it graduates the token by creating a full-range 1% fee Uniswap v4 pool with the raised ETH and 200 million tokens; later swaps on the original pool are routed to that graduated pool.
  • The graduated LP position is owned by the hook and controlled by the owner, who can collect its fees or withdraw the whole position to any address.
  • Third-party liquidity additions to the curve pool are blocked; Uniswap protocol fees, if switched on, are multiplied and sent to the protocol fee jar.
Swap behaviour
Before graduation every swap is filled by the hook's bonding curve, with a curve fee of up to 5% taken in ETH on both buys and sells; after graduation swaps are forwarded to the graduated 1% fee pool. Any Uniswap protocol fee set on the pool is additionally taken from the unspecified side and sent to the protocol fee jar.
Liquidity behaviour
Adding liquidity to the curve pool is always rejected, so only the hook's own reserves back trades. Remove-liquidity callbacks are disabled; the graduated pool's LP position belongs to the hook and only the owner can withdraw it.
Fee behaviour
Curve-phase fee is fixed per launch at creation, from 0% to a hard cap of 5%, charged in ETH on both buys and sells and split between creator (0–100% share) and treasury as claimable ETH. Graduated pool trades pay a 1% LP fee that accrues to the hook-owned position and is collectable by the owner.
Owner & admin controls
The owner can set the treasury, graduation ETH target (0.1 to 10,000 ETH), curve fee (max 5%) and creator share for future launches, set the graduation guard once, and collect fees from or fully withdraw (migrate) any graduated pool's liquidity position to any address.

Enabled Uniswap v4 callbacks

beforeInitialize, beforeAddLiquidity, beforeSwap, beforeSwapReturnDelta

beforeInitialize: only allows the hook itself to create pools; beforeAddLiquidity: blocks outside LP deposits; beforeSwap: fills trades from the bonding curve or routes to the graduated pool; beforeSwapReturnDelta: replaces the pool's own swap math with the hook's curve amounts and protocol fee.

Security & trust assessment

Risk level: high (verified source, high confidence).

Who controls it: A single owner (two-step transfer) controls launch config and fully controls every graduated liquidity position, including withdrawing it to any address. Fees cannot exceed 5% on the curve.

Risk to user funds: Traders pay up to 5% curve fee plus any protocol fee; fee balances are claimable only by creator and treasury. All post-graduation liquidity is hook-owned and can be pulled by the owner at any time, so there is no outside LP principal but traders rely on the owner not removing the pool's liquidity.

Security findings

  • [high] Owner can withdraw graduated liquidity: migrate lets the owner remove the entire graduated pool position (all ETH raised plus 200 million tokens) and send it to any address, which would leave graduated token traders without that liquidity.
  • [info] Curve fee capped at 5%: Curve fees are bounded at 5% per trade and are fixed per launch once created; config changes only affect new launches.
  • [info] Curve reserves held by hook: Before graduation the hook holds the curve ETH and tokens as PoolManager claims, and sells are paid from those reserves at curve prices.

Contract details

Verified source
Yes (PonypadHook)
Compiler
solc 0.8.26+commit.8a97fa7a
Bytecode size
23,210 bytes
Upgradeable proxy
No
Detected patterns
aggregator, erc20, erc6909-claims, fee-sharing, launchpad, moves-currency, ownable, return-delta, self-unlock

Pools using PonypadHook