Why I am getting an "insufficient funds" error?
This means you do not have enough of your network's native token in your account to cover the cost of gas. Generally, across EVM-compatible networks, each transaction (including token and contract transactions) requires gas. You can think of this as a transaction fee. For more on gas, see here.
Examples of native tokens include:
- Ether (Ethereum mainnet and testnets, plus layer 2 networks such as Arbitrum or Optimism)
- BNB (for BNB Chain, formerly BSC)
- MATIC (Polygon)
- AVAX (Avalanche).
If you have questions relating to a specific network, please read our best practices article on sidechains and custom networks here, or check our Network Profiles page for the network in question to see if we've discussed the issue there.
How can I fix it?
You can remedy this by sending some of the necessary native token to that account in order to be able to make the transaction.
If you need to buy some tokens to get a sufficient amount, you can either purchase using an on-ramp, buy from an exchange, or trade other tokens on a decentralized exchange (DEX). MetaMask supports on-ramps for native tokens for several networks -- check here to see if we cover the one you need.
Why is my confirm button greyed out?
On the confirmation screen, you might see the confirm button is greyed out. This will be because you have an insufficient amount of the native token necessary to pay for the transaction. See above.