Desk

Guide

Read a Monad pool without a quoter: slot0, decimals, and the back amount

The quoter is a contract call that can time out. The pool’s slot0 is the price. Here is how to turn that square-root price into MON, and how to know when the number on a card is a mark rather than a fill.

MONAF Blog · 26 October 2026 · 18 min

A v3 pool stores its price as the square root of token1 per token0, scaled by 2 to the 96. That word is the first value in slot0. You do not need the quoter to read it. You need the pool address, which token is token0, and the decimals of each side. Get those wrong and a perfectly good pool looks like a 2,000 percent profit or a total loss. Both of those have appeared on this desk, and both were reading errors.

Which token is MON

On the WMON pairs this desk trades, WMON is token0 for WETH and token1 for the BTC wrappers, or the reverse, depending on the address sort the factory used. The flag that matters is “is MON token0”. If it is, MON value of a token quantity is quantity times 2^192, divided by the square of sqrtPrice. If it is not, the square of sqrtPrice is on the top. The two formulas are inverses. Using the wrong one prices the position in the other coin and then pretends the result is MON.

Work a check that does not require faith. Take the MON you spent and the sqrt price, and compute how many tokens that MON would buy at the spot. Call that the fair amount. If the fill’s recorded quantity is more than one and a half times fair, the record is a doubled balance, not a rally. Price the fair amount. If the mark is less than half of what you spent, the record is short. A real WBTC market does not drop by half in the few blocks since you entered. Show the stake, not the broken quantity.

Half away from the MON you put in is a bad coin count. It is not a market.

Decimals are part of the price

MON, WMON and WETH use 18 decimals. WBTC and cbBTC on this book use 8. A raw balance of WBTC that you divide by 10^18 is a billion times too small, and one you forget to scale is a billion times too big. The card’s “in 50 MON” line is 50 times 10^18 wei. The “back” line has to be in the same unit before anyone subtracts. Mixing a human number with a wei number is how a 2 MON loss renders as a 2,000 MON loss.

A mark is not a fill

slot0 is the marginal price. A swap of 50 MON moves that price. The mark ignores the move and ignores the fee tier. It is the right number to put on a card every second, because it does not depend on the quoter and it cannot be sandwiched by your own read. It is the wrong number to treat as a guaranteed output. That is what the one percent floor is for. If you need the executable amount, you call the quoter once, at the size you will sign, and you set the minimum from the lower of the two. You do not do that on the way out when the person has already asked to leave.

How to check a card in thirty seconds

Read the spent MON and the back MON. The difference, divided by the spent MON, is the percent. A card that says −0.38 percent on 50 MON should show a loss near 0.19 MON. If the big type says −1,200 MON, the quantity is wrong and the percent is the thing to trust only after you have re-read the pool. Open the pool on the explorer. Read slot0. Confirm token0. Recompute one unit of the asset in MON and multiply by the tokens the fill claims. If your arithmetic and the card disagree by more than the fee tier, the card is stale or the record is bad. Close from the wallet balance, not from the bad record.

Do not average a broken sibling

Two fills of the same asset should mark at similar ratios of back to spent, usually within a few percent. A third fill that marks at six times the others is not a genius entry. It is the same doubled balance. The desk may borrow the median ratio of the healthy siblings, and only when that median itself sits between 80 and 120 percent of stake. A median that is already nonsense must not be copied onto everyone else. When in doubt, mark each fill at the fair token amount for the MON it spent.

Sources

  1. 1Monad developer documentation
  2. 2PancakeSwap
  3. 3MONAF Blog — WMON and the wrappers
  4. 4MONAF Blog — the one percent floor