8 min Research

Pump.fun market caps are lying to you. Here's the math.

By Eric Godzwa · Market caps and what's underneath, part 1

First published on X, April 2026.

We build the AVM that rise.rich runs on, so read this as an interested party making an argument. The math doesn’t change based on who points it out, and every step of it is verifiable on-chain.

Pump.fun and rise.rich look like the same product. Both are bonding-curve launchpads on Solana. Tokens mint on a curve, supply expands as buyers show up, price is a function of how much has been bought.

Same category. Not the same thing. And they diverge hardest in the two places that matter most.

Price discovery. Market capitalization.

Add those together and you get the only thing a memecoin can really be measured on: value.

Rise.rich and pump.fun are so mechanically different that these words start to mean different things to each one.

Start with a definition nobody should find controversial: market cap = supply × price.

Now think about what pump.fun does. Every new token it launches mints a billion units out of thin air. Why a billion? No reason. It’s a number somebody picked. Which means for every pump.fun token that ever trades above $1 on its curve, the “market cap” readout is already at least $1,000,000,000. A billion dollars of paper value summoned into existence by a template.

Pump.fun has launched a lot of tokens. Add the paper market caps up across the whole catalog and you get to “total crypto market cap” numbers in the trillions. The real redeemable value backing that number is a rounding error next to it.

Something is broken with the mental model. “Market cap” as a proxy for value is a mind virus in crypto right now. The AVM is the cure. Let me show you why.

On pump.fun, the bonding curve is a pricing function bolted onto a virtual reserve. When a token “graduates,” it migrates off the curve and starts trading against a constant-product AMM. On rise.rich, the bonding curve is the reserve. One design swap, and it produces a price-to-liquidity gap on pump.fun that grows with the square root of price. Permanently, by construction.

I’ll walk the math, then the comparison.

The √P problem

On any constant-product AMM (Uniswap v2, most Solana AMMs, anything that obeys x·y=k), two numbers matter:

  • Market cap: P × S. Scales linearly with price.
  • Pool liquidity: 2√(k·P). Scales with √P.

So the ratio between them scales with √P.

A 100x in price does not produce 100x in liquidity. It produces √100 = 10x. Your paper market cap ends up ten times larger than the pool underneath it.

That’s the whole problem in one line.

Don’t get hung up on “square root” as a precise thing. The point is blunter. Liquidity grows slower than price, which means it gets worse the better the token does. On pump.fun, liquidity craters as price rips. Nobody’s draining the pool. The AMM does it to itself by law of the curve.

It’s also why most pump.fun winners end up down 90%+ from their all-time high. Thin illiquid markets let price move freely in both directions. A constant-product AMM turns your token into a rubber band. It snaps up, it snaps back. It always snaps back.

The plain-English version, since this is the whole piece really:

The market gets weaker the stronger the price gets.

Now push it further. A 10,000x? Market cap up 10,000x. Liquidity up √10,000 = 100x. Paper MC is now 100x disconnected from what the pool could actually clear if someone tried to.

You can’t fix this with more LPs, and it isn’t an edge case. The AMM produces it on every trade, every time, and √P only moves in one direction.

The thing most people miss: “market cap” on a constant-product AMM is measured at the margin. Last trade price × total supply. It tells you what the token just cleared at. Not what it would clear at if meaningful size tried to exit.

Those are different numbers. Related by √(how far price has moved since launch). And they diverge fast.

What pump.fun is actually doing

Pre-graduation, pump.fun tokens trade on a bonding curve with a virtual reserve. The curve is the pricing function. It tells you what you’ll pay for the next unit. SOL sits in a program-controlled account underneath, but you’re interacting with the formula. The reserve is bookkeeping.

At graduation, the token migrates. Some portion of the accumulated SOL seeds a constant-product AMM pool, and from there the token lives on that AMM. The virtual reserve is gone. √P takes over.

The seed-to-graduation ratio matters here. Whatever portion of paper market cap seeds the post-graduation pool, that’s the starting point of the paper-to-real gap. Every subsequent multiple of appreciation widens it along the √P curve. A graduate that 100x’s off its launch is sitting on a paper MC ten times larger than the liquidity that could clear it.

None of this is a criticism of pump.fun. Pump.fun isn’t trying to be a place where market caps correspond to redeemable value. The whole design aims at velocity: rapid launches, churn, attention, casino-grade PvP. It is extraordinarily good at what it’s built for.

Inside that frame, the √P problem is part of what makes the casino feel like a casino. The scoreboard doesn’t need to represent redeemable value. Nobody’s using it as one. They’re using it as a signal in a game about who sells to the next buyer first.

The real issue shows up when people read a pump.fun market cap and assume the word carries its usual meaning. The number tells you what the thing last traded at, extrapolated across a billion tokens somebody made up. That isn’t the same as value.

The AVM inversion

rise.rich is a permissionless launchpad built on a different primitive: the AVM (Assured Value Machine). What it produces is a new kind of asset, an AVA (Assured Value Asset).

On the AVM, the curve defines the reserve.

Price on the AVM is deterministic in supply: P = f(S). Every unit of new supply costs what the curve says. The dollars paid to mint it are locked in the reserve. Which means:

Reserve = ∫ P(S) dS, from 0 to current supply.

The reserve is the integral under the price curve, literally. Every dollar that moved the price is still sitting in the vault, because the dollars paying for the price are the reserve.

Two numbers come out of that geometry. They are not the same number.

The market cap is the rectangle: current price multiplied by supply. Same definition as anywhere else. On any rising curve, the rectangle is always larger than the area underneath it. So market cap > reserve. Always.

The floor-backed value is what the curve guarantees redeemable at any time: floor price × supply. That number sits inside the reserve. Fully backed. Mathematically locked.

The market cap sits above the floor-backed value. What’s new on the AVM is what’s underneath: a structural floor, monotonically non-decreasing. The floor portion is in the vault. The portion above the floor is still speculative, priced by the market like any asset. The difference is that the bottom is locked, and you always know what you can exit for.

This is the solvency invariant. The protocol enforces it before any transaction can execute. A trade that would break the floor reverts. The pump.fun √P gap can still exist above the floor on a market-pricing layer, but the floor itself never bends. Your downside is bounded by math.

And the floor only moves up. Two ways:

  • New capital entering the reserve.
  • Recalibration. The protocol reshapes the curve to shift reserve from the speculative portion into the guaranteed portion.

Recalibration doesn’t need new capital. It’s a reallocation inside the existing reserve that raises the minimum without changing the total. As price climbs, the floor ratchets up underneath it. Every raise is permanent.

Five ways they differ

Same category, different primitive.

  • The curve. pump.fun: pricing function + virtual reserve, graduates to constant-product AMM. rise.rich: pricing function is the reserve. No graduation.
  • Allocations. pump.fun: 1B fixed supply, deployer typically bundles a chunk at launch. rise.rich: zero insider allocations, mint-on-deposit only. Nobody holds tokens they didn’t pay curve price for.
  • Floor. pump.fun: no floor, tokens routinely go to zero. rise.rich: ratcheting floor, only moves up.
  • Market cap. pump.fun: P × S at the margin against a thin AMM book, diverges from realizable by √P, with no floor underneath. rise.rich: P × S sits above a structural floor that is fully reserve-backed. The portion above the floor is market-priced.
  • Exit. pump.fun: sell into the AMM, price slips in proportion to how much you move. rise.rich: redeem at floor, protected by the solvency check.

This is already running

The AVM is live on Solana. Samsara, our team-curated asset platform, is running markets on it. Every trade that clears at the floor is solvent by construction, because the protocol enforces the invariant before any transaction executes.

rise.rich operates independently and uses Samsara as its infrastructure layer. Same primitive underneath, open to anyone.

What each is optimizing for

Pump.fun is a velocity machine. Launches per hour, attention per launch, PvP churn, casino mechanics. Real product-market fit for that, and inside that frame the √P problem is part of what makes the casino feel like a casino.

rise.rich is capital formation with a structural floor. Launches that hold a guaranteed redeemable base, floors that ratchet up as price climbs, a clean separation between what’s mathematically backed and what’s speculative.

These are different products. The only reason the category lumps them together is the shared bonding-curve primitive. The curves are doing different jobs. Comparing their market caps as if those numbers mean the same thing is a category error.

The real question isn’t whether the 100x happens. It’s what’s underneath you when it does.

On pump.fun, a 100x means you need somebody else’s 100x of capital to show up before you can exit at the paper price. Paper gains until someone else pays for them. The pool isn’t deep enough to clear everyone at the quoted number. Not even close. And if the chart cracks, nothing is underneath. Tokens go to zero.

On rise.rich, a 100x means the floor has been ratcheting up underneath the price the whole way. Wherever the floor sits at any given moment, that’s the redemption guarantee. That guarantee is a property of the curve, enforced by the protocol.

The portion above the floor is still speculative. You still need a buyer to exit at current market. But your downside is bounded by math.

That’s the difference. Your floor is locked. Redeemable, borrowable, permanent. What that actually lets you do is the subject of the next piece in this series.

The math doesn’t allow it to come down.

rise.rich is an independent project built on the AVM.

All posts