Skip to content
Arc Mainnet7 min readJohn Davis

Uniswap on Arc Mainnet: V2, V3, V4 and How Pools Are Created

Uniswap Arc Mainnet guide: V2, V3 and V4 are deployed, V2 carries 300+ pairs, and here is how Arctools uses V2 pairs for launches and liquidity. Plus the risks.

Uniswap Arc Mainnet coverage is complete: V2, V3 and V4 are all deployed, and Uniswap V2 — the version Arctools builds on — carries more than 300 pairs, making it the deepest venue on the chain by pair count and the predictable choice for a new token. V2's model is a constant-product pool with fungible ERC-20 LP tokens, which is why a pool created there can be locked or burned in a single transaction.

This page covers what is deployed, how a pool on Arc is created, what the fee mechanics are, and how to choose between V2, V3 and V4 for your own token.

What Uniswap Arc Mainnet deploys: V2, V3 and V4

Version Pool model LP position Swap fee tier Practical implications
Uniswap V2 Constant product, one pair per token pair Fungible ERC-20 LP token 0.30% LP tokens can be held, transferred, locked or burned; concentration is straightforward; IL profile is the standard curve
Uniswap V3 Concentrated liquidity in price ranges ERC-721 position (NFT) Multiple tiers More fee capture per unit of capital, but positions are managed and IL accelerates outside the chosen range
Uniswap V4 Singleton contract with hooks Position-based Configurable Hooks allow custom pool behaviour; a newer surface with less ecosystem tooling

The V2/V3 distinction matters more than it looks, because of how positions are represented. A V2 LP token is an ERC-20, so it can be sent anywhere — including into a locker contract with a public unlock timestamp, or to an unspendable address to burn it. A V3 position is an NFT representing a specific tick range, so "locking the liquidity" means something different and the tooling has to be built for that representation. That is one of the reasons Arc Liquidity Locker targets V2 pairs.

Why Arctools uses V2 pairs

Four reasons, in order of importance:

  1. Verifiability. Anyone can read a V2 pair's reserves and internal price in two contract calls and confirm what the market is. That makes claims like "the pool holds X USDC and the LP is locked until date Y" checkable by a buyer in under a minute.
  2. Fungible LP tokens. Locking, burning and transferring liquidity are all standard ERC-20 operations. No position management, no tick ranges, no need to trust a bespoke contract.
  3. Predictable behaviour for new tokens. Constant-product pools absorb trades with a smooth, monotonic price impact. Concentrated liquidity can be dramatically more capital-efficient, but it also means a new token can be fully converted to one side the moment the price leaves the range — a real risk in the first week of a launch.
  4. Liquidity network effects. With 300+ pairs already on Arc, the V2 venue is where existing liquidity, tooling and habit live. A new pool joins an ecosystem rather than starting one.

If you specifically want concentrated liquidity, V3 and V4 are available on Arc and you should use them deliberately — not as a default.

How a pool is created on Arc

A Uniswap V2 pool on Arc is a pair of two ERC-20 tokens. Creating one is mechanical:

  1. Deploy or identify the token. If you have not launched yet, Arc Token Launch deploys an ERC-20 in one transaction.
  2. Choose the pair. For a new token, this is your token against USDC — and specifically against the ERC-20 USDC at 0x3600000000000000000000000000000000000000, which exposes the chain's USDC balance at 6 decimals. Native USDC (18 decimals) is what pays gas; it is not what a pool trades. This is the single most common source of Arc integration errors, and it has its own explainer.
  3. Set the amounts, which set the price. The pair's opening price is simply the ratio of the two deposits. Depositing 1,000,000 tokens against 10,000 USDC opens the token at $0.01:
Your token deposited USDC deposited Opening price Implied FDV of a 1,000,000,000 supply
1,000,000 10,000 $0.010 $10,000,000
10,000,000 10,000 $0.001 $1,000,000
10,000,000 2,500 $0.00025 $250,000
100,000,000 5,000 $0.00005 $50,000

The price you set is the price the first buyer pays, and it is also the price your own supply will be sold at if the market comes to buy. Pick it deliberately — impermanent loss is what that decision costs later.

  1. Approve and add liquidity. The Arc Liquidity Pool Creator creates the pair and seeds it in one flow, showing the resulting opening price before you sign.
  2. Commit the LP tokens. Send them to the Arc Liquidity Locker with a public unlock date, or burn them. Leaving them in a wallet is the risk every buyer checks first.

If you would rather not have a window at all, Arc Bundle Launch folds deployment, pair creation, liquidity and coordinated buys into one atomic transaction, so the pool never exists in an unprotected state.

Fees, gas and what trading actually costs on Arc

Swap fees. A Uniswap V2 pair charges a 0.30% fee on each swap, and that fee stays in the pool's reserves — which is to say it accrues to whoever holds the LP tokens. (Uniswap V2 also contains a protocol-fee switch that would divert a share of that fee; it is not enabled by default, and you should verify the current state onchain rather than assume.)

Gas. Arc charges gas in native USDC at 18 decimals, with an enforced minimum maxFeePerGas of 20 Gwei — below that, the mempool drops the transaction silently, with no error and no receipt. At the floor, 1,000 gas costs 0.00000002 USDC, which makes even a routed multi-hop swap a fraction of a cent. The details are in Arc's gas and fees reference.

Finality. Arc has deterministic sub-second finality. One confirmation is final, so a swap is settled the moment it lands and there is no reorg window to reason about. For trading this is pleasant; for launches it removes the class of failure in which a liquidity add gets reordered.

Connecting a wallet. Arc Mainnet is chain id 5042, RPC https://rpc.mainnet.arc.io, explorer https://explorer.arc.io. Full parameters are in Arc's connect reference, and the canonical contract addresses — including USDC and the Uniswap deployments — are in the contract addresses reference.

V2, V3 or V4 for your token?

If you want… Choose Why
A launch anyone can verify V2 Reserves and LP ownership are readable in seconds
Liquidity you can lock or burn V2 Fungible ERC-20 LP tokens
Maximum fee income per dollar of capital V3 Concentrated ranges multiply fee capture inside the range
Custom pool behaviour (oracles, dynamic fees, limit orders) V4 Hooks exist for exactly this
A market that behaves predictably on day one V2 No range exits, no position management

A reasonable pattern for a launch team: seed a V2 pair as the primary market, because that is what a buyer can verify and what a locker can secure, and add V3 liquidity later if you want to deepen a specific price range for trading. Splitting liquidity across venues early is usually a way to have two shallow pools instead of one deep one.

Checking a pool before you trade or add to it

  1. Read the reserves. In a V2 pair, price is usdcReserve / tokenReserve (adjusted for decimals). If that number does not match the quote you are seeing, the quote is stale.
  2. Read who holds the LP tokens. A locker contract with a public unlock timestamp, or a burn address, is the good outcome. An ordinary wallet means the pool can be withdrawn at any moment — the mechanics are covered in lock liquidity vs burn.
  3. Check concentration. How much of the supply sits in the pool versus in a few wallets? The free Arc Token Snapshot tool will tell you, and the token checker reads ownership, mint authority and tax surface in the same pass.
  4. Estimate your own slippage before you trade. In a constant-product pool, a buy of dx against a USDC reserve of y moves the price by roughly dx / (y + dx). Into a 20,000 USDC pool, a 1,000 USDC buy is about 4.8%; into a 100,000 USDC pool it is about 1%.

Adding to an existing pool

If you are deepening a pool rather than creating one, the constraint is that you must deposit both sides in the pool's current ratio, or the deposit itself moves the price. Add Liquidity reads the live reserves and tells you the exact amounts, and Remove Liquidity previews what each withdrawal percentage returns, including the swap fees your LP tokens have accumulated.

Where Arctools fits

Arctools is an independent tool suite for Arc Mainnet, built around Uniswap V2 pairs: create a pool, add to one, withdraw from one, and lock the LP tokens so the commitment is verifiable. Each service is a flat 50 USDC, paid in USDC on Arc; snapshots and the token checker are free.

Arctools is not affiliated with Circle, the Arc Foundation, or Uniswap Labs.

Covered in this post

Uniswap Arc MainnetUniswap on ArcUniswap V2 Arccreate Uniswap pair Arc MainnetArc Mainnet DEX poolArc liquidity pool creatorUniswap V3 ArcArc token listing

Read next

Arc Mainnet

Arc USDC Gas Token Explained: 18 Decimals, 6 Decimals and One Balance

Arc USDC gas token explained: one balance, two interfaces. Native USDC at 18 decimals pays gas; the ERC-20 at 6 decimals does pool math. Never mix them.

Read it
Liquidity

Lock Liquidity vs Burn: Which One Actually Protects Buyers

Lock liquidity vs burn: locking keeps a defined exit for you and a verifiable commitment for buyers, burning gives up the LP forever. Which to choose, and when.

Read it
Liquidity

Impermanent Loss Explained for Launch Teams (With the Math)

Impermanent loss explained for launch teams: what it costs, how to estimate it with pool math before you commit, and why it matters more for new tokens.

Read it