Cross-chain · Ethereum → Arbitrum One

Swap DAI from Ethereum to USDC on Arbitrum One

Swap DAI from Ethereum to USDC on Arbitrum One. Holders leaving Maker DAI for Circle's dollar on chain 42161 spend DAI and receive native USDC.

DAI is Maker's collateral dollar at 0x6B175474E89094C44Da98b954EedeAC495271d0F on Etherscan, 18 decimals. The USDC you receive is 0xaf88d065e77c8cC2239327C5EDb3A432268e5831 on Arbiscan, Circle's native USDC, 6 decimals. Bridged USDC.e at 0xFF970A61A04b1cA14834A43f5dE4533eBDDB5CC8 is not the receipt. The chain is Arbitrum One, not Nova. You pay ETH on chain id 1, about 12 seconds a block. You later need a separate ETH balance on chain id 42161, because the USDC cannot pay gas. Import the native USDC from Arbiscan after you switch to chain id 42161. A wallet that only tracks USDC.e will look empty, and Nova will not show the dollars either. Confirm the contract on Arbiscan.

Diagram for Swap DAI from Ethereum to USDC on Arbitrum One
DAI leaves Ethereum. USDC is what can arrive on Arbitrum One.

Watch native USDC, not USDC.e

Arbiscan should show 0xaf88d065e77c8cC2239327C5EDb3A432268e5831. If you imported only 0xFF970A61A04b1cA14834A43f5dE4533eBDDB5CC8, the wallet will look empty. Decimals also change, from 18 on Maker DAI to 6 on Circle's native USDC. Read both token pages before the next transfer.

The Maker contract is the approval

0x6B175474E89094C44Da98b954EedeAC495271d0F is the DAI that decreases. Circle USDC on Ethereum, 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48, is what a mainnet DAI to USDC swap would pay. This route does not pay that contract.

Stay in DAI on Ethereum when that is the job

This route is the wrong tool if you want Circle USDC on chain id 1 or if you want to remain in DAI. Both are mainnet actions. Bridge when an Arbitrum One app whitelisted the native USDC. Arbitrum One is where the separate ETH balance then pays for using it.

Two ETH balances around the decimal change

ETH pays the Ethereum approval. ETH on chain id 42161 pays any later move of the USDC. The USDC cannot sponsor that second fee. Hold L2 ETH before you deposit the new dollars. Looking on Nova will not reveal them.

Legal

Risk disclosure

XAUConnect is a non-custodial swap aggregator. Digital assets are volatile and may lose value rapidly. Content on this page is educational and not investment advice. Verify every contract address on the official block explorer before approving a transaction.

Frequently asked questions

What is the best way to swap DAI from Ethereum to USDC on Arbitrum One?

DAI is Maker's collateral dollar at 0x6B175474E89094C44Da98b954EedeAC495271d0F on Etherscan, 18 decimals. The USDC you receive is 0xaf88d065e77c8cC2239327C5EDb3A432268e5831 on Arbiscan, Circle's native USDC, 6 decimals.

Does this give me Circle USDC on Ethereum?

No. It spends Maker DAI and pays Circle's native USDC on Arbitrum One, 0xaf88d065e77c8cC2239327C5EDb3A432268e5831 on Arbiscan. Ethereum Circle USDC remains 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48 on Etherscan. If that mainnet contract is what you wanted, trade DAI for it on chain id 1. Trade on Ethereum if that is the dollar you want.

Why can the USDC display look nothing like the DAI amount?

DAI uses 18 decimals and Arbitrum native USDC uses 6. A wrong decimal field shifts the display by many zeros. Check decimals on Arbiscan for 0xaf88d065e77c8cC2239327C5EDb3A432268e5831. Judge the trade by the quote you sign. This page does not set that quote.

What if the app listed USDC.e?

Do not deposit this output there. USDC.e is 0xFF970A61A04b1cA14834A43f5dE4533eBDDB5CC8. This route pays the native contract on Arbitrum One, chain id 42161. Sending native USDC into a pool that wants the bridged token will not credit you. Match the allowlist, not the USDC ticker.

Live execution

Trade on XAUConnect

Open the swap page with this cross-chain route pre-selected, then connect your wallet on the source chain to quote and execute. You keep the keys.

Continue exploring

Related markets, guides & networks

Next pages on this subject. Read them before you trade.

Build programmatically

Swap via API for bots and AI agents: quotes, builds, and cross-chain routes.

Developer quickstart