Skip to content
CantRug

The mechanism

How the floor works

A memecoin whose pool belongs to its holders, with a brake that turns a crash into a staircase. Every number on this page can be checked on chain.

The problem

On a classic launchpad, the last holders of a dead coin hold nothing. The liquidity is there, sitting in a pool, but no one can reach it without selling into a price that is already at zero.

Pump burns that liquidity. Its holders paid for it. CantRug gives it back to them.

From launch to graduation

  1. Launch
  2. Buys on the curve
  3. 85 SOL raised
  4. Graduation, the floor turns on
  5. Trading with the brake
  6. Redeem at the floor, any time
  7. Fees lift the floor

The floor

Once a coin graduates, its pool holds SOL (S) and tokens. Every token outside the pool and outside the brake queue is circulating (C). The floor is S divided by C: what one token can claim from the pool, right now.

Pool SOL (S)S = 100.00S = 90.05Circulating tokens (C)C = 1000C = 900+9.95 SOLfloor = S / C = 0.10000floor = S / C = 0.10006
A holder redeems 100 tokens and receives 9.95 SOL. 0.05 SOL stays in the pool. The floor does not move down.

Any holder can redeem at any time: burn tokens, receive the exact share of the pool's SOL. A 0.5 % exit fee stays in the pool, so a redemption never lowers the floor for the others. It raises it a hair.

Buys and every fee raise the floor. Market sells above the floor lower it slightly for the others, because they take SOL out at a price above it. Every trade feeds the floor: 0.2 % of each pool trade stays in the pool.

Redeem calculator

Set a pool, a supply and an amount. The result is the same division the program does.

Redeeming takes your exact share and burns the matching pool tokens, so the floor of the others does not move; the 0.5 % that stays lifts it a hair.

Your receipt
Your share
5.3594 SOL
Fee 0.5 %
− 0.0268 SOL
Paid out
5.3326 SOL
Floor before
0.107188 SOL/M
Floor after
0.107224 SOL/M
Floor of the others
+0.034 %

Pool price moved: 0.00 %

The brake

A brake window lasts 150 slots, about a minute. Within a window, no sale can push the price more than 20 % below where it started.

A crash becomes a staircase: at most −20 % per window, above the floor line.

What the window cannot absorb goes into a queue. At the start of each window the queue is sold first, as much as the 20 % limit allows, and the SOL is shared pro rata between everyone queued.

Queued sellers can claim what they have earned, cancel and take their tokens back, or switch to the floor and redeem the rest instantly.

CantRug vs Pump

Same curve, same graduation, different ending. What happens to the last 20 % of holders decides everything.

Pump: the liquidity is burned. The last holders are left with nothing to sell into.CantRug: the liquidity stays under the holders. The last one out still gets their share.

There is no team wallet that can pull the pool. The pool is a program account; only redeem and the swap can move its SOL.

Verify it yourself

The whole floor fits in four lines. S is the pool's SOL, T the pool's tokens, Q the tokens waiting in the brake queue.

  • floor = S / C
  • C = supply − T − Q
  • redeem(x) = S·x / C − 0.5 %
  • brake: price ≥ 0.8 × price_window_start

S: SOL in the pool. T: tokens in the pool. Q: tokens in the queue. C: circulating supply.

Two vault balances and the mint supply, read straight from the chain, give the floor.

Three accounts are enough to recompute it:

  • CoinState: the coin's state, with S, T and Q.
  • Pool SOL vault: holds the SOL itself; its balance covers S.
  • The mint: its supply, after every burn.

Program: E7ZbamLD8wenjjHitR8bUHwuNKA4Em39sqybnhk3nc87

Fees

Curve trades
1 %: 0.4 % to the creator, 0.3 % to the protocol, 0.3 % set aside for the floor.
Pool trades
0.5 %: 0.2 % stays in the pool, 0.2 % to the creator, 0.1 % to the protocol.
Redeem at floor
0.5 %, kept in the pool for the remaining holders. The last holder pays nothing.
Creating a coin
0.02 SOL plus network fees.

The floor is a current, verifiable minimum, not a promise of future value. If the pool holds little SOL, the floor is low.

FAQ

Can a CantRug coin go to zero?

Not after graduation, as long as the pool holds SOL: every circulating token can always be redeemed for its share. Before graduation the coin is on a bonding curve and the floor is only a preview.

Is the floor a price guarantee?

It is a minimum you can claim today. It moves: buys and fees raise it, market sells above it lower it slightly. It is not a promise about tomorrow's price.

What happens if the dev dumps everything?

The brake catches it. At most 20 % per window executes, the rest is queued and served pro rata over the next windows. The floor stays where it is. The rug-proof challenge replays exactly that on devnet.

My sale was queued. What now?

You earn SOL every window as the queue is served. You can claim it, cancel to get your remaining tokens back, or switch to the floor to redeem the rest at once.

What does the creator earn?

0.4 % of curve volume and 0.2 % of pool volume, claimable at any time. The creator cannot touch the pool.

Where is the code?

The program, the TypeScript SDK and this site are open source. The SDK's math is an exact port of the on-chain core and is tested against it.

Watch the rug-proof challenge