Cross-chain · Ethereum → Polygon

Swap WBTC from Ethereum to USDC on Polygon

Swap WBTC from Ethereum to USDC on Polygon. Holders of wrapped bitcoin who need Circle's native USDC on chain 137 spend WBTC and receive that dollar.

WBTC is an ERC-20, not bitcoin on the Bitcoin chain. You approve 0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599 on Etherscan. It uses 8 decimals. A Bitcoin address cannot receive it. The dollars you receive are 0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359 on Polygonscan, Circle's native USDC, 6 decimals. USDC.e at 0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174 is not the output. Gas to leave is ETH on chain id 1. Import the native USDC from Polygonscan once the wallet is on chain id 137. The bridged USDC.e row will stay unchanged, which is easy to misread as a failed route.

Diagram for Swap WBTC from Ethereum to USDC on Polygon
WBTC leaves Ethereum. USDC is what can arrive on Polygon.

Not a Bitcoin withdrawal

This route is the wrong tool if the destination is a Bitcoin address. WBTC stays an Ethereum token until the route spends it, and the output is a dollar on Polygon. Redeeming WBTC for bitcoin, where a custodian allows it, does not use Polygonscan and does not pay 0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359.

Eight decimals in, six out, and not USDC.e

Check 0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599 on Etherscan for the WBTC you spend. Check 0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359 on Polygonscan for the native USDC you receive. The bridged USDC.e contract will not move. A mixed-up decimal field will invent the size of the balance.

ETH to start, POL to finish

WBTC does not pay Ethereum gas. Keep ETH on chain id 1. Native USDC does not pay Polygon gas. Keep POL on chain id 137, where blocks are about 2 seconds. Polygon is the network the dollars land on. Mainnet blocks are about 12 seconds.

A mainnet WBTC sale is enough for mainnet dollars

WBTC already trades against Circle USDC on Ethereum. Use that pool when the dollars should stay on chain id 1 as 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48. This bridge is for a wallet that needs the Polygon native contract. Selling on mainnet never creates it.

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 WBTC from Ethereum to USDC on Polygon?

WBTC is an ERC-20, not bitcoin on the Bitcoin chain. You approve 0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599 on Etherscan.

Can the receiver be a Bitcoin address?

No. The output is Circle's native USDC on Polygon, 0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359. The input is WBTC at 0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599 on Etherscan, an ERC-20 with 8 decimals. Neither side is the Bitcoin network. Use an EVM address that can switch to chain id 137.

Why does a small WBTC figure represent a large dollar value?

WBTC uses 8 decimals, so a fraction of one token is a meaningful amount of wrapped bitcoin. The USDC you receive is set by the quote you sign, which this page does not fix. Read the minimum on that quote. The native USDC then displays with 6 decimals on Polygonscan.

What do I hold besides WBTC?

ETH on Ethereum, because chain id 1 will not take WBTC as a fee. POL on Polygon after arrival, because native USDC will not pay chain id 137. Blocks are about 12 seconds on the way out and about 2 seconds on Polygon. Both gas coins sit apart from the two token contracts.

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