Uniswap Exchange: How It Works, Fees, and v4 Hooks
Table of contents
Uniswap is a decentralized exchange protocol on Ethereum and other chains where users swap tokens against liquidity pools using smart contracts, with no order book and no intermediary holding funds. In the v2 Uniswap documentation, it is stated that every pool contains reserves of two ERC-20 tokens, and trades follow the rule that the product of the reserves, x × y = k, must not fall. Users provide liquidity by depositing tokens and earn fees. According to Wikipedia, the protocol was created on November 2, 2018, by Hayden Adams, and its fourth version, v4, got to its stable release on January 31, 2025.
This guide explains how Uniswap works, what the versions changed, how fees are split, how to swap safely from a wallet like MetaMask, and what v4 hooks bring. It is not a review or a rating. Fees and features change through governance, so the live interface should be checked.
How Uniswap Works
Anyone can add liquidity by depositing an equivalent value of each token in a pair and receives pool tokens reflecting pro-rata share of the reserves, according to the v2 documentation. Price is changing only by trades, and when the price of Uniswap pool differs from the market price, arbitrage trades will correct it. According to the documentation, larger trades relative to the size of reserves get progressively worse rates, and that is the reason behind price impact.
A Hypothetical Swap
This is just an example with imaginary numbers. A pool consists of 100 Token A and 100 Token B, meaning that k = 10,000. A trader sells 10 Token A. If there is no fee at all, the pool must keep k, so it holds 10,000 ÷ 110 ≈ 90.91 Token B and pays out around 9.09. With a 0.30% fee taken from the input, only 9.97 Token A counts toward the curve, and the payout is about 9.07 Token B. The trader will get around 9.3% less than the 1:1 rate, and most of this difference is price impact because the trade is relatively big for the pool. Real pools are much deeper, and the live interface shows the quote.

Versions and What Changed
-
v1. The protocol was started in November 2018, according to Wikipedia. v1 details were not investigated for this article.
-
v2. Released in May 2020, according to Uniswap's support page, allowing users to trade any ERC-20 for any other ERC-20 without ETH as one of the sides.
-
v3. Released in May 2021 and introduced concentrated liquidity with a possibility for providers to pick certain price ranges.
-
v4. Released in January 2025, introduced hooks, more fee tiers, pool customization, and, according to the same page, reduced network costs.
According to Uniswap's support page, the web app, wallet, and extension may use v1, v2, v3, or v4 pools, but it does not explain how trades are routed between different versions.

Fees
Swap Fees and Liquidity Providers
Uniswap's support page defines a fee tier as the percentage of the liquidity provider fee that is applied to swaps in a pool. v2 has one 0.3% tier. v3 offers 1%, 0.3%, 0.05%, and 0.01% tiers, while another page mentions only the first three as standard. v4 allows an unlimited number of tiers. The liquidity providers get the fees, split between participants.
Protocol Fee
According to the fee documentation of Uniswap, after the governance proposal known as UNIfication in December 2025, protocol fees are activated in all v2 pools and some v3 pools. In v2, the 0.30% fee splits between 0.25% to liquidity providers and 0.05% to the protocol. The page says that the protocol fee is about one sixth of the swap fee in enabled pools, and it can be changed by governance. According to Wikipedia, this proposal also included the token burn.
Interface Fee
As of December 27, 2025, Uniswap Labs support page stated that its web app and wallet charge 0% as an interface fee, and any fees will be listed on that page. That is different from the previous data of 0.15% and 0.25% fees on the interface, so the live swap detail section should be read before confirming.

Uniswap v4 and Hooks
According to the v4 documentation, it introduces a singleton design, where one PoolManager contract stores the pool state, thus, pool creation is just a state update rather than a deployment of a new contract. The hooks are additional contracts that are invoked by the PoolManager before and/or after swaps and liquidity changes. The other features described are flash accounting through transient storage, native ETH support without wrapping, custom accounting, and dynamic fees, where the pool creators can set fees from 0% to 100% with an increment of 0.0001%.
Hooks add risk. Trail of Bits' post of July 30, 2026 lists vulnerability classes such as unprotected callbacks, accounting errors, and permission mismatches, and it cites two incidents: Cork (around $12 million, May 2025) and Bunni ($8.4 million, September 2025). The post is written for the hook builders and gives no instructions for the end-users. A user can see that a v4 pool with a custom hook has extra code, so the pool and token should be checked before trading.


How to Swap and Connect MetaMask
-
Open the official Uniswap site by entering or bookmarking the address and choosing the connect option, then selecting MetaMask.
-
Choose the network and make sure there is enough native token for gas.
-
Select the tokens and the amount, check the swap detail section for fees, price impact, and minimum received.
-
Approve the token if needed, and confirm the swap. MetaMask support page says that a swap requires two transactions, so just approving the token does not mean the swap is done.
-
If the swapped tokens are not shown in the wallet, add them manually.
MetaMask support page does not describe the connection process and does not mention anything about the slippage settings, so the steps above are based on the general use and the interface. It also states that if Uniswap asks for the Secret Recovery Phrase, this site or app is a scam.

Uniswap v3 on Arbitrum and Developer Tools
According to the deployment documentation, v3 contracts are deployed on Arbitrum One (chain ID 42161) and Arbitrum Sepolia testnet, including factory, position manager, quoters, and routers. It is stated that UniversalRouter is the preferred entry point for ERC-20 and NFT swaps, and the integrators should not assume that contract addresses are the same across chains. The v3 SDK, subgraph, v2 router, and v4 whitepaper were not checked in this article, and developers should consult official documentation on these subjects.
Risks
-
The price impact and thin liquidity can increase the cost of trades.
-
Fake tokens and look-alike sites exist, since pool creation is permissionless.
-
The smart contract and hook bugs can lead to losses.
-
Liquidity providers can suffer from impermanent loss, that was not covered by the sources used.
-
Do not enter the recovery phrase on any site and approve only the tokens and amounts you understand.
What to Check Live
-
The official site address and network of the wallet.
-
The fee lines in the swap detail section, including the interface fee.
-
The token contract address versus a trusted source.
-
The price impact and minimum received before confirming the swap.
-
The type of the pool: v2, v3, or v4 pool with a hook.
This article is educational and is not investment advice. Trading is risky, and every reader should verify the live data. Interfaces of wallets and exchanges were not tested in this article.