Liquidity Pool
A smart contract holding token reserves that traders swap against, with prices set by a formula instead of an order book.
A liquidity pool is a smart contract holding reserves of tokens, usually a pair, that traders swap against directly, with prices set by a formula instead of an order book. Pools are the core building block of automated market makers such as Uniswap: anyone can trade against the reserves at any time, and anyone can deposit tokens to become a liquidity provider. Some designs, such as Curve and Balancer pools, hold more than two assets, but the two-token pool is the standard case.
In the classic constant product design, the pool keeps the product of its two reserves roughly constant. Buying one token removes it from the pool and adds the other, which moves the price along a curve. Every swap pays a small fee that accrues to liquidity providers, who receive LP tokens, or an LP NFT in concentrated designs, representing their share of the reserves.
Pool depth determines execution quality. A trade that is large relative to the reserves moves the price against the trader, an effect called price impact, and thin pools produce heavy slippage. This is why routers split orders across multiple pools and why routing matters when buying baskets of assets: an index purchase that touches many tokens depends on the depth of each underlying pool.
Providing liquidity carries its own risks, most notably impermanent loss, where a pool position ends up worth less than simply holding the two tokens after their prices diverge. Trading fees can offset this, but there is no guarantee they will. Pools are also the venue for rug pulls when a deployer retains control of the liquidity, which is exactly the problem LP locking exists to solve.