Reference · measured on-chain · free
Where your token
can have a pool.
Every row here was read from the program on mainnet, not copied from documentation. Before spending, only one question matters: can this protocol talk to my token?
45 distinct programs, 22 that speak Token-2022 and 12 you can build against without reverse engineering. Not one number here came from documentation — the public docs get it wrong in both directions.
You can create a pool without guessing (12)
IDL published on-chain AND a create-pool instruction. These are the ones you build against without reverse engineering the binary.
| Protocol | Program address | Type | Token-2022 | IDL on-chain | Create pool |
|---|---|---|---|---|---|
| Orca Whirlpool (CLMM) | whirLb…uctyCc | concentrated liquidity | yes | 66 instructions | initialize_pool_v2 |
| Raydium CLMM | CAMMCz…KgrWqK | concentrated liquidity | yes | 38 instructions | create_pool |
| Meteora DLMM | LBUZKh…VaPwxo | discrete bins | yes | 76 instructions | initialize_customizable_permissionless_lb_pair |
| Meteora DAMM v2 | cpamdp…En1sGG | constant product + range | yes | 38 instructions | initialize_customizable_pool |
| OpenBook v2 (order book) | opnb2L…EohpZb | order book | no | 29 instructions | createMarket |
| PumpSwap (pump.fun AMM) | pAMMBa…FMfXEA | constant product | yes | 27 instructions | create_pool |
| Stabble Stable | swapNy…nAXjJZ | stableswap | yes | 19 instructions | initialize |
| Stabble Weighted | swapFp…a2fwHW | asymmetric weights | yes | 13 instructions | initialize |
| Perena | NUMERU…Ekoi5P | stableswap | yes | 22 instructions | create_pool |
| Byreal | REALQq…fxQ5N2 | concentrated liquidity | yes | 35 instructions | create_pool |
| Bonkswap | BSwp6b…epzH8p | constant product | yes | 19 instructions | createPool |
| Guacswap | Gswppe…pBqcE1 | constant product | yes | 20 instructions | createPool |
Curve: the program creates the token (3)
⚠️ They do not accept an existing token. The opening instruction has the mint as a signer, meaning the token is born inside. Measured on all three.
| Protocol | Program address | Type | Token-2022 | IDL on-chain | Create pool |
|---|---|---|---|---|---|
| Raydium LaunchLab | LanMV9…duJ3uj | bonding curve | yes | 27 instructions | — |
| Meteora DBC | dbcij3…uSMaqN | bonding curve | yes | 28 instructions | — |
| pump.fun (curva) | 6EF8rr…BEwF6P | bonding curve | yes | 40 instructions | — |
They exist and work, but would need reverse engineering (30)
No IDL on-chain, or no public create-pool instruction. You can use them; you cannot build against them without each project's own IDL.
| Protocol | Program address | Type | Token-2022 | IDL on-chain | Create pool |
|---|---|---|---|---|---|
| Meteora DAMM v1 | Eo7WjK…Vn5UaB | constant product | no | 26 instructions | — |
| Meteora Vault | 24Uqj9…wBpyTi | yield vault | yes | 14 instructions | — |
| Lifinity v2 | 2wT8Yq…L7aD3c | market maker with oracle | no | 3 instructions | — |
| Woofi | WooFif…cJ1AVb | market maker with oracle | yes | 41 instructions | — |
| Raydium CPMM | CPMMoo…5qKP1C | constant product | yes | no IDL | — |
| Raydium AMM v4 | 675kPX…Ut1Mp8 | constant product | no | no IDL | — |
| Raydium Stable | 5quBto…1Uev3h | stableswap | no | no IDL | — |
| Invariant | HyaB3W…RaJutt | concentrated liquidity | no | no IDL | — |
| Phoenix (order book) | PhoeNi…HGqdXY | order book | no | no IDL | — |
| OpenBook v1 / Serum | srmqPv…ksJtPX | order book | no | no IDL | — |
| Saber | SSwpkE…nZg1UZ | stableswap | no | no IDL | — |
| Crema | CLMM9t…3Sp7tR | concentrated liquidity | no | no IDL | — |
| FluxBeam | FLUXub…HSrm1X | constant product | yes | no IDL | — |
| Sanctum Infinity | 5ocnV1…sgx9kx | stableswap | no | no IDL | — |
| SolFi | SoLFiH…MZxyCe | closed market maker | no | no IDL | — |
| ZeroFi | ZERor4…f4hbZY | closed market maker | no | no IDL | — |
| Obric v2 | obriQD…Nm113y | market maker with oracle | yes | no IDL | — |
| HumidiFi | 9H6tua…N3q6Rp | closed market maker | yes | no IDL | — |
| GoonFi | goonER…7BnS5j | closed market maker | no | no IDL | — |
| Tessera V | TessVd…83GLQH | closed market maker | no | no IDL | — |
| 1DEX | DEXYos…aqPMTm | order book | no | no IDL | — |
| Solayer | endoLN…MybpAT | stableswap | yes | no IDL | — |
| Aldrin v2 | CURVGo…bgs2t4 | constant product | no | no IDL | — |
| Penguin | PSwapM…hGhXkP | constant product | no | no IDL | — |
| Dexlab | DSwpgj…Jtmg6N | constant product | yes | no IDL | — |
| Mercurial | MERLuD…U2HKky | stableswap | no | no IDL | — |
| Cropper | CTMAxx…biyfzh | constant product | no | no IDL | — |
| Token Swap SPL | SwapsV…4U1Szw | constant product | no | no IDL | — |
| Saros | SSwapU…ToDUZr | constant product | no | no IDL | — |
| Step Finance | SSwpMg…y2vLt1 | constant product | — | no IDL | — |
How each row was measured
By reading the program, not the documentation.
Token-2022 was measured by looking for the 32 bytes of the Token-2022 program id inside each protocol's published binary. Presence does not guarantee full support — extensions can still be rejected — but absence guarantees it does not work. That half of the answer already saves you the spend.
IDL on-chain is what separates building from guessing: with it, the instructions and account layouts come from the program itself. Without it, assembling a transaction means reverse engineering the binary or trusting each project's repository.
⚠️ The public documentation gets it wrong in both directions, which is why nothing here was copied from it. Two examples that cost a measurement: Raydium's omits an extension it does accept, and there is an extension Orca accepts that appears in no documentation at all, nor in the JavaScript SDK.