Skip to main content

User Guide: Swaps

Does this article need to be translated?

Contribute to the Help Center

Submit translations, corrections, and suggestions on GitHub, or reach out on our Community forums.

MetaMask Swaps is a MetaMask feature that allows you to do exactly that: swap one cryptocurrency token for another (for more on ERC-20 tokens and the difference between these and NFTs, see our user guide). It's super convenient and straightforward, and drastically reduces the number of steps needed, and the amount of exposure to third-party smart contracts, 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
  • BNB Smart Chain
  • Avalanche C-Chain
  • Polygon
  • Optimism
  • Arbitrum
  • zkSync Era (Extension and Mobile only)
  • Linea
  • Base (Portfolio and Extension only)

Things to know before swapping:

  • Even if a token complies with the ERC-20 standard, you shouldn't buy or obtain a token without researching it first. One of the novelties of cryptocurrencies and decentralized finance is their programmatic nature; a token isn't necessarily a static asset; it may have functions that can affect how it is used, or how it affects your wallet — like this, for example. Of course, there are other less malicious caveats: for example, some tokens you can acquire, but to gain the utility intended from them, you need to stake them on a specific platform.
  • 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.

MetaMask user guide swaps slippage

  • Custom tokens is what MetaMask calls tokens that aren't common or widespread enough to be in MetaMask's standard list of tokens, which are detected by default when you have Ethereum mainnet (and a handful of other popular networks) selected as your network in MetaMask. If you swap some tokens into your wallet, but don't see them (after a few minutes — remember, blockchain is fast, but it's not instantaneous), try adding the tokens manually.
  • 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.
warning

Remember: MetaMask is only an intermediary in your swap!

When you use MetaMask Swaps, bear in mind that MetaMask is acting as an aggregator or intermediary: we pull together quotes and offer you the most advantageous one. From there, you can decide whether or not to proceed with the transaction with the platform/liquidity provider at hand. MetaMask does not provide the liquidity, execute the trade, or sell you tokens.

Ready to dive in?

It doesn't matter whether you're on MetaMask Extension or Mobile, getting the tokens you want is only a few clicks—or taps—away.

Swaps in MetaMask Portfolio

You can also use Swaps in MetaMask Portfolio. The steps are almost identical to Swaps in MetaMask Extension. In any case, the concepts listed below apply to all platforms.

On the main MetaMask screen, look for a button marked 'swap'. Smash that button!

MetaMask Swaps icon locate

You'll be presented with the main Swap screen:

MetaMask swaps main screen extension

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.

First of all, 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 yet another parameter that Swaps is using in your favor, and it's explained in more detail up above.

So with that DeFi number-crunching done, you get the quote screen:

MetaMask swaps quote screen extension

Executing your Swap

There's kind of a lot going on here, but don't be alarmed. First of all, up at the top, you'll see that MetaMask Swaps is continuing to do all the work that we mentioned previously on an ongoing basis, ensuring 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

Gas fees estimate

Within the MetaMask Swaps interface, 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.

Prerequisites

Prerequisites for using MetaMask Gas Station:

  • 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

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.

MetaMask Gas Station screen

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.

Frequently asked questions

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 MetaMask Gas Station with?

  • 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

Can I use MetaMask Gas Station 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, smash that Swap swiper across the screen!

info

Why haven't my swapped tokens shown up in my wallet?

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:

  1. Open your MetaMask interface and click 'Send'.
  2. Select the address you wish to send funds to.
  3. Choose the asset you wish to send from your account.
  4. Choose the asset you wish the recipient account to receive.
  5. 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 the recipient 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.

Enter the SwapVerse

One of the truly incredible things about MetaMask, and one of the reasons that it can offer you such an unparalleled token-swapping experience, is that it is built to be network-agnostic: as long as the blockchain network you're connecting to is Ethereum-compatible, you can configure MetaMask to work on it. So what?

So you can use MetaMask swaps on other networks, too. You don't have to be on Ethereum mainnet; you can use Swaps on Polygon, for example. As other sidechains and custom networks come online, try it out. Swaps enables you to trade tokens on any Ethereum-compatible network, right from your wallet, without having to interface directly with third-party platforms, thus lessening your exposure to potentially hackable or malicious smart contracts.

You even have the ability, through Swaps, to acquire non-Ethereum tokens on mainnet. But remember: always navigate the multiverse through bridges and portals.

FAQs

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?

How do I cancel a pending swap?

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?

Error fetching quote

Uniswap support and troubleshooting tips

User guide: custom networks and sidechains