Why your liquidity shows as zero

A liquidity figure reading zero is alarming and frequently wrong. The capital may be intact, sitting in a pool the display cannot read or in a position that has moved outside the range it was placed in. Six causes, and each leaves a different trace.

Reviewed 14 September 2026 Troubleshooting Pool state By the Solana Volume Bot Pro team

First, establish whether the money is actually gone

Before diagnosing a display problem, rule out the situation that is not one. This takes under a minute and it determines whether the rest of the page is relevant.

Find the pool address and open it in an explorer. A pool holds token accounts on both sides of the pair, and those balances are the ground truth. If they hold real amounts, the capital exists and you have a reading problem. If they are empty, the liquidity was withdrawn and the rest of this page will not help.

Doing this first matters because the two situations require opposite responses. One is a data issue to work through calmly. The other is an event your holders need to hear about from you rather than from somebody else, and the window in which that distinction matters is measured in hours.

Six reasons for a zero reading

CauseIs the capital there?How to confirm
WithdrawnNoPool balances are empty
Range no longer covers priceYesPosition exists, price outside bounds
Looking at the wrong pairYes, elsewhereToken page lists another pair with volume
Venue not indexedYesTrades exist on an unfamiliar program
Unpriceable quote assetYesPool quoted against something obscure
Never had meaningful depthBarelyBalances are tiny but non-zero

Only the first row is an emergency. The other five are display or structure problems, and four of them are situations where a real buyer would still be able to trade if they found the right pool.

The range problem

This is the cause people find most confusing, because the money is genuinely present and genuinely unavailable at the same time.

On a concentrated liquidity pool, providers place capital inside chosen price bounds. Inside those bounds the pool is deep. Outside them, that capital contributes nothing to trading at the current price, even though it remains in the position and appears in some totals.

When the price drifts past every active range, the practical depth collapses while the nominal capital stays. Different interfaces handle this differently: some report the total, some report usable depth at the current price, and the disagreement between them is what produces the impression that one of them is broken. Neither is; they are answering different questions. The concentrated liquidity explainer covers the mechanism and why a well funded pool can be empty where it counts.

The reassuring part is that this is reversible without anyone acting. If price moves back inside a range, that position becomes active again and depth returns.

Reading the wrong pool

The second most common cause, and it produces a zero reading that is entirely accurate about a pool nobody is using.

Screeners index pools rather than tokens. A token can have several pairs, and the one you have bookmarked may not be the one holding liquidity today. This happens automatically after a launchpad migration, where liquidity is seeded into a new pool at a new address and the old pair keeps existing with nothing in it.

The check is to open the token-level page for the mint rather than a pair page, and look at how many pairs exist and which one carries volume. That single step resolves a large share of reports in this category, and the same confusion produces the related problems covered in the missing volume guide.

There is a fourth situation in this family worth separating because it is neither a display problem nor a withdrawal. Liquidity can be genuinely present, correctly reported, and provided by somebody other than you. Pools accept deposits from anyone, so a token's depth is not necessarily under the team's control, and a third party who seeded a position can remove it whenever they choose. A liquidity figure that dropped sharply without anyone on your side acting usually means exactly this, and it is worth knowing because it changes what you can promise about depth going forward.

What to check, in order

  1. Open the pool address and read the token balances on both sides. Ground truth first.
  2. Open the token-level page and count how many pairs exist for the mint.
  3. Find which pair has recent trades. That is the live market; anything else is history.
  4. Check the pool type. If it is concentrated, check whether the price sits inside any active range.
  5. Check the quote asset. An obscure pairing produces unreliable value figures.
  6. Check the program by opening a successful trade, which tells you whether the venue is one the display can read.

Step one is decisive and everything after it is diagnosis of a display rather than of a market. If the balances are healthy, the money is fine and the remaining question is which layer is misreporting it, which the indexing guide covers for the cases where a venue is not covered at all.

One habit prevents most of the panic in this category. Record the pool addresses for your token somewhere the whole team can reach, alongside which venue each belongs to and when it was created. Almost every frantic investigation in this area starts with somebody not knowing where to look, and a bookmarked pair page from three months ago is not that record. With the addresses to hand, the difference between a display artefact and a genuine withdrawal is a thirty-second check rather than an afternoon.

If it is your own token

Holders seeing a zero liquidity figure will assume the worst, and they will assume it quickly. The speed of your response matters more than its completeness.

Establish the facts first, using the pool balances rather than the screener. Then say what you found, publicly, with the pool address so anyone can verify it themselves. If the capital is intact and the reading is a range or indexing artefact, that is a two-sentence explanation with a link, and it ends the situation immediately.

If the capital genuinely is gone, saying so yourself is still the better position than being discovered. The difference between a team that reports a problem and a team that is caught by it is the entire difference in how the situation is read afterwards, and silence during the gap is interpreted as confirmation. Whatever the cause turns out to be, the failure mode to avoid is investigating quietly for a day while holders draw their own conclusions.

Frequently asked questions

01Does zero liquidity mean the pool was drained?

Not necessarily. It can mean the capital was withdrawn, but it can equally mean you are looking at a pool that never held much, a concentrated position whose range no longer covers the current price, or a venue the display cannot read properly. Check the pool account directly before concluding anything.

02How do I check whether liquidity is really gone?

Open the pool address in an explorer and read the token balances held by the pool accounts. That is the ground truth. A screener figure is an interpretation of it, and interpretations can be wrong or stale in ways the underlying balances are not.

03Why does a concentrated pool show almost nothing?

Because capital in a concentrated position only counts as usable depth when the price sits inside the range it was placed in. If the price has moved outside every active range, the pool holds real money and offers almost nothing at the current price, which some displays report as near zero.

04Can liquidity appear to vanish and come back?

On concentrated pools, yes. If the price moves back inside a range, that position becomes active again and depth returns without anyone doing anything. That behaviour is confusing the first time and it is the mechanism working as designed.

05My token trades but shows no liquidity. How?

Usually you are looking at one pair while the trading happens on another, or the venue holding the real liquidity is not indexed by that screener. Both are common after a launchpad migration, when activity moves to a new pool at a new address.

06What should I do if the liquidity really was withdrawn?

Establish it definitively by reading the pool balances, then say so publicly before anyone else does. A team that reports the situation is in a very different position from one that is discovered, and the difference is decided in hours rather than days.

Keep reading

Read the pools directly

The console reads every venue holding liquidity for your mint, which answers the question a display is interpreting.

Open the volume console