Positions
In V3, each liquidity position is represented by a non-fungible token (ERC-721 NFT). Unlike V2’s fungible LP tokens, each V3 position is unique because it encodes a specific price range and liquidity amount.Position Properties
Each position NFT stores:Position Lifecycle
1. Mint (Create)
Create a new position by calling the Position Manager with:- Token pair and fee tier (identifies the pool)
- Tick range (
tickLower,tickUpper) - Desired token amounts
tokenId.
2. Increase Liquidity
Add more liquidity to an existing position without changing the range. The additional tokens must match the current price ratio within your range.3. Decrease Liquidity
Remove some or all liquidity from a position. This converts liquidity back to tokens, which are held by the Position Manager until collected.4. Collect Fees
Claim accumulated trading fees. Fees accrue in the exact tokens of the pool and must be explicitly collected — they do not auto-compound like V2.5. Burn
After removing all liquidity and collecting all fees, the NFT can be burned. This is optional — an empty position NFT has no economic value.Position States
A position can be in one of three states depending on the current pool price:Fee Calculation
Fees earned by a position are proportional to:- Liquidity share — The position’s liquidity relative to the total active liquidity at each tick
- Time in range — Fees only accrue when the position is in range
- Trading volume — More trades through the position’s range means more fees