A trader with USDC on Arbitrum but no ETH cannot complete a token exchange until the wallet holds a small amount of ETH on that same network; gas is paid in native ETH, not in the token being sold.
Put ETH on Arbitrum before trying again
The confusing part is that the wallet can show plenty of USDC, ARB, or another ERC-20 token and still reject the transaction. The exchange itself may be affordable, but the network must receive ETH to process the approval and the trade. That ETH has to be in the same wallet and on Arbitrum One; ETH on Ethereum mainnet, Base, Optimism, or an exchange balance does not pay an Arbitrum transaction.
The practical fix is modest: obtain enough ETH on Arbitrum to cover the approval, if one is needed, plus the eventual trade. Leaving a small balance afterward prevents the same problem when selling, revoking a permission, or moving funds later.
Choose the smallest workable route to ETH
| Option | What it requires | Best when | What to check first |
|---|---|---|---|
| Receive ETH from another Arbitrum wallet | A trusted sender with ETH already on Arbitrum | The fastest fix is needed | Both wallets show Arbitrum One, not a similarly named network |
| Withdraw ETH directly from an exchange | An exchange that offers an Arbitrum withdrawal route | The trader holds an exchange balance | The selected withdrawal network and the receiving address |
| Bridge ETH from another network | ETH and gas on the source network | Funds are self-custodied elsewhere | The bridge destination, estimated time, and source-chain fee |
| Use a gas-sponsored interface, if available | An interface that explicitly offers this for that action | The service explains the sponsorship terms before signing | Which transaction is sponsored and whether token approval still needs gas |
Receiving a small transfer from a trusted Arbitrum wallet fits the trader who needs to act immediately. Direct exchange withdrawal fits the trader with funds off-chain. Bridging fits the trader already holding ETH elsewhere, but it is not a shortcut if the source wallet also has no native gas.
A trader comparing routes can open an Arbitrum token-swap page only after confirming that the connected wallet is on the intended network and retains ETH for the transaction sequence.
Inspect the quote before signing the exchange
Once ETH is available, the trader should reconnect the wallet, select the token being sold and the token being received, then inspect the quote rather than signing immediately. The useful checks are the token symbols, contract addresses for unfamiliar assets, price impact, minimum received amount, route, and any visible protocol fee.
A tiny test trade is sensible when the token is unfamiliar, the liquidity appears thin, or the displayed price moves sharply with the entered amount. It answers the important operational question: can this asset actually be sold through this route at a result the trader accepts?
The native gas token should not be confused with wrapped ETH. WETH is an ERC-20 representation used by contracts and pools; native ETH is what the wallet spends for network gas. A wallet may therefore show WETH without having sufficient native ETH to submit the transaction.
Treat approval and trading as separate permissions
Many exchanges require two wallet confirmations. The first is an ERC-20 approval, which authorizes a specified spender to move the token. The second executes the trade. Ethereum.org’s ERC-20 token standard reference describes approval as the ability to “approve whether an amount of token from an account can be spent by a third-party account.”
An approval that succeeds does not mean the trade has happened. It only changes an allowance on-chain. The wallet must still have ETH for the next transaction, and the final quote may change before the trade is signed. Where the interface permits it, approving only the amount needed limits the standing permission; the trade may then require another approval later.
“approve whether an amount of token from an account can be spent by a third-party account” — Ethereum.org, ERC-20 Token Standard
Resolve the failure message instead of repeatedly signing
- Insufficient funds for gas: add native ETH on Arbitrum; changing the token amount will not create gas.
- Wrong network: switch the wallet to Arbitrum One, then refresh the interface and confirm the balance again.
- Insufficient liquidity or high price impact: reduce the order size, choose a more liquid route, or stop rather than accepting an unexpectedly poor execution.
- Approval succeeded but the exchange fails: check that ETH remains for the second transaction and request a fresh quote before retrying.
- Transaction remains pending: use the wallet’s transaction details to inspect its status before creating a replacement; repeated submissions can create separate transactions.
The key distinction is simple: token balances pay for the asset being exchanged, while native ETH pays the network that records it. Once the wallet carries both the token to sell and a small Arbitrum ETH balance, the process becomes a normal two-step approval-and-trade flow.