Trading and pricing
Every launch is a canonical Uniswap v4 pool. There is no proprietary curve to reverse-engineer and no custom router.
The pool
Section titled “The pool”| Pair | TOKEN / native ETH |
| Identified by | 32-byte PoolId (no pool address) |
| Fee | Pool LP fee is 0; the launch hook charges the fee |
| Trading fee | 0.25% buys, decaying sell fee with a burned leg, see Fees |
| Liquidity | Single-sided at launch, permanently locked |
| Token decimals | Always 18 |
There are no token-level taxes; the launch token is inert and cannot impose them. The sell fee’s burned leg is charged by the hook inside the swap, not by the token; a plain ERC-20 transfer of the coin costs nothing.
Coins launch tradeable from block one, with one exception: a creator can gate the first minutes (a frozen game round, or a verified-only window). Every gate ends in permanently open trading. See Launch gates.
Coins from earlier generations trade on V3 pools with a different shape; the
API’s dex field says which is which. See Earlier generations.
How price moves
Section titled “How price moves”At launch the whole supply is parked as liquidity over a price range
[P_low, P_high], all on the token side. Price starts at the bottom of that
range. As buyers trade:
- A buy sends the quote asset (ETH or WETH) into the pool and pulls token out.
- Price walks up the range along the concentrated-liquidity curve.
- The quote stays inside the locked position (it is never withdrawn), so the liquidity floor grows monotonically with cumulative net buying.
Because the position is locked forever, that floor cannot be removed. Selling walks price back down the same curve; the pool always has the quote that prior buyers deposited, up to the current price level.
The valuation knob
Section titled “The valuation knob”With the full supply spread over [P_low, P_high], the range and supply are the
“curve shape”, the dial for starting market cap:
- Starting FDV ≈
supply × P_low - Fully-bought-out FDV ≈
supply × P_high
The SDK ships a small set of standard presets that pick sqrtPriceX96,
tickLower, and tickUpper consistent with the
address ordering. Because
the on-chain factory independently enforces the zero-quote-consumed seed, a bad
preset cannot produce a contaminated launch; it reverts.
Routing a trade
Section titled “Routing a trade”Build the swap from the poolKey the API (or the TokenLaunchedV4 event)
provides; the key carries the hook, and the hook is what prices the trade.
Route through any v4-capable router (the canonical UniversalRouter on 4663
works); there is no per-pool address to look up. The token is always
currency1, native ETH sorts first.
For routing the older V3 coins (different routers, different ABIs, a real trap), see Earlier generations.
Slippage and MEV
Section titled “Slippage and MEV”An Open launch is live from block one, so the launch transaction is
MEV-snipeable like any DEX pool. Standard slippage protection applies to every
trade; set amountOutMinimum / price limits as you would on any Uniswap pool.
The newer generations blunt the classic snipe patterns rather than pretending they don’t exist:
- The creator’s own first buy rides inside the launch transaction, so it cannot be front-run; nothing can trade before it fills.
- The decaying sell fee makes buy-block-one-dump-minute-two expensive: the early exit pays the launch-window burn rate.
- A creator can gate the first minutes entirely (Game or Verified only), which replaces the open snipe window with a capped, rule-bound one.
Related
Section titled “Related”- Pricing calculations: deriving price from pool state and swap events.
- Reading token state: the on-chain reads a consumer needs.

