Glossary
Common terms for the Uniswap protocol, its AMM design, permissionless architecture, and protocol versions.
Core Protocol Concepts
-
An automated market maker (AMM) is a smart contract on Ethereum that holds liquidity reserves. Users can trade against these reserves at prices determined by a fixed formula. Anyone may contribute liquidity to these smart contracts, earning pro-rata trading fees in return.
-
The Uniswap protocol is a set of immutable onchain smart contracts that implement AMM-based trading and liquidity across protocol versions.
-
The constant product formula is the AMM model used in early Uniswap versions. In v1 and v2, it is commonly written as
x * y = k, where k is the invariant. -
A pool is a contract deployed by the v4 factory that pairs two ERC-20 assets. Different pools may have different fees despite containing the same token pair. Pools were previously called Pairs before the introduction of multiple fee options.
-
Liquidity is the token capital stored in a Uniswap pool contract that traders can swap against.
-
A liquidity provider (LP) is someone who deposits ERC-20 tokens into a liquidity pool. Liquidity providers take on price risk and are compensated with trading fees.
-
Concentrated liquidity is liquidity allocated to a specific price range.
-
A position is an instance of liquidity defined by lower and upper ticks and the liquidity amount assigned to that range.
-
A swap is the act of exchanging one token for another through a liquidity pool.
-
Swap fees are fees collected during swaps and distributed to liquidity providers according to pool rules.
-
Protocol fees are fees directed to the protocol itself rather than to liquidity providers.
-
Price impact is the difference between the mid-price and the execution price caused by your trade size relative to the pool’s liquidity. This is an expected result of the constant product formula in AMMs.
-
Slippage is the total difference between the expected price at the time of submitting a transaction and the actual execution price, which may include price impact and other market movements that occur before the transaction is mined.
-
Impermanent loss is the opportunity cost experienced by liquidity providers when token prices change relative to simply holding the tokens.
-
Tick is a boundary between discrete price points.
-
Tick interval is the price space between the two nearest active ticks.
-
Range is any interval between two ticks.
-
Range order approximates a limit order by providing a single asset as liquidity across a specified range and converting exposure as spot price crosses that range.
-
Reserves refer to liquidity balances in a pool context, especially in constant-product models.
Smart Contract Architecture
-
Core Contracts are foundational protocol contracts that implement pool state transitions and settlement logic. A new core deployment corresponds to a new protocol version.
-
Periphery Contracts are external smart contracts that simplify interactions with the protocol (e.g., routers and position managers).
-
Universal Router is a routing contract that enables complex, multi-step token operations across different Uniswap systems in a single transaction.
-
Factory is a smart contract that initializes pool instances for token pairs according to version-specific rules.
Uniswap v4 Concepts
-
Singleton Architecture is a design introduced in v4 where all pools are managed within a single contract, reducing deployment costs and enabling advanced composability.
-
PoolManager is the central contract in v4 responsible for managing all pools within the singleton architecture.
-
Hooks are customizable smart contracts that execute logic before or after pool actions such as swaps or liquidity modifications.
-
Flash accounting is a v4 settlement mechanism that allows temporary token imbalances during execution, provided balances net to zero by transaction end. This is distinct from a flash swap.
Token Standards
-
ERC-20 is a standard for fungible tokens on Ethereum. Uniswap integrates broadly with standard ERC-20 implementations.
-
ERC-721 is a standard for non-fungible tokens. In v3, positions are represented as ERC-721 NFTs; in v4, position flows are managed through
PositionManagerand can be represented with token IDs in periphery workflows. -
ERC-6909 is a multi-token standard used in v4 to represent internal claims within the singleton architecture.
Trading Infrastructure
-
flash swap is a v2 pattern where tokens are received before repayment, provided borrowed tokens are returned in the same transaction. This is distinct from v4 flash accounting.
-
Routing in API responses is the execution mechanism for a quote, described by the
routingfield (for exampleCLASSIC,DUTCH_V2,DUTCH_V3, orÂPRIORITY).
Ecosystem Terms
-
Unichain is an EVM-compatible chain designed to support high-performance DeFi applications and Uniswap-native infrastructure.
-
UNI token is the governance token that enables participation in Uniswap governance decisions.
API Terms
These terms are used throughout the Uniswap APIÂ docs:
-
Uniswap protocols in API context refer to pool-based routing across Uniswap v2, Uniswap v3, and Uniswap v4 liquidity (v1 is not supported by the API).
-
Classic in API routing terminology means a pool-based route through Uniswap protocol liquidity (v2/v3/v4), not UniswapXÂ RFQÂ routing.
-
UniswapX refers to the intent-based RFQ swap mechanism. UniswapX has two versions: UniswapX_V2 and UniswapX_V3. In API responses, the
routingfield will return DUTCH_V2 or DUTCH_V3 (respectively) for UniswapX quotes. These are also known as DutchQuoteV2 and DutchQuoteV3 in some API payloads and tooling. Additionally, on Base and Unichain chains, theroutingfield may return PRIORITY for UniswapX_V2 quotes, which can also be referred to as PriorityQuote. -
Permit2 is a smart contract that simplifies sharing and managing token approvals. All Uniswap workflows utilize Permit2, with Uniswap protocols using AllowanceTransfer and UniswapX using SignatureTransfer. In short, users sign Permit2 messages that allow the Permit2 contract to spend tokens from the user's wallet. Permit2 messages can include permissions that limit spending to one transaction, a specific time window, or a specific token amount.