Raydium CLMM vs CPMM for a volume bot

Saying a token is "on Raydium" does not say much. Raydium runs three separate swap programs with different maths, different fee behaviour and noticeably different failure rates, and a volume campaign that treats them as interchangeable will overpay on at least one of them. This page explains what actually differs between AMM v4, CLMM and CPMM, shows what each one costs in a measured sample, and gives you a way to tell which pool your own pair is in before you commit a budget.

Volion Research Updated Jul 30, 2026 7 sections

Raydium is three programs, not one

AMM v4 is the original constant-product pool, where liquidity is spread evenly across every possible price. CLMM is concentrated liquidity, where providers pick the price range they cover. CPMM is the newer standard pool, constant-product like v4 but rebuilt without the OpenBook market requirement and with Token-2022 support. Each has its own program id on chain, which is how our measurement tells them apart.

The distinction is not academic. It determines how much a given trade moves the price, how likely that trade is to fail, and what a sensible trade size looks like. Two tokens both described as "trading on Raydium" can behave completely differently under an identical campaign.

AMM v4 is the pool most people picture. Liquidity sits on a constant-product curve, depth is spread across the entire price range, and the pool can quote any price. It is predictable and forgiving, and it is also capital inefficient, which is why liquidity providers increasingly prefer the alternatives.

CLMM lets a provider concentrate their capital in a narrow band around the current price. That produces far better depth where trading actually happens, at the cost of leaving other prices uncovered. When price leaves the covered band, the pool behaves as though liquidity has vanished, because for that price it has.

CPMM returns to constant-product maths but removes the friction v4 carried. Creating a v4 pool required an OpenBook market, an expensive and slow step. CPMM pools can be created directly, and they support Token-2022 tokens that v4 cannot handle. For newly launched tokens this is increasingly the default landing spot.

What each Raydium program actually costs

The table reads finalized mainnet blocks directly, counting every transaction that touched each Raydium program, the fee it paid, and whether it succeeded. Cost per landed swap is the median fee divided by the success rate, because a failed swap still pays.
ProgramSampled txFailure rateMedian feeCost per landed swap
Raydium AMM v4 low sample1080%12,60463,020
Raydium CLMM low sample4965.3%10,57030,461
Raydium CPMM low sample1656.3%5,12911,737
Raydium programs measured Sep 15, 2026 at 4:02 AM UTC across 1 finalized mainnet blocks. Fees in lamports.

One honest caveat before the numbers are used for anything: in the current window Raydium AMM v4 (10 transactions) and Raydium CLMM (49 transactions) and Raydium CPMM (16 transactions) had too few transactions to support a conclusion. A median computed from a handful of swaps is a description of those swaps, not of the program. We mark those rows rather than quietly presenting them as equivalent to the well sampled ones.

What is worth noticing is that the differences here are not driven by the fee. Base fees are identical everywhere on Solana at 5,000 lamports per signature. The gaps come from priority fees, which reflect how contested each program is, and from failure rates, which reflect how sensitive each design is to price movement between quote and execution.

The wider picture across all venues, not just Raydium, is on which Solana DEX is cheapest for a volume bot, and the full fee percentile distribution is on the measured transaction costs page.

Why concentrated liquidity fails more often

A CLMM pool holds liquidity in ranges chosen by providers. If the price moves outside the range you were quoted against, or if the tick you are trading into is thinner than the aggregate figure suggested, the swap fails or fills at a much worse price. Constant-product pools cannot have this problem, because their liquidity covers every price by construction.

The failure mode is specific and worth understanding. You fetch a quote, the quote is computed against the liquidity currently in range, and between that moment and execution someone else trades, moving the price toward or past a range boundary. Your swap now needs liquidity that is not there at the price you signed for, so the slippage check rejects it.

This gets worse with trade size, and much worse on tokens whose providers have concentrated tightly. A tight range means excellent depth in normal conditions and a cliff edge just outside it. Aggregate TVL tells you nothing about where that edge is.

For a volume campaign the consequence is straightforward: on CLMM pools, smaller trades are not merely cheaper, they are more likely to land at all. This is one of the few places where the cautious setting and the cheap setting are the same setting.

Raising slippage tolerance masks the problem and creates another, because a wider tolerance is a wider window for someone to profit at your expense. That trade-off is covered in sandwich MEV protection.

When your token is on CPMM and what it means

CPMM pools are constant-product, so they behave like AMM v4: depth spread across all prices, no ranges to fall out of, and failures driven by ordinary price movement rather than by liquidity structure. If your token launched recently or uses Token-2022 extensions, CPMM is the likely home for its liquidity.

For volume generation this is the friendliest of the three designs. There is no range to leave, so failures come only from genuine price movement, and price impact is a smooth function of trade size rather than a step at a boundary. Predictability is worth more to a campaign than the last few basis points of quoted price.

The catch is depth. A new CPMM pool often has thin liquidity simply because it is new and nobody has provided much yet. Constant-product maths handles thin liquidity gracefully in the sense that it never fails for structural reasons, but it will move the price hard on any trade that is large relative to the pool. Graceful failure is replaced by expensive success, which is worse if you are not watching for it.

So the rule for CPMM is the opposite of the rule for CLMM. On CLMM, size down to stay inside the range. On CPMM, size down to avoid moving the price. Same instruction, entirely different reason.

How to tell which pool your token is in

Look at the program id the swaps are executing against, not at the pool name. Open any recent swap for your pair on a block explorer and read the program invoked. That id identifies the program unambiguously, which is exactly what our measurement does at scale rather than guessing from names.

Three practical checks, in order of reliability:

  1. Read the program id from a real swap. Open a recent transaction for your pair and look at which program executed the swap. This is definitive, because names can be reused and aggregator interfaces hide the venue entirely.
  2. Check whether depth changes with price. Request quotes for several sizes. If price impact grows smoothly, you are on a constant-product pool. If it is flat and then jumps sharply, you are crossing a range or bin boundary and you are on a concentrated design.
  3. Check the token standard. Token-2022 tokens cannot be in a v4 pool at all, which narrows the answer immediately.

A token can have pools on several programs at once, and often does. In that case the question is not which pool exists but which one has real depth at the current price, since that is where volume will actually land. When you enter a token address in the dashboard, this resolution happens automatically: it finds where liquidity actually sits rather than asking you to choose a venue by name.

What this changes in a campaign

Pool type changes three settings: trade size, slippage tolerance and retry policy. Concentrated pools want smaller trades and tolerance set from observed movement rather than a default. Constant-product pools tolerate larger trades but punish them with price impact instead of failures.
  • Trade size. On CLMM, size to stay well inside the active range. On CPMM and v4, size to keep price impact invisible. Both point to smaller trades than most people start with, and smaller trades also produce more distinct transactions per SOL spent, which is what a chart actually reflects.
  • Slippage. A tolerance that works on a deep v4 pool will fail constantly on a tightly concentrated CLMM pool. Set it from the pair's observed per-block movement, not from a number carried over from another token.
  • Retries. A CLMM failure caused by leaving a range will repeat until the price returns or the range is rebalanced. Retrying immediately burns fees on a condition that has not changed. Backing off and re-quoting is cheaper.
  • Timing. Concentrated pools are most fragile when price is moving fast, which is also when campaigns are most tempting to run. Running through genuine volatility on a CLMM pool is the most expensive combination available.

The relationship between transaction count and what a chart displays is covered in makers versus volume, and what all of this does to a budget is worked through in the cost breakdown. To put actual numbers against your own token, the calculator takes a target volume and returns cost at current measured rates.

So which one should you run volume on

Given a genuine choice, a well provisioned constant-product pool is the better venue for a volume campaign: no ranges to fall out of, smooth price impact, and failures that come only from real price movement. CLMM is preferable when it is where the depth is, which for established pairs it often is. The pool with liquidity beats the pool with the nicer theory every time.

In practice the choice is usually made for you, because liquidity is where it is and volume generated away from it moves the price instead of the chart. What you genuinely control is how you trade into whichever pool your token lives in, and that is where the measured differences above become actionable rather than academic.

The one decision that is genuinely yours arises when a token has meaningful depth on more than one Raydium program at once. Then, compare cost per landed swap rather than quoted fee, check depth at the current price rather than aggregate TVL, and prefer the constant-product pool when the two are close. That is the order our routing follows, using the same measured inputs published on this page rather than a fixed preference for one venue, and the reasoning behind it is set out on the Solana volume bot overview.

For the broader comparison across every venue we track, see which Solana DEX is cheapest for a volume bot. For Raydium-specific routing behaviour, see Raydium volume bot routing.

Questions

What is the difference between Raydium CLMM and CPMM?
CLMM is concentrated liquidity: providers choose a price range to cover, giving excellent depth near the current price and none outside it. CPMM is a constant-product pool where liquidity covers every price evenly. CLMM offers better pricing in normal conditions and fails more often when price moves; CPMM is more predictable and less capital efficient.
Which Raydium pool type is cheaper for a volume bot?
Cost per landed swap is the figure that matters, and it changes with conditions. The measured table on this page shows median fee and failure rate for each program so you can do the division yourself rather than trust a fixed ranking. As a rule, constant-product pools produce fewer structural failures, which usually makes them cheaper per swap that lands.
Why do my Raydium swaps keep failing on a pool with high TVL?
On a CLMM pool, aggregate TVL says nothing about depth at your specific price. Liquidity sits in ranges chosen by providers, so a pool can hold a large total and be thin exactly where you are trading. When price moves outside the covered range, swaps fail even though the pool looks deep.
Can one token have pools on all three Raydium programs?
Yes, and many do. What matters is not which pools exist but which one holds real depth at the current price, because that is where volume will actually land. Volume generated in a shallow pool moves the price rather than producing a useful chart.
Does Raydium CPMM support Token-2022 tokens?
Yes. Token-2022 support is one of the reasons CPMM exists, alongside removing the OpenBook market requirement that made creating an AMM v4 pool slow and expensive. Tokens using Token-2022 extensions cannot be placed in a v4 pool at all.
Should I raise slippage to stop CLMM failures?
It reduces failures and widens the window someone can profit inside at your expense. The better fix is smaller trades, since on concentrated pools a trade small enough to stay well inside the active range both costs less and lands more often.