User Guide: Swaps
Our support articles are for MetaMask Swaps only. In other words, MetaMask provides support for the swaps that happen through the use of the MetaMask Swaps button. If you are performing swaps directly on a different platform or another DEX, MetaMask may provide some general orientation or guidance, but it should not be considered definitive; reach out to the support team or community for the exchange or platform where you are swapping for assistance.
MetaMask Swaps is a feature that allows you to swap one cryptocurrency token for another. It's super convenient and straightforward, reducing the number of steps and third-party smart contracts needed in order to obtain tokens that interest you.
You can use MetaMask Swaps either on MetaMask Extension, MetaMask Mobile, or MetaMask Portfolio. Here are the networks Swaps is currently available on:
- Ethereum mainnet
- Solana (Extension only)
- BNB Smart Chain
- Avalanche C-Chain
- Polygon
- Optimism
- Arbitrum
- zkSync Era
- Linea
- Base
When you use MetaMask Swaps, remember that MetaMask is acting as an information aggregator: we pull together quotes so you can find the most advantageous one.
From there, you can decide whether or not to proceed with the transaction with the platform or liquidity provider at hand. MetaMask does not provide the liquidity, execute the trade, or give you any advice whatsoever as to what tokens you should swap.
How to Swap
It doesn't matter whether you're on MetaMask Extension, Mobile, or Portfolio, getting the tokens you want is only a few clicks—or taps—away.
On the main MetaMask screen, click the button marked 'Swap'.
You'll be presented with the main Swap screen:
- Extension
- Portfolio
- Mobile
Preparing your Swap
- First, choose the token that you have, that you're willing to 'spend', using the drop-down menu at the top.
- Further down, choose the token you're interested in acquiring using the second drop-down menu.
- Adjust the amount of the first token up or down until you're comfortable with the amount you're spending, and the amount you're acquiring.
You'll see the app go through a process of searching for the best price. This process is the secret ingredient in making MetaMask Swaps the cheapest and best swapping service out there. There's a lot going on behind the scenes while you're watching Swaps search.
Behind the scenes
Swaps is searching across decentralized token exchanges and token swapping protocols to find you the most advantageous exchange rate.
At the same time, it's running test transactions, checking to make sure that if you do end up submitting a transaction, that it's likely to go through — and if not, those options are filtered out. MetaMask is saving users here from the pain of a failed transaction: with Ethereum mainnet gas fees and the complexity of token smart contracts, a failed transaction adds a significant financial injury to the insult of an incomprehensible error code. Swap's failure rate is very low, and improvements are in the works to make it almost nonexistent.
Some eagle-eyed users will have noticed on the previous screen, in the lower left-hand corner, a mention of "2% slippage". Slippage is the amount of change between the price you click on and the final transaction price that MetaMask Swaps will tolerate.
Given the highly liquid and fluctuating nature of decentralized finance and cryptocurrencies, prices can change from second to second. This is why Swaps allows a little bit of a difference between the price you agree on and the final price, to ensure your transaction goes through — but not too much, in order to protect you from sudden spikes or drops.
So with that DeFi number-crunching done, you get the quote screen:
Executing your Swap
The quote screen has a lot of information, but don't be alarmed. First of all, up at the top, you'll see that MetaMask Swaps is continuing to ensure that you're getting the most up-to-date price and availability.
The main feature is in the middle of the screen: the amount of tokens that you are going to acquire (keeping in mind slippage) as of the last quote. You can see details such as the exchange rate, and optionally you can dive into how the quote got calculated, as well as advanced gas settings.
Gas fees
Within MetaMask Swaps, you’ll see two values, the estimated gas fee, displaying the expected cost of executing the transaction, and the max fee, which is the maximum amount you’ll pay for gas. Depending on network activity, the actual cost of gas may be higher or lower than the estimated gas fee, but will never be higher than the max fee shown on this screen.
To learn more about gas fees, please visit this guide.
What if I don't have enough gas?
Don’t have enough gas to cover your swap? Don't worry – MetaMask now offers a convenient gas station, allowing you to fill up on gas and swap your tokens in one transaction. To learn what transactions MetaMask Gas Station can cover, read more here.
The swap must be on Ethereum Mainnet
You do not have enough ETH in your wallet to cover gas
The value of your swap is greater than the cost of gas
You have Smart Transactions enabled
You use version 12.6.0 or higher of the MetaMask Extension, or version 7.43 or higher of MetaMask Mobile
If your swap meets these prerequisites, we will automatically include gas costs in the quote you receive. For example, let’s say you want to swap 400 USDC into DAI, but you don’t have enough ETH to cover gas. If the max gas fee is estimated to be $9.41, that amount is subtracted from the amount of DAI you would receive.
Using MetaMask Gas Station allows you to proceed with your swap without having to manually purchase & transfer more ETH to your wallet, because MetaMask handles this in the transaction. The ‘max fee’ associated with your swap will be priced into the quote, and if the actual gas fee is lower than this estimated amount, any unused ETH will be added to your wallet following completion of your transaction.
FAQs
What if the value of my swap is less than the cost of gas?
You’ll be unable to use the MetaMask Gas Station if the value of your swap is less than the cost of gas. In this case, you can always buy more ETH to cover gas.
Can I use MetaMask Gas Station on other networks?
MetaMask Gas Station is only available on Ethereum Mainnet. For other networks, MetaMask offers the ability to buy tokens directly from your wallet. This provides you with a convenient way to top-up your gas balance and continue with your swap.
What tokens can I use with the MetaMask Gas Station?
You’ll be able to use the MetaMask Gas Station for swaps that include one or more of the following tokens:
- USDT
- USDC
- DAI
- ETH
- wETH
- wBTC
- wstETH
- wSOL
What if I have enough gas already?
MetaMask Gas Station is only intended for you to use when you do not have enough gas. If you have enough gas, you will be able to review and complete your swap like normal.
If you're ready to go, click the Swap button!
As with all blockchain transactions, it's not instantaneous, but you should see your tokens in your wallet soon. If they're uncommon tokens, or for whatever reason they're not showing up in your wallet, follow our instructions here to add them.
Send and swap crypto at the same time
Whenever you're sending funds from one account to another, you can choose which token you want to spend and select the token the other person wants to receive. This way, you won't have to first swap one token for another and then create another transaction to send it someone's way; saving you both time and gas.
To use MetaMask's 'Send & Swap' feature:
- Open MetaMask and click 'Send'.
- Select the address you wish to send funds to.
- Choose the asset you wish to send from your account.
- Choose the asset you wish the recipient account to receive.
- Review the quote, and confirm your transaction!
This feature is currently available on MetaMask Extension, with MetaMask Mobile and Portfolio coming soon. Please note that this method does not yet support Smart Transactions.
Swap to an exact output amount
Now, instead of only choosing how much of a token you want to swap, you can specify the exact amount of funds you want to receive. This automatically calculates and fills in the necessary amount of tokens you need to send.
This feature is currently available on MetaMask Portfolio, with MetaMask Extension and Mobile coming soon.
Other resources
Why are some tokens missing from MetaMask Swaps?
How do I see the price at time of purchase for tokens bought through MetaMask Swaps
Why did my MetaMask swap fail?
Why is the MetaMask Swap button unavailable / greyed out?
I did a swap, but received fewer tokens or less fiat value than I expected. Why?