When a Pump.fun coin graduates, it gets a PumpSwap liquidity pool, and that pool shows a liquidity number. On many graduated coins, that number overstates the amount you can actually trade against. A PumpSwap pool prices trades on a number it calls its "effective reserves" total, which is the real tokens sitting in the vault plus a synthetic amount the platform credits to the pool at migration. So the depth a coin page, a third-party tracker, or even Pump.fun's own data feed shows you can sit well above the depth that fills your order. The gap comes from that synthetic credit set at migration, it widens as a pool ages, and the real number sits in the pool's raw vault where anyone can read it.
What the pool actually prices on
A PumpSwap pool holds two balances that matter here: the real quote vault, which is the SOL or USDC actually in the pool, and a separate field the venue labels the pool's virtual quote reserves. The venue's own pricing rule adds the two together and quotes on the sum. Its integration notes state it plainly: buys and sells are priced on effective quote reserves, defined as the raw quote-vault balance plus the pool's virtual quote reserves, and integrators are told to quote on that sum rather than the raw vault (source: PumpSwap integration notes). The base side, the coin itself, is unchanged and still uses the real token balance.
The effect is that the pool behaves as if it holds more quote currency than it does. Price impact is computed against the larger, effective number, so the quoted depth looks gentler than the real vault can honor, while the SOL you can actually withdraw is only what sits in the real vault. That is the whole of the discrepancy this page is about: shown depth is not tradeable depth, and the difference is the synthetic amount.
Where the synthetic amount comes from
The synthetic amount is created all at once at graduation. The migration transaction that moves a coin from the bonding curve to a PumpSwap pool does two things in one step. It moves most of the graduated SOL into the pool's real vault, and it diverts a fixed slice, about 17.58 SOL on a SOL-paired pool, into a separate per-pool vault, then credits the pool that same amount as its virtual quote reserves. A follow-on routine, which the platform brands as BOOST Mode, then spends that separate vault over roughly five minutes, buying the coin out of the pool and permanently burning it. The instructions that do this are named in the venue's public program interface (source: PumpSwap program IDL). What happens to a holder in those first five minutes after graduation is covered in Pump.fun graduation explained.
The number is denominated in whatever asset the pool is paired against. A SOL-paired pool carries roughly 17.58 SOL of virtual reserves; a USDC-paired pool carries about 2,516 USDC, a raw figure orders of magnitude larger simply because a dollar is worth far less than a SOL. Always convert the two figures to a common currency before comparing them across pairings, or a stablecoin pool will look enormously deeper than it is.
It is set once, and the gap grows as a pool ages
The synthetic amount is fixed at migration and does not move as the real vault drains. Take a live example. A coin whose pool migrated on August 30, 2026 was credited about 17.58 SOL of virtual reserves at graduation, when its real vault held roughly 67 SOL, so the synthetic slice was about a quarter of the real depth. A week later, on September 6, 2026, the virtual reserves still read the same 17.58 SOL to the lamport, while the real SOL vault had fallen to about 13.2 SOL through ordinary trading. The fixed synthetic amount is now larger than the entire real vault, so the pool's effective reserves are more than double what you could actually trade against. You can read both numbers straight off the pool account (source: the pool on a Solana explorer).
Two claims that circulate about this field are wrong and worth dropping. The BOOST status shown on a coin record only mirrors an on-chain amount set during migration; it does not cause the effect. And the synthetic reserve holds steady as the pool trades: it is set once and stays put, a rare and tiny rise has been observed, but it stays flat as SOL leaves the vault. The takeaway for a trader is the opposite of reassuring: the gap between shown and real depth is widest on older, drained pools, exactly the ones a latecomer is most likely to be trading.
If you would rather size a position on a deep, transparent order book than parse a pool's raw vault, BloFin lists the coin as PUMP/USDT, where the quoted book is the same book that fills your order. You can see what that position costs on the BloFin fee schedule before you place it.
The gap between the docs and the chain, and how to check
Pump.fun's own materials understate all of this, in three different directions. Its integration notes give the correct pricing rule but still state that the virtual reserve is zero on every pool, which stopped being true for coins that graduated after a cutoff on July 21, 2026. Its bonding-curve documentation tells readers the platform does not add or remove pool liquidity after graduation, yet the migration transaction removes about 17.58 SOL into the separate vault in the very same step (source: Pump.fun bonding curve docs). And Pump.fun's own pool data feed reports the effective, synthetic-inflated figure as the pool's quote reserves and derives a dollar liquidity number from it, so even the first-party API overstates depth (source: Pump.fun swap API pool record). The lesson is to verify liquidity by reading the pool's raw quote vault on chain, never from a docs page or a headline liquidity number.
This mechanic is not universal. It applies to non-mayhem coins that graduated through the launchpad after the July 21, 2026 cutoff. Coins launched under the volatility agent, the mayhem coins, are excluded and keep quoting on their raw vault, and so do pools that were not created by the launchpad. The fee a graduated coin charges as it matures is a separate subject, covered in PumpSwap fee tiers explained, and who actually owns and controls a graduated pool is covered in PumpSwap canonical pool ownership.
Before you size a trade on a graduated coin, treat the liquidity number on the page as a ceiling rather than the truth, and read the raw quote vault to see what the pool can really pay out. What thinner-than-advertised depth does to your actual fill is the subject of Pump.fun price impact and slippage, and whether a coin's trade panel even routes to its real pool is covered in trading tokens Pump.fun did not launch.
Looking to trade PUMP? To get started, you'll need to first create a BloFin account, fund your account with cryptocurrency, and navigate to the PUMP/USDT Spot trading page or PUMPUSDT Perpetual page.
Frequently asked questions
What are effective reserves on a PumpSwap pool?
Effective reserves are the number a graduated pool actually prices trades on. They combine the real quote-vault balance, the SOL or USDC held in the pool, with a synthetic figure the platform sets at migration. The venue instructs integrators to quote on that combined total rather than on the raw vault alone, so a trade's price impact is measured against more depth than the pool can really pay out.
Why is the liquidity shown on a graduated coin higher than the SOL in the pool?
Because the shown number usually includes the synthetic component. A graduated pool is credited a fixed synthetic amount at migration, and the platform's own data feed reports the effective figure, real plus synthetic, as the pool's quote reserves. It then derives a dollar liquidity number from that. The withdrawable balance is only the real vault, so the headline liquidity overstates what you can trade against.
Does the synthetic amount go down as people trade?
No. It is set once at migration and does not track the vault as SOL leaves. In a live example, a pool credited about 17.58 SOL of virtual reserves at graduation still read the same figure a week later, while its real vault had dropped from roughly 67 SOL to about 13.2 SOL. A rare and tiny rise has been seen, but the amount does not fall with trading, so the gap between shown and real depth is widest on older, drained pools.
Which coins carry this synthetic component?
It applies to non-mayhem coins that graduated through the Pump.fun launchpad after a cutoff on July 21, 2026. Coins launched under the volatility agent, the mayhem coins, are excluded regardless of when they migrated, and pools that were not created by the launchpad are outside the rule too. Those pools keep quoting on their raw vault, with no synthetic amount added.
How do I check a pool's real liquidity myself?
Read the pool account on a Solana block explorer and look at the raw quote-vault balance, the actual SOL or USDC in the pool. That is the depth you can trade against. Treat any liquidity figure from a docs page, a tracker, or the platform's headline number as a ceiling, and compare it to the raw vault before you size a trade.
Researched and written by the BloFin Academy editorial team with AI-assisted drafting. Primary sources are the PumpSwap integration notes and program IDL, Pump.fun's bonding-curve documentation and swap API, and the pool account on a Solana explorer. All facts independently verified against cited documentation current as of September 2026. On-chain figures are described from public data as of the date shown and change continuously.
This article is for informational and educational purposes only. It is not financial, investment, or trading advice. Trading tokens on decentralized venues involves substantial risk of loss. Do your own research and consider your own circumstances before trading.
