In our previous How To Use Metamask Part 1 guide, we have explained all the basics like how to create a wallet, how to restore your previous wallet, how to receive and send ERC-20 tokens, and how to add EVM-compatible chains to your Metamask.
In this part 2 guide, we assume you have known all of these basics. If you don’t, once again, please check our How To Use Metamask Part 1 guide, and come back here once you already know all these basic steps.
One of the biggest reasons why Metamask has become the most popular web3 crypto wallet in the world is simply because of its interaction with all the existing (and especially mainstream) dapps out there. Many decentralized exchanges (DEX-es) and other DeFi applications have almost always prioritized Metamask connection compared to other types of web3 wallet applications.
Take a look at the most popular DEX on Ethereum, Uniswap. As we all know, everybody who wants to trade ERC-20 tokens in a decentralized environment would always choose Uniswap as the primary go-to exchange. Here is how you can connect your Metamask with Uniswap.
Once you know how to do this, you will be able to connect your wallet with other DEX-es on other chains that are compatible with your Metamask as well.
Go to Uniswap app page and find the button on the top-right Connect Wallet and choose Metamask
After that, you will see a pop-up and you will be asked to choose which metamask wallet you want to connect to Uniswap. Assuming you are new to this, most likely you only have one account registered in your metamask chrome extension.
Once your metamask is connected, you will see the top-right button Connect Wallet has now changed to your wallet address 0x…
In order to make a swap, you just need to select the token that you want to swap from and you want to swap to.
For example, if you want to swap from ETH to USDC, then select ETH in the first row and USDC in the second row.
You need to put how many ETH you want to sell for USDC. After the app fetches the price, you can click Swap button. You will see another pop-up to see the Expected Output and Price Impact. Scroll down and click Confirm Swap.
After you confirm the swap, your Metamask will show another pop-up to confirm that you want to proceed with this transaction. You can also edit the gas fee if you want your particular Uniswap transaction to be confirmed faster by the Ethereum blockchain (check our part 1 guide if you don’t know how to do this).
Once the blockchain confirms your transaction, Uniswap’s smart contract will automatically send your USDC to your wallet. Everything is done automatically.
This is how you use your Metamask to trade with DEX-es. And if you want to disconnect a particular account, just click your wallet address number on the top-right and click Disconnect.
Now let’s say you want to use other DEX-es on other chains, how to do this? the steps are quite identical. On Binance Smart Chain (BSC), you can make the same trades (with the exact same steps) by using PancakeSwap.
On Polygon, you can make the same trades by using Quickswap. Most AMM DEX-es out there are modeled after Uniswap, so the process is quite straightforward.
You just need to change the network from Ethereum to BSC or Polygon or other alternative chains. If you don’t know how to change the network on your Metamask, go back to our Part 1 How To Use Metamask guide. We have covered all the basics there.
How about other DeFi apps that are not DEX-es? Yes, the process is also quite similar. Let’s use Aave as our example. Go to Aave app page and there you will see Connect Wallet button on the top-right (almost all web3 pages have Connect Wallet button on the top-right but occasionally the page might put this button elsewhere).
On the pop-up, you will see Browser Wallet with a small Metamask logo. Click it. It will recognize your metamask account, and once again, you will see your wallet account number has now replaced the Connect Wallet text inside that same button.
Aave is a supply and borrow crypto asset market so you can basically do two things here. You can do either Supply or Borrow. Keep in mind to Borrow you will need to do Supply first since every loan has to be collateralized.
Let’s use ETH as an example of Supply. In the Supply pop-up, you can enter the number of ETH you want to supply, and then the app will automatically calculate the gas fee. You can also see their current APY (annual percentage yield) number here.
Any other dapps have almost the exact same mechanism. You need to find Connect Wallet button, choose the right metamask account to connect, and then you will be able to interact with all the functions and buttons inside the dapp once your wallet is connected.
Another important feature that Metamask has is nonce customization. I won’t explain too much what a nonce is but basically a nonce is a number of transactions that have been sent from your address. That means if you have previously sent 10 transactions from your wallet address, your upcoming transaction would have a nonce of 11.
This is extremely important in case your transaction gets stuck. I assume you already know by now that Ethereum transactions that pay higher gas fees would be prioritized first by the miners. That’s why sometimes you assume a certain number of GWEI would be enough to confirm a transaction, but then, when other users pay higher GWEI, that specific transaction of yours would not be prioritized anymore, and you just have to keep waiting in this case.
When you are in a hurry or when you are just tired that your transaction has not been confirmed after a long time, you might want to learn how to Speed Up transaction (which I have covered in the Part 1 guide).
But what happens if you simply want to cancel the transaction or want to Speed Up again after the first Speed Up attempt has failed? In this case, you want to customize your nonce.
To do this, go to advanced settings of your Metamask, and turn on Customize transaction nonce
Now you can always cancel or speed up transactions manually by entering the same nonce. For example, let’s say the transaction gets stuck in the 12th transaction from your wallet. In this case, you can just send the exact same transaction, but you must modify the nonce manually to 12 before you are about to confirm the transaction.
If this transaction with customized nonce pays higher gas fee than your transaction that got stuck earlier, this transaction will be confirmed faster, and your original transaction will be canceled.
And if you want to cancel your transaction (instead of speeding up the same transaction) you can just send 0 ETH to your own wallet, but with higher gas fee compared to the original transaction.
This method works with any chain in your metamask (BSC, Polygon, Avalanche, etc.). Basically, any network that you can add to your Metamask, will have the exact same nonce mechanism for speeding up or canceling transactions.
And if you are wondering how to find the nonce of your stuck transaction, just go to Activity tab and click the particular transaction. There you will be able to find out the nonce.