DLMM pools on Meteora: what they are and how to read them
By @solknifexyz · Reviewed
A Dynamic Liquidity Market Maker (DLMM) pool packs all the liquidity into a discrete sequence of price bins. When the market price is inside one of your bins, you earn fees; when it moves outside, you earn nothing until it comes back. The result is the highest fees-per-dollar you can earn on Solana right now, and one of the easiest ways to bleed money in opportunity cost if you set it up wrong.
How a DLMM pool actually works
A classic constant-product AMM (Uniswap v2 / Raydium standard pools) spreads your liquidity across every possible price from zero to infinity. At any given moment most of it is sitting in price ranges nobody is trading at, earning nothing.
A DLMM pool divides the price axis into discrete bins(Meteora's LB CLMM uses geometric bin widths, typically 1, 2, 5, 10, 20, 50, 100, or 200 basis points apart). When you provide liquidity you pick the bins you want to be in. Your LP NFT records exactly which bins, in what proportion.
When a swap routes through one of your bins, you earn the swap fee on the volume that hit it. When the price moves out of every bin you own, your position is out of range and earns zero. You can rebalance (close, re-open across new bins) but that costs gas every time.
The numbers that matter
Five numbers tell you almost everything about a DLMM pool. SolKnife's pool checker surfaces all of them on one screen:
- TVL — total dollar value of all liquidity across all bins. Bigger TVL = thinner per-dollar fee yield for any single LP, but also lower price impact for traders (which attracts more volume).
- 24h volume — total dollar throughput. This is the gross from which fees are taken. A pool with high TVL and zero volume is a dead pool.
- Fee tier — usually 0.01% (stables), 0.25% (majors), 1% (volatile), 2%+ (very volatile / exotic). The fee is paid by traders, split across all in-range liquidity.
- Fee yield (24h / annualized) — derived:
volume * fee_tier / tvl. This is what you would earn if you owned all the liquidity in the pool for the full period. Reality is lower because: - In-range share — what fraction of TVL is actually inside the current price bin. A pool with $1M TVL but only $200k near spot is a $200k effective pool for earning purposes. Yields scale with how concentrated the liquidity is around spot.
How to read the comparator
For any token you care about, multiple DLMM pools usually exist across different fee tiers and bin steps. The pool comparator lays every pool for that token side by side: TVL, 24h volume, fee tier, fee yield, APR estimate.
Pattern matching:
- Highest volume / TVL ratio is usually the pool to provide to, all else equal. Fees compound on volume.
- Tight bin step (1 bp, 2 bp): more fee per dollar but higher rebalance churn. Good for stables.
- Wide bin step (100 bp, 200 bp): less churn, captures volatility better. Good for volatile / exotic pairs.
- Stale pools (no volume in 24h) — the APR number is meaningless; ignore.
What can go wrong
- Out of range = zero earnings.Concentrated positions earn nothing the moment price exits your bins. Set a width you're willing to be passive about.
- Impermanent loss is real and amplified. The same price move in a DLMM bin causes more IL than the same move in a v2 pool, because you're concentrated. On highly volatile pairs your fees need to comfortably exceed IL or you're just paying to provide liquidity.
- Token risk. The output side of an LP position is also a token, and tokens can have freeze authorities, transfer fees, or worse. Before LPing into a pool with an unfamiliar token, run the rug-checker. How that works.
Reading your own positions
The positions toolreads your wallet's open Meteora DLMM positions and flags each one as in-range or out-of-range, with the fees you've earned since opening and a rough PnL. Use it after a market move to decide whether to rebalance or wait.
What it costs
- SolKnife pool checker / comparator — free to read. The platform fee only applies to active operations (swap, mint, etc.), not data queries.
- Providing liquidity on Meteora— done on Meteora's own UI; SolKnife only reads pool state. Meteora's opening + closing fees are standard Solana rent + a few transaction fees.
Related
- How to check a Solana token for a rug pull — vet the pool's token first
- How to swap on Solana with low slippage — DLMM pools are the deeper liquidity that aggregators route through