The Pump.fun bonding curve, in plain arithmetic
A bonding curve prices a token from a formula instead of from a pool of buyers and sellers. There is no counterparty, no order book, and no liquidity in the usual sense. Understanding that changes how you read early price action and explains why the curve is the most expensive phase to trade against.
What a bonding curve actually is
The practical consequence is that early price movement on a Pump.fun token carries less information than it appears to. On an ordinary pair, a rising price means buyers outbid sellers. On a curve, a rising price means tokens were bought, and that is all it means. The same purchase produces the same price movement regardless of who made it or why.
It also means there is a hard ceiling on how much volume the curve can absorb: the supply remaining to be sold. A campaign cannot produce arbitrary volume against a curve that is nearly complete, which is a constraint that does not exist on a pool.
Why the shape matters more than the starting price
For campaign design this is the single most useful fact about curves. The same 1 SOL of buying produces a large price move near the start of the curve and a small one near the end. If your intent is volume rather than price movement, trading against a nearly-complete curve is more efficient because you consume less price impact per SOL of volume produced.
Conversely, if a campaign runs early on a fresh curve, the price effect is pronounced and the SOL cost per unit of volume is higher, because your own buying works against you. That is price impact rather than a fee, so it appears nowhere in a fee table while being one of the largest real costs. Full model in the cost breakdown.
Why curve transactions fail so often
Measured in our most recent block sample, 92.4% of transactions touching the Pump.fun bonding curve program failed, against a network-wide rate of 27.9%. Every one of those failures paid its fee and produced no volume. Method and per-program tables on the measurement page.
This is a structural property of a single shared account under contention, not a defect in anyone's software. It has two implications worth acting on. First, budget curve campaigns from attempted transactions rather than intended ones, because the gap is large. Second, a fleet trading the same curve in the same slots contends with itself as well as with outsiders, so spreading trades across slots reduces both failures and cost. Mechanism in priority fees.
What graduation changes
Migration is also the moment new attention tends to arrive, since graduation is itself a visible event. A campaign that stalls during the handoff goes flat exactly when it matters most, which is why automatic handoff is a routing requirement rather than a convenience. Post-graduation configuration is covered in Raydium routing.
One asymmetry worth planning around: the curve has a volume ceiling set by remaining supply, while a pool has one set by depth and your tolerance for price impact. A campaign sized for the curve may be either impossible or trivially small after migration, depending on how deep the resulting pool is.
Running a campaign against the curve rather than reading about it is covered on the Pump.fun volume bot page, and the half that begins at graduation on PumpSwap routing. The venue-by-venue picture for a general Solana volume bot campaign, including Raydium, Meteora DLMM and Orca Whirlpools, is on the overview.