Protocols Overview
Navigate the Uniswap protocol documentation, from the core AMM versions to supporting infrastructure contracts.
Protocols
Uniswap is a suite of onchain protocols. At its core are the automated market maker (AMM) contracts, the pool contracts that hold liquidity and execute swaps. Surrounding them are supporting protocols that handle routing, token approvals, resource locking, smart wallet delegation, and fee distribution.
This page helps you orient within the protocol documentation and find the right starting point for your integration.
AMM Protocols
The AMM is the heart of Uniswap. Each version introduced architectural changes that improved capital efficiency, composability, and gas costs. Uniswap v4 is the current and recommended version for new integrations.
Uniswap v4
v4 consolidates all pools into a single PoolManager contract and introduces hooks, external contracts that can customize pool behavior at every stage of its lifecycle (initialization, swaps, liquidity changes, fee logic). It uses flash accounting to defer token transfers until the end of a transaction, enabling significant gas savings for multi-step operations.
v4 is the most flexible and gas-efficient version of the protocol. If you are building a new integration, start here.
| Resource | Link |
|---|---|
| Concepts | Hooks, Flash Accounting, Dynamic Fees |
| Guides | Set Up Environment, Build Your First Hook, Security Framework |
| SDK | Uniswap v4 SDKÂ docs |
| Deployments | Uniswap v4Â addresses |
| Repositories | v4-core, v4-periphery |
| Audits | Core audits, Periphery audits |
Other AMM Versions
Supporting Protocols
Beyond the AMM, Uniswap relies on a set of infrastructure contracts that handle routing, approvals, fee distribution, and more. These protocols are used across multiple AMM versions and are important for production integrations.
Universal Router
The Universal Router is an unowned, non-upgradeable contract that composes swaps across Uniswap v2, Uniswap v3, and Uniswap v4 in a single transaction. It uses a command-based encoding system and integrates with Permit2 for signature-controlled token approvals.
If you are executing swaps programmatically, the Universal Router is the recommended entry point.
Universal Router documentation
Permit2
Permit2 unifies signature-based token transfers and time-bound allowances into a single contract. It is used by the Universal Router, the PositionManager, and other Uniswap contracts to reduce repeated approval transactions and improve security.
Protocol Fees
Fees from all Uniswap protocol versions flow through Fee Adapter contracts into a per-chain TokenJar. Releaser contracts define how collected fees are accessed, for example, the Firepit Releaser burns UNI in exchange for collected assets.
The Compact
The Compact is an ownerless ERC-6909 contract that enables resource locks, tokens that are credibly committed for asynchronous conditions and claimed once those conditions are met. It supports single-chain and multichain flows and is used in cross-chain coordination.
Smart wallet (Calibur)
Uniswap smart wallet features are powered by Calibur, a non-upgradeable contract implementation for EIP-7702 delegation. Users delegate to the implementation while keeping their existing EOAÂ address.
Security
Uniswap Labs maintains an active bug bounty program on Cantina for eligible vulnerability disclosures.