Pomegra Wiki

Liquidity Pool

A liquidity pool is a smart contract that holds paired cryptocurrency tokens and enables peer-to-peer trading through an automated market maker mechanism. Users (called liquidity providers) deposit equal values of two tokens and earn trading fees. Pool prices adjust automatically based on the ratio of tokens in the pool.

This entry covers liquidity pools. For the AMM mechanism, see automated market maker; for liquidity providers, see liquidity provider; for the associated risks, see impermanent loss.

Structure

A liquidity pool holds two (or more) tokens in specific ratios. Users deposit equal values of both tokens and receive LP tokens (liquidity provider tokens) representing their share.

For example, in a 100 ETH + 100,000 USDC pool (ratio 1:1,000):

  • An LP deposits 1 ETH + 1,000 USDC.
  • The LP receives tokens representing 1% of the pool.
  • If the pool earns 10 USDC in fees, the LP receives 0.1 USDC.

Trading against the pool

When a trader wants to swap ETH for USDC:

  1. The trader sends ETH to the pool.
  2. The pool’s smart contract calculates how much USDC to send back (using the AMM formula).
  3. The USDC is transferred to the trader.
  4. A small fee (e.g., 0.3%) is allocated to LPs.

The pool ratio changes (more ETH, less USDC), which increases the price of ETH relative to USDC in the pool.

Fee structure

Typical fees:

  • Uniswap: 0.01%, 0.05%, 0.3%, 1% depending on the pool.
  • Curve: 0.04% (lower for stablecoins).

Fees are taken from the trader and distributed to LPs proportionally to their share of the pool. If the pool earns 100 USDC in fees and you own 1% of the pool, you receive 1 USDC.

Impermanent loss

When a liquidity provider deposits into a pool, their tokens are exposed to price movements. If one token increases in value relative to the other, the LP suffers impermanent loss.

Example: An LP deposits 1 ETH + 1,000 USDC in a pool. If ETH price increases to 2,000 USDC:

  • The pool auto-balances, reducing ETH and increasing USDC to maintain the constant product.
  • The LP now owns ~0.7 ETH + 1,400 USDC (roughly).
  • If the LP had simply held, they would own 1 ETH + 1,000 USDC (worth ~3,000 USDC).
  • The LP lost money compared to holding, despite earning fees.

This is impermanent loss — the difference between the LP’s actual value and their hypothetical value if they had simply held.

However, if trading fees are sufficient, they can offset impermanent loss.

LP tokens

When an LP deposits into a pool, they receive LP tokens (or pool tokens) representing their share. These can be:

  • Held to continue earning fees.
  • Traded on decentralised exchanges.
  • Staked in yield farming to earn additional rewards.
  • Withdrawn by burning the LP token, which releases the underlying tokens.

Concentrated liquidity (Uniswap v3)

Modern AMMs like Uniswap v3 allow LPs to specify a price range. Instead of providing liquidity across all prices, an LP might provide liquidity only between 1,500 and 2,500 USDC per ETH.

This allows:

  • Better capital efficiency. The same capital earns more fees if prices stay in the specified range.
  • Higher risk. If prices move outside the range, the LP earns no fees and faces worse impermanent loss.

Risk management for LPs

LPs can mitigate risks by:

  • Choosing stable pairs. Pools of similar-priced assets (e.g., USDC/USDT) have minimal impermanent loss.
  • Diversifying. Contributing to multiple pools reduces exposure to any single pair.
  • Monitoring prices. Withdrawing if prices diverge significantly (to limit losses).
  • Seeking high fees. Pools with higher fees are more attractive if impermanent loss is similar.

Historical context

Uniswap v1 (2018) pioneered the AMM model and made liquidity pools accessible to anyone. Prior to this, liquidity was provided by centralised market makers; now, anyone can earn fees by providing liquidity.

See also

Wider context

  • Smart contract — pools are contracts
  • Yield farming — earning on liquidity provision
  • Ethereum — primary platform for pools
  • Uniswap — the largest AMM