Why is liquidity position ownership represented by tokens or NFTs?

When a liquidity position is created, it is represented by Liquidity Provider (LP) Tokens or a NFT. The wallet address that owns the LP tokens or NFT is the owner of the liquidity position.

Zebra v1 represents liquidity positions using Zebra LP Tokens. These tokens are deposited in your wallet when you add v1 liquidity. The amount of tokens represents how much liquidity you added.

Zebra v2 represents liquidity positions using an NFT, in order to store all of the liquidity position data. This NFT is deposited in your wallet when you add v2 liquidity.

The full data that is stored in this NFT is:

  • Nonce (used for tracking permit nonces)

  • The operator (normally a 0 address, unless you have given permission to another to manage the liquidity)

  • Token0 address (address of the first token in the pool)

  • Token1 address (address of the second token in the pool)

  • The pools fee tier (the chosen fee tier of your pool)

  • The Lower Tick (the low price boundary of the position)

  • The Upper Tick (the upper price boundary of the position)

  • Your liquidity value (the value of the liquidity in the position)

  • feeGrowthInside0LastX128 (used for Fee tracking on token0)

  • feeGrowthInside1LastX128 (used for Fee tracking on token1)

  • tokensOwed0 (only used as a temporary value)

  • tokensOwed1 (only used as a temporary value)

Last updated