Jupiter and routing explained, what happens when you swap
What an aggregator does, why one swap can touch several pools, how routing affects your price, and what it means for a coin that graduated.
You press swap, one signature, and tokens arrive. Underneath, that single action may have touched 3 different pools across 2 exchanges.
That's routing, and understanding it explains several things about the price you got.
What an aggregator does
It shops for you.
One pair often trades in several places at once, and each venue quotes a slightly different price depending on how deep its pool happens to be. Jupiter queries them, computes which combination gives the best output for your input, and builds a transaction that executes it.
Your funds never sit with the aggregator. It constructs the route, you sign it, and settlement happens on the underlying pools.
Why a route gets split
Because price impact isn't linear.
Push 40 SOL through a single pool and the last portion fills considerably worse than the first, since every unit moves the reserve ratio further along. Split that same 40 SOL across 3 pools and each absorbs a smaller share, so your average price improves.
So a large swap shows a route diagram with several branches while a small one shows a straight line. Nothing exotic is happening. The router is spreading impact.
Where the price you see comes from
Two numbers, and people conflate them.
A quote is what the route computes right now, given current reserves. Your fill is what actually arrived, after those reserves changed between quote and execution.
Gap between them is slippage, and it exists because other people traded in the same window. Your tolerance setting decides how large a gap you'll accept before the transaction reverts. What is slippage covers picking a number, and sandwich attacks explained covers what happens when that number is too generous.
What it means for your coin
Three things, and the first one surprises creators.
Routing only exists after migration. During the curve phase there's one venue, which is the curve itself, so there's nothing to route between. Trades go through the launchpad program directly. Bonding curve vs AMM covers the difference.
Thin pools route badly. If your migrated pool holds very little, the router either gives poor prices or skips it in favour of a deeper path, and traders feel that as your coin being expensive to trade.
Appearing in the router matters. Once a pool exists with reasonable depth, your token becomes swappable from any interface that uses Jupiter, which is most of them. That's real distribution you get for free.
Reading a route
Worth doing once, on your own coin, after graduation.
Open a swap interface, enter an amount, and look at the route display before signing. It shows which pools got used and in what proportion, plus the price impact for that size.
Try 1 SOL, then 10, then 40. How fast does impact climb? That tells you more about your pool's real depth than any liquidity figure on a screener, because you're running the same calculation a buyer's trade will run through. What is liquidity covers why depth decides everything downstream.
Priority fees and why swaps fail
One practical note, since it's the most common complaint.
During congestion, a transaction without an adequate priority fee sits unprocessed until it expires. The swap didn't fail on price, it never got included. Most interfaces expose a fee setting, and raising it during busy periods costs fractions of a cent and saves the retry.
Solana RPC errors covers the other failure modes and how to tell them apart.
What routing means for your pool
An aggregator finds the best combination of pools for your trade and splits large orders to reduce impact. It matters to your coin only after migration, and how well your pool routes depends on its depth. Test yours with 3 different order sizes and you'll learn more in 2 minutes than the liquidity figure tells you.
Frequently asked
No. It routes orders across DEXes and never holds your funds. The trade settles on whichever pools it selected.
Splitting an order across pools uses more compute and slightly more in fees, and it usually returns a better price than a single-pool route would.
After migration, once a pool exists with enough liquidity to route through. Bonding curve trades happen on the launchpad instead.
Everything in this guide describes mechanics that settle on Solana mainnet, so you can check any of it yourself. Mint addresses, swap signatures, curve progress and wallet counts are all public, and an explorer will disagree with us if we are wrong.
Curvegrad sells a volume service, and guides that touch on what a campaign does say so in the text rather than in a footnote.
- Solana mainnet transaction history, read through the standard RPC methods
- Pump.fun bonding curve and PumpSwap pool accounts as they appear on-chain
- Public block explorers, where every claim here can be verified against a real mint
- Campaigns run through our own engine, which is where the operational detail comes from