Navigating DAMM v2 pools
DAMM v2, or Dynamic Automated Market Maker v2, builds upon the original DAMM, to provide a powerful, yet hassle-free way to add liquidity and earn fees on Solana. DAMM v2 allows you to deposit tokens into a pool, which are then used as liquidity for traders, bots, and aggregators to swap tokens, earning you fees with every trade. But it is much more configurable than your typical AMM, with features tailored for a wide variety of liquidity providers, token launches, and launchpads. Features for LPs include:Broad Token Support
Supports a wide range of SPL tokens and select Token 2022 extensions, letting you provide liquidity for more token types.
Dynamic Fees
Dynamic fees boost the fees you earn during periods of high market volatility, helping LPs maximize returns when trading activity increases.
Anti-Sniper Tools
Advanced anti-sniper tools, such as the Fee Scheduler, start with higher fees to penalize snipers and gradually reduce fees over time for regular traders.
Receive Fees in Quote Token
Choose to receive your liquidity provider fees directly in a stable quote token like USDC, instead of the pool tokens.
Flexible Liquidity Locking & Vesting
Lock your memecoin liquidity with a customizable vesting period or even permanently lock it, while still being able to claim your earned fees.
Transfer LP Position via NFT
Effortlessly transfer your liquidity position to another person by simply sending the NFT that represents your LP position.
Launch With a Single Token
Launch a new pool using just your token, without needing USDC or other stablecoins.
Custom Trading Start Time
Set a specific future time when pool trading should be enabled, allowing for launches, announcements, or fair trading starts.
Concentrated Liquidity Ranges
Open a pool with a fixed price range to provide higher capital efficiency, similar to Uniswap v3-style concentrated liquidity.


Total Value Locked
At the top left of the pool detail page, you can vi ew the pool’s TVL (Total Value Locked). This is the total amount of token assets in the pool in terms of $USD value (how much all the tokens currently in the pool are worth). DAMM v2 allows both permanent and non-permanent locking of liquidity, and the TVL section would show the following:- Vested Liquidity: % of liquidity non-permanently locked for at least 3 months (at this point in time)
- Permanently Locked Liquidity: % of liquidity permanently locked in the pool

Price Range
For most DAMM v2 pools created via the Meteora user interface (website), the price range supported is 0 to infinity. But for certain DAMM v2 pools created programmatically using our documentation, they could be configured to have a more concentrated price range with a specific min price and max price for higher capital efficiency. Once a pool is created, the price range for that specific pool is fixed and can never be adjusted again. Here’s a screenshot of the example pool: SOL-USDC, where the price range is concentrated at 70 - 440 USDC/SOL.
Liquidity Allocation
The TVL is further broken down into the amount of each token in the pool. In this screenshot of the example pool ICM-SOL, $820,815.85 in TVL is actually made up of 24,451,511 ICM and 2,064.47 SOL.
To support Token 2022 tokens and extensions at DAMM v2 pool creation, a token badge from the project team must be provided. However, some extensions (e.g. transfer hook) are presently unsupported.

You can also view the Jupiter Organic Score for the token and if the token has any risks.
Pool Details
Current Pool Price
The Current Pool Price may not always be close to the general market price, especially when it was just created with a wrong initial price and has low liquidity. Check that the pool price is in sync with the market price prior to adding liquidity, to avoid incurring a loss due to arbitrage trades.24h Volume
Volume generated by the pool in 24h24h Fee
Total fees collected by the pool in 24hBase Fee
Minimum trading fees earned when swaps occur through the poolDynamic Fee
Additional fee charged on each trade based on real-time price volatilityLiquidity Provider Fee
Protocol Fee
Amount of fees charged on each trade which goes to the protocol or integrations. For standard DAMM v2 pools, Protocol Fee is typically 20% of the LP Fee.Fee Collection Token
- Pool creators can choose how LPs receive fees from the pool; whether in Base + Quote tokens, or Quote token only.
- For example, in a URANUS-SOL pool, pool creators can set it such that LPs receive fees in both URANUS and SOL tokens (the typical AMM process), or receive fees only in SOL tokens. Once the pool is created, the selected Fee Collection Token cannot be changed.
- As an LP, you can choose the specific DAMM v2 pool that has the Fee Collection Token that fits your requirements.
Fee Scheduler
- DAMM v2 supports Anti-Sniper mechanisms such as the Fee Scheduler, where fees start higher at launch then drop over time until it reaches the Base Fee.
- Pool creators that enable the Fee Scheduler at pool creation, must also select their preferred mode; between the “Exponential” mode or “Linear” mode.
- For pool creators who set up a Fee Scheduler using our Pool Creation UI on our website, the starting fee would be 50%.
- For pool creators who set up a Fee Scheduler programmatically using our documentation (not via the Pool Creation UI), they can configure certain parameters, such as the starting fee %.
- As an LP, you can choose the specific DAMM v2 pool that has the Fee Scheduler mode and parameters that fit your requirements.


Pool Address
On each DAMM v2 pool detail page, you can also easily open up the pool address page on the solscan explorer if required.
Community Built-in Tools
Meteora’s LP Army comprises many talented developers, who have over time built useful tools to improve LPing for everyone. The full list of tools can be found here.Pool Chart
Popular data analytics and charting tools with more granular data have integrated Meteora’s liquidity pools, including Birdeye, GeckoTerminal, DEXScreener, DEXTools, GMGN. We’ve provided buttons that link to the specific pool page for each of these tools.
Supported Trading Platforms
Popular trading platforms and bots have also integrated Meteora’s liquidity pools, including Axiom, Banana Gun, BONKbot, Fluxbot, Jupiter, MetaSolanaBot, Photon, and Trojan. We’ve provided buttons that link specifically to each of the trading platforms. Note: For pools without SOL as the quote token, BONKbot, Photon, and Axiom won’t be in the list.
Total Positions
By default, when you create a new DAMM v2 pool or you add liquidity to a pool, you would have one position in the pool. Even if you add more liquidity, it gets added to the same position. This position is represented by a unique liquidity position NFT that you hold in your wallet address. But DAMM v2 can support multiple individual liquidity positions, so if your friend has a separate position in the same pool, and sends his liquidity position NFT to your wallet address, you would then see that you now have 2 liquidity positions (your original position and the new position sent to you). The number of positions you see on the UI would correspond to the number of unique position NFTs you hold in your wallet. On the UI, you can only select and view the details for one liquidity position at a time.Total Deposits
This represents the total $ value of all your deposits in all your liquidity positions.Position Value
This represents the $ value of your deposits in the specific liquidity position selected.Fees from position
This represents the $ value of the accumulated fees for the specific liquidity position selected. For DAMM v2, fees earned by the LP do not auto-compound into the pool. They accumulate separately and have to be manually claimed by the LP.How to Add Liquidity
Firstly, navigate to the “Deposit” tab.Enter Deposit Amount
Under the “Deposit” tab, under “Enter deposit amount”, you can enter the amount of Base token or Quote token you’d like to deposit into the pool. The corresponding $USD value will be shown at the bottom of your input.

- The estimated amount you will get
- The Minimum Received
- The Maximum Slippage %, which you can preset

Setting Liquidity Slippage
You can adjust how much change to the pool price you’re willing to accept and still add liquidity. If the pool price changes a lot while adding liquidity, your transaction may fail. Increase this slippage to improve your success rate.
How to Withdraw Liquidity
On the pool detail page, navigate to the “Withdraw” tab. Enter the amount of liquidity (LP tokens) to withdraw. In the “Withdraw Info” section, you will see a summary of how many Base tokens and Quote tokens you’d be getting:- The estimated amount you will get
- The Minimum Received
- The Maximum Slippage %, which you can preset

How to Lock Liquidity
If you have never added and locked liquidity on Meteora before, “My locks” would show “No locks found”.
Permanent Lock Liquidity
Token teams, especially memecoins, can decide if they wish to permanently lock their liquidity on Meteaora. Liquidity gets sent to a lock token account but fees will still be claimable. To do this, navigate to the “Permanent Lock” tab and enter the amount of LP tokens you’d like to lock permanently. You’d be able to see the total value you’re locking up, as well as the individual token amounts and their equivalent $ value. When you’re ready, click the “Lock Liquidity” button. A pop-up would appear requesting confirmation. You would have to type in the text “permanently lock my liquidity never to get it back” as a way to confirm the transaction.If you had permanently-locked your assets, you would no longer be able to access or withdraw those underlying assets.
Non-Permanent Lock Liquidity
LPs also have the option to lock their liquidity in a “Non-permanent” manner, also known as a lock with vesting. This means that the liquidity is locked and released over a preset period of time. To begin, select the “Non-permanent” tab and enter the lock amount for the LP token. There are a few parameters that you’d have to decide based on your preferences and requirements, such as:- Vesting Start Date
- Vesting Duration (Minute)
- Cliff (Optional) (Minute)
- Unlock Schedule (Minutely)

FAQ
Using DAMM v2 on the Meteora UI
1. When you deposit tokens into the pool, how is the LP token amount calculated?
When you deposit the token amounts on Meteora FE, it will calculate and specify the lp_token before it is sent to the program to execute. Example:- From token B: amount_b = lp_token (pool.current_sqrt_price - pool.min_sqrt_price)
- So you can reverse: lp_token = (pool.current_sqrt_price - pool.min_sqrt_price) / amount_b
- If a user swaps from A -> B, fee is charged on B; protocol takes some of the user’s B
- If a user swaps from B -> A, fee is charged on B before the swap is calculated; protocol takes some of the user’s B before it gets swapped to A
Liquidity Position NFT
1. What does the position state of the NFT manage?
The position state manages unlocked_liquidity + locked_liquidity + vested liquidity. User can interact with the following flows in the same, single position:- Permanently lock part of the liquidity
- Create multiple vesting schedules
- Add more liquidity (unlocked liquidity)
2. Can I transfer a position NFT (which represents a liquidity position)?
Yes. For example, you already have a position in a pool, which is represented by a position NFT. Someone also has a position in that same pool and he sends you his position NFT. Now you would have 2 position NFTs (positions) for the same pool.Farming
Farming user interface is coming soon.