Unwrapping WETH is a call to the withdraw() function of the WETH9 contract: the contract burns the WETH on your address and sends the same amount of ETH back to that address, 1:1 and with no fee of its own. The only cost is the network fee of one transaction - on September 20, 2026 the last five withdraw() calls on Ethereum mainnet cost $0.36-$2.06 each, on Arbitrum about $0.02, and on Base 0.00000019 ETH, a fraction of a cent (Etherscan, Arbiscan, Basescan). The rule to remember: WETH never needs to be sold to become ETH again; it is exchanged at par by the contract that issued it.
- Unwrap = withdraw(): the WETH9 contract burns your WETH and pays out ETH at exactly 1:1; there is no spread, no pool and no counterparty.
- Cost is one transaction: $0.36-$2.06 per unwrap on Ethereum mainnet, about $0.02 on Arbitrum and under $0.01 on Base on September 20, 2026 (Etherscan, Arbiscan, Basescan).
- Gas is paid in ETH: an address that holds only WETH cannot unwrap until it holds some ETH too.
- Same address, same chain: the ETH lands on the address that sent the WETH, on the network where the WETH lives; a bridged WETH on another chain unwraps into that chain's ETH, not into mainnet ETH.
What Unwrapping WETH Means
Unwrapping WETH is the reverse of wrapping: the WETH9 contract, which minted your WETH when you deposited ETH, takes the WETH back and releases the ETH it held for it. The contract keeps one ETH in reserve for every WETH in circulation - on September 20, 2026 the mainnet contract at 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2 held 2,106,670 ETH against 2,058,243 WETH outstanding (Etherscan). That is 2,106,670 / 2,058,243 = 102.4% backing: the contract holds 48,427 ETH more than it owes, ETH that was sent to the address directly instead of through deposit() and is not claimable by any WETH holder. Because every WETH is backed by an ETH already sitting in the contract, unwrapping never depends on liquidity or on a market price.
Two functions define the whole mechanism. deposit() takes ETH and mints WETH; withdraw(uint wad) burns wad WETH from the caller and transfers wad ETH to the caller. Both have been in the same verified contract since December 2017 (Etherscan, contract creation transaction 0xb95343…42fa3), and the source code has never changed. The deposit side, step by step, is in how WETH works.
How Much Unwrapping WETH Costs
Unwrapping costs exactly one network fee and nothing else: WETH9 charges no fee, and no protocol sits between you and the contract. The fee depends on the network and on the gas price at that moment, not on the amount unwrapped.
| Network | Contract | Fee of a withdraw() call | Source and date |
|---|---|---|---|
| Ethereum mainnet | 0xC02a…56Cc2 | 0.0000111-0.0000723 ETH ($0.36-$2.06) | Etherscan, last 5 withdraw() calls, Sept 20, 2026 |
| Base | 0x4200…0006 | 0.00000019 ETH (under $0.01) | Basescan, latest withdraw() call, Sept 20, 2026 |
| Arbitrum One | 0x82aF…Bab1 | 0.00000087 ETH (about $0.02) | Arbiscan, last 5 withdraw() calls, Sept 20, 2026 |
The mainnet figure moves with network load: the five calls above were sent within six minutes of each other and already differ by a factor of six ($0.36 to $2.06). Across the three networks the spread is wider still: the cheapest Base unwrap of the day cost 0.00000019 ETH against 0.0000111 ETH for the cheapest mainnet one - 58 times less for the same call. The amount unwrapped does not change the fee - 0.01 WETH and 1,000 WETH cost the same to withdraw. Exact fees for any network are in the “Txn Fee” column of the contract’s transaction list on its explorer.
Three Ways to Unwrap WETH
Every method below ends in the same withdraw() call; they differ only in who builds the transaction for you.
In a Wallet With a Built-In Unwrap
Wallets that expose WETH as a first-class asset show an Unwrap (or Swap to ETH) action next to the WETH balance: select WETH, choose the action, enter the amount, confirm. The wallet sends withdraw() to the WETH9 contract of the network you are on. Gem Wallet, Uniswap’s wallet, and most self-custody wallets with a swap screen handle it this way; any of them works, and the result is identical.
- Select WETH on the network where it sits: Ethereum, Base, Arbitrum, Optimism or Polygon each have their own WETH balance.
- Choose Unwrap or Swap to ETH: the quote shows a 1:1 rate and a network fee only.
- Confirm the transaction: the ETH appears on the same address in the next block.
On a DEX Interface
Uniswap, 1inch and other DEX front-ends recognize the pair WETH -> ETH and route it as an unwrap, not as a trade: the interface shows a 1:1 rate, no price impact and no liquidity-provider fee, and the transaction it builds is the same withdraw() call. Connect the wallet, pick WETH as input and ETH as output, enter the amount, confirm. If the interface shows a rate other than 1:1 or a swap fee, it is routing through a pool instead of unwrapping - switch the output token to native ETH, not to a wrapped or bridged variant.
Directly on the Contract
For any wallet without an unwrap button, the contract can be called from the explorer:
- Open the WETH9 contract on the network’s explorer: Etherscan for mainnet, Basescan for Base, Arbiscan for Arbitrum; check the “Contract” tab shows verified source and the name WETH9.
- Go to Contract -> Write Contract and connect the wallet: the explorer asks the wallet to sign, the private key stays in the wallet.
- Call withdraw: enter the amount as an integer with 18 decimals (1 WETH = 1000000000000000000).
- Confirm in the wallet: one transaction, gas in ETH; the ETH balance rises by the same amount when it is mined.
What Unwrapping WETH Does Not Do
- It does not move funds between networks: WETH on Base unwraps into ETH on Base. Getting that ETH to mainnet is a separate bridge withdrawal with its own time and fee.
- It does not work on lookalike tokens: aWETH (Aave’s receipt token), WETH.e on Avalanche and other bridged variants are separate contracts. aWETH is withdrawn from Aave first, which returns WETH; WETH.e is bridged back before it can be unwrapped on Ethereum. The differences are in the lookalikes table.
- It does not pay its own gas: the transaction fee is charged in ETH on every network that uses ETH for gas, and in POL on Polygon. An address holding 5 WETH and 0 ETH cannot send the unwrap.
- It does not change value: 1 WETH becomes 1 ETH. Any price shown for WETH is the ETH price (why WETH has no price of its own).
When to Unwrap and When to Keep WETH
Unwrap when the next action needs native ETH: paying gas, sending ETH to an exchange that does not credit WETH deposits, or withdrawing to a wallet or service that lists ETH only. Keep WETH when the next action is on a DEX, a lending protocol or an NFT marketplace - those contracts take ERC-20 tokens, and most swap interfaces wrap ETH again automatically if you hand them native ETH. Wrapping and unwrapping back and forth costs a transaction each time and gains nothing.
Before sending unwrapped ETH to an exchange, confirm the deposit network on the exchange side matches the network you unwrapped on: ETH on Base sent to an Ethereum-only deposit address is not credited. The full list of canonical and bridged WETH contracts per network is on the contract addresses section.