Avalanche carries two versions of USDC. Circle issues native USDC directly on the C-Chain, and a legacy bridged token called USDC.e still circulates from the pre-CCTP era. They look identical in a wallet but settle, redeem, and route through entirely different systems. Picking the right one matters for fees, redemption, and which DeFi pools you can actually use.
Quick answer: should you use native USDC or USDC.e?
Use native USDC on Avalanche unless a specific DeFi pool only accepts USDC.e. Native USDC is issued by Circle, redeemable 1:1 for dollars, and moves cross-chain through CCTP burn-and-mint. USDC.e is the older bridged token from the Avalanche Bridge. still liquid, but Circle has been steering the ecosystem toward native since CCTP launched on Avalanche in 2023.
Native USDC vs USDC.e on Avalanche
Property | Native USDC | USDC.e (bridged) |
Issuer | Circle, directly on C-Chain | Avalanche Bridge (wrapped) |
Contract | 0xB97E…E6E664 | 0xA7D7…1EC98 |
Redemption | 1:1 via Circle Mint | Must unwrap through bridge first |
Cross-chain | CCTP burn-and-mint | Bridge lock-and-mint |
Confirmation | ~2s (C-Chain finality) | ~2s on-chain, bridge adds 15+ min |
Fee (transfer) | ~$0.01–0.05 in AVAX | ~$0.01–0.05 in AVAX |
How native USDC works on Avalanche C-Chain
Circle deployed native USDC on the Avalanche C-Chain in 2022 and added CCTP support the following year. The C-Chain is Avalanche's EVM-compatible primary chain. it uses the Snowman consensus protocol, which gives sub-2-second finality at the protocol layer. A USDC transfer on C-Chain looks like any ERC-20 transfer: you pay gas in AVAX, the transaction confirms in one block, and the recipient sees the balance immediately.
Because Circle controls the contract, native USDC is directly redeemable through Circle Mint for institutional customers. Retail users redeem through exchanges (Coinbase, Kraken, Binance) that accept native USDC for USD off-ramping.
What is USDC.e and why does it still exist?
USDC.e is the legacy wrapped version that arrived via the Avalanche Bridge before Circle launched natively. The ".e" suffix is Avalanche's convention for assets originally bridged from Ethereum. It is backed 1:1 by USDC held in the bridge contract on Ethereum, but it is not directly redeemable with Circle. you have to bridge back to Ethereum first, then redeem.
USDC.e still has meaningful liquidity in older Avalanche DeFi pools (some Trader Joe, Aave v2, and Curve pools haven't migrated). If you only hold USDC.e and want to move to native, the cleanest path is a swap on Trader Joe or Uniswap rather than re-bridging.
CCTP: moving native USDC between chains
Cross-Chain Transfer Protocol (CCTP) is Circle's burn-and-mint system. Instead of locking USDC in a bridge contract, CCTP burns USDC on the source chain and mints fresh USDC on the destination. The destination token is genuinely native. same contract Circle deploys for direct issuance.
On Avalanche, CCTP supports transfers to and from Ethereum, Arbitrum, Optimism, Base, Polygon PoS, Solana, and several others. A CCTP transfer from Ethereum to Avalanche takes roughly 13 minutes (Ethereum finality is the bottleneck, not Avalanche). Avalanche → Ethereum is faster from the source side but still requires Ethereum confirmation.
How do I migrate from USDC.e to native USDC?
Three options, ranked by cost:
Swap on a DEX. Trader Joe and Uniswap have USDC.e/USDC pools with tight spreads (usually under 5 bps). Fastest and cheapest for amounts under $100K.
Circle's swap tool. Circle ran a direct USDC.e → USDC swap facility through 2024. Check circle.com for current availability before relying on it.
Bridge back and re-bridge. Unwrap USDC.e through the Avalanche Bridge to Ethereum, then CCTP back to Avalanche as native. Slow and expensive; only worth it for treasury-scale amounts where DEX slippage exceeds bridge cost.
Wallet support: Core, MetaMask, Trust
Core (Ava Labs' wallet) auto-detects both native USDC and USDC.e and labels them clearly. MetaMask requires manual token addition. paste the native contract from circle.com/usdc to avoid landing on USDC.e by mistake. Trust Wallet auto-detects native USDC; USDC.e usually needs manual import. All three handle C-Chain by default once you've added the Avalanche network (chain ID 43114).
Avalanche subnets and USDC
Avalanche subnets (now called L1s under the Etna upgrade) can deploy their own USDC contracts, but native Circle issuance is currently C-Chain only. Subnets that want USDC typically bridge from C-Chain via Avalanche's native ICM (Inter-Chain Messaging) or a third-party bridge. Dexalot, DeFi Kingdoms, and Beam each handle this differently. check the subnet's docs before sending USDC directly to a subnet address.
Sending USDC to and from Avalanche
For everyday transfers, native USDC on C-Chain is the right default. Fees run a cent or two in AVAX, transactions confirm in about two seconds, and any major exchange will accept it for withdrawals or deposits.
For cross-chain sends, CCTP through a router like Eco handles the burn-and-mint without forcing the user to manage source-chain liquidity or wait through bridge UIs. The end result is the same native USDC on the destination chain.
Related reading
Methodology and sources
Native USDC contract and CCTP route support verified against circle.com/cctp on May 23, 2026. C-Chain finality and gas data verified on Snowtrace. Subnet and ICM behavior cross-checked against Avalanche docs. USDC.e liquidity figures pulled from Trader Joe and Curve pool data, May 2026.

