Skip to main content

subscribe_new_tokens - live launches

Live feed of new pool/token creations on the DEXes you pick. Server emits new_token. Pass protocols, any subset of PUMPFUN, PUMPSWAP, METEORA, RAYDIUM, ORCA, BONK (one room per protocol; re-subscribe to change the set).

PUMPFUN: FREE

PumpFun new_token events are delivered at no charge. You can connect with a 0 SOL balance and stay subscribed indefinitely as long as you only request PUMPFUN. Every other protocol on this stream is billed per delivered event (see fees).

ChannelSocket.IO event
Authauth.api_key in the handshake
Emitsnew_token
CostPUMPFUN: free. Others: per event (fees)

Example

Click an icon to toggle it. The example regenerates live, so you can paste it straight into your client.

socket.on("new_token", (n) => {
console.log(`[${n.protocol}] ${n.symbol ?? ''} (${n.name ?? ''}) by ${(n.creator ?? '').slice(0, 4)}`);
// AMM dexes omit name/symbol/uri/creator, so guard for missing fields
});

socket.emit("subscribe_new_tokens", {
protocols: ["PUMPFUN", "RAYDIUM"],
});

Response - new_token

Every DEX you subscribe to emits new_token on each pool/token creation. The fields protocol, mint, pool, decimals, quote, supply and timestamp are always present. The on-chain metadata fields (name, symbol, creator, uri) are only included when the creation instruction actually carries them, so plan for them to be absent (not just empty).

Common quote mints

quote is the mint address of the token the new pool is quoted in (what the launched token trades against). The vast majority of launches are SOL-quoted; compare against these addresses to filter or to label prices correctly:

Quote tokenMint addressWhere you'll see it
WSOL (wrapped SOL)So11111111111111111111111111111111111111112Default quote on every DEX; nearly all launches
USDCEPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1vAMM pools (Raydium, Orca, Meteora, PumpSwap) opened against USDC
USD1USD1ttGY1N17NEEHLmELoaybftRBUSErhqYiQzvEmuBBonk launches on USD1-quoted pools

PumpFun (and Bonk) emit name/symbol/uri inline, so their events are complete:

{
"protocol": "PUMPFUN",
"mint": "3StpvEPanQtd25SvBamVjvyRaawNapjUTmygnVsPpump",
"pool": "Hm9HUNoF3Ua2tSZM1Uzk6HM6tS5LxmR8p7wtxUeYcD6E",
"name": "Mayhem",
"symbol": "Venum",
"decimals": 6,
"quote": "So11111111111111111111111111111111111111112",
"creator": "7ZbfkTHfyeMdXt98sdvJHT2kY9hrYntJm2A5aepK8ypn",
"uri": "https://ipfs.io/ipfs/Qmdq5na6gt6xtEjCS4Lb83yPVCwYTmZ8CKufX1iFPQFE3b",
"supply": 1000000000,
"timestamp": 1779825514
}

Plain AMM pool creations (PumpSwap, Raydium, Orca, and Meteora's AMM pools) are usually opened on a token that already exists, so their create transaction carries no token metadata and those fields are omitted. A Raydium event looks like:

{
"protocol": "RAYDIUM",
"mint": "9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin",
"pool": "58oQChx4yWmvKdwLLZzBi4ChoCc2fqCUWBkwMihLYQo2",
"decimals": 6,
"quote": "So11111111111111111111111111111111111111112",
"creator": "GThUX1Atko4tqhN2NaiTazWSeFWMuiUvfFnyJyUghFMJ",
"supply": 1000000000,
"timestamp": 1779825514
}

Launchpad creations are the exception: when the create transaction mints the token itself (PumpFun, Bonk, and Meteora's Dynamic Bonding Curve), name/symbol/uri/creator are read straight from that same transaction and included. Meteora DBC tokens arrive on the METEORA stream and keep protocol: "METEORA_DBC", so they look complete like a PumpFun event:

{
"protocol": "METEORA_DBC",
"mint": "CRkgM1oyuYpCLjg39xDAyEwiicEE4xr8hXXRhjDEaQRc",
"pool": "B31Kz7nxfPrWSd9avAto6CZfiANN22LKbAW3g3AktbQ",
"name": "market dead send this",
"symbol": "bread",
"decimals": 6,
"quote": "So11111111111111111111111111111111111111112",
"creator": "9RvZ8kgeHVzpc1f3pWn21i51QMXFsLyvXLXp3uqLxPJM",
"uri": "https://meta.uxento.io/data/b9fe1da7-6a1c-4f93-a3fe-a2cd1798ac9f",
"supply": 1000000000,
"timestamp": 1779825514
}

When a token created on PumpFun later migrates to an AMM, the AMM event still omits name/symbol/uri, but the stored token record keeps the original PumpFun metadata. The live new_token event always reflects only what is in the create instruction.

Try it

Notes

  • All subscribed DEXes emit new_token. PumpFun is simply the highest-volume launch source, so it dominates the feed.
  • Launchpad creates carry name/symbol/uri: PumpFun and Bonk inline them, and Meteora DBC tokens (delivered on the METEORA stream with protocol: "METEORA_DBC") have them read from the same create transaction. Plain AMM pool creations (PumpSwap, Raydium, Orca, and Meteora AMM pools) usually open on a pre-existing token, so those keys are omitted. Always null-check them.
  • The new_token event is real-time and reflects only on-chain create data. Off-chain metadata (image, socials) is fetched separately from the token's uri and is not part of this event.
  • For the corresponding migration events (e.g. PumpFun to PumpSwap) see subscribe_migrations.