How to connect your Ledger Nano S to MetaMask

Tiaan Wolmarans
Dec 16, 2018 · 7 min read

Note: The lates Google Chrome update has broken Ledger/MetaMask functionality, Brave browser is now recommended to use this until Ledger and MetaMask / Google fix the issue.

In this tutorial I will explain how to connect your Ledger to MetaMask and how to view, receive or send Ethereum or tokens to or from your Ledger via MetaMask.

This method can be used even if you normally use My Ether Wallet with your Ledger and requires no additional steps to use MetaMask instead, which has a far simpler interface.

This is particularly useful if you transact regularly but want the added security of using a hardware wallet.

What you need:

  • Ledger Nano S
  • A Computer
  • Chrome installed
  • MetaMask installed

If you need some help installing MetaMask

Connect your Ledger to your computer

connect your ledger and type in your PIN

Your first step is to plug your Ledger into your computer. Ensure it powers on and then input the pin you chose when setting up your ledger.

Select the Ethereum Application

navigate to the ethereum app and open it

Next you need to open the Ethereum application on your Nano S. You do this by switching through the applications installed on your Ledger by pressing down on either the left or right button to navigate through the applications.

Once you have the Ethereum application selected, push down on both buttons to open the application.

Make sure contract data is turned on

scroll down to the settings option

Once the Ethereum application is open, press the right side button until you locate the “Settings” option. Press down on both buttons to open the menu.

press down both buttons on contract data

The first item in the settings menu is “Contract Data”. Push down both buttons to select it.

press down both buttons to select yes

Now navigate with the right side button to choose “Yes” and then press down on both buttons to select it.

Once you have set your ledger up like this the first time, you won’t have to do it again each time you want to use it with MetaMask.

Your Ledger is now ready!

Open MetaMask

click on the metamask fox

Since you have already installed MetaMask, you need to open up your Chrome browser, and click on the MetaMask fox to interact with the application.

click on the avatar

Next, you need to click on your avatar in the top right corner of MetaMask. The avatar on your version of MetaMask will look different to the one in the image, but is always located in the same place.

This will open up the menu in black and will give you access to many options for customizing your MetaMask such as adding additional accounts, importing accounts and connecting a hardware wallet such as your Ledger Nano S.

Connect MetaMask to your Ledger

select hardware wallet

Click on “Connect Hardware Wallet”

select Ledger and click on connect

The next screen that pops up is fairly self explanatory. Simply click on the “Ledger” button to select it, and then click “CONNECT”

select ledger live if your ledger has been updated to the latest firmware and you use ledger live, or select legacy if it has not been updated in some time

Once you have connected your Ledger, you need to tell MetaMask how to read it.

If you have updated your Ledger to the latest firmware and have been using the Ledger Live application, you should select “Ledger Live” and if you have not updated it, you should select Legacy.

If you are unsure, start by selecting Ledger Live and looking at the grey box below it for your address, and Ethereum balance.

MetaMask automatically sorts the addresses on your Ledger by balance, so if you have an Ethereum balance in the same address, this is the easiest way to identify your account.

If you don’t have an Ethereum balance on the address you want to connect, you need to identify the correct address by looking at the column with the 0x addresses to identify the correct one to choose.

If the correct address isn’t showing up, go back to the drop down menu, select “Legacy” and try the above steps again.

Once you have found the correct address (in this case, in the pink box), click “CONNECT”

You are connected!

your ledger is connected to metamask

You’ve now connected your Ledger to MetaMask.

Now that you’re connected we’ll talk about a few important bits of information on this page by referencing the colored boxes.

Blue: The blue boxes display your Ethereum balance that is in the address you selected. If you use multiple addresses on your Ledger, you will not see those balances, only the balance of the account you selected during setup.

Green: Clicking on this box will copy your Ethereum address to your computers clipboard for pasting later.

Orange: Any transactions you send or receive to or from your Ledger via MetaMask will show up here. Note that any transactions made previously wont show up in MetaMask.

Pink: If you are using this address to manage Ethereum tokens, you will want to click here to add your tokens.

This is a misleading button title. By clicking “ADD TOKEN” you are not adding tokens to your address, but actually just telling MetaMask to display the balance of your tokens.

Showing your token balances

click on add token

To display the balance of a token, you first need to click on “ADD TOKEN”

choose custom token if the token you are looking for is not yet searchable

MetaMask has a library of tokens that are searchable, but in this case I am going to add a token which is not yet searchable.

Click on “Custom Token”

The next thing you will need to do is to find the token’s contract address. You can usually find it on the token issuers site, or by searching etherscan.io.

In the case of this token, this is the Etherscan token page, and the contract address you are looking for is highlighted in the pink box.

Copy this address. (be sure to copy the address only and not copy the link itself)

paste the copied address into the token address field

Paste the address you just copied into the “Token Address” field and the “Token Symbol” and “Decimals of Precision” boxes will automatically populate with the token from the address you pasted, in this case, ONE (0x4d807509aece24c0fa5a102b6a3b059ec6e14392).

Click next.

the token and any balance you have is displayed

On this final screen you will see a summary of the task you’ve just performed. You will see the token you’re adding, and any balance that you have in the address.

If you should have a balance of tokens but it is displaying 0, you may need to check that either the address you chose during setup is the correct one, or that the contract address you used to add the token is correct.

If all the information on this screen is correct, and your balance is showing, or if you don’t yet have any of the particular tokens in that address yet, click on “ADD TOKENS”

Done!

your tokens have been added

On the left side of the screen below your Ethereum balance, you will now see the tokens that you just added displayed on the screen.

Final thoughts…

A few final bits of information about this particular setup.

  • Now that your Ledger has been connected once, you can open MetaMask and look at the balances of that address without having your Ledger connected, however if you need to send Ethereum or Tokens, you will need to connect your Ledger.
  • You will not need to set up your Ledger each time you want to use it with MetaMask, unless you want to use a different address linked to your Ledger, in which case you follow the same steps as above.
  • This setup makes interacting with dApps easy by making use of MetaMask, and keeps your tokens secure by storing them on your Ledger at the same time.
  • You can add as many tokens as you like using the same method used above.

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade