This article explains how to stake on Polkadot-JS UI. If you are interested in staking with Ledger Live, please refer to this tutorial here

Important note before you start: 

  • Nominating currently requires a minimum of 10 DOT staked funds on Polkadot (0.1 KSM on Kusama). Please make sure you are above that minimum or you won't be able to nominate. Note: The minimum amount needed to earn rewards is now dynamic and can be found on the Targets page. Please refer to this referendum for details.
  • There is also a maximum of 22,500 nominators in place at the moment. That means, if there are already 22,500 nominators, you will not be able to nominate, even if you have more than the minimum amount staked. You can double-check the current number of nominators on the Staking Overview page.  
  • If you are staking above the minimum amount and still aren't receiving rewards, it's possible that your account needs to be re-adjusted by calling an extrinsic. This is due to the new bags-list feature. You can find instructions on how to fix this here.

You can nominate validators (also known as “staking”) on Polkadot-JS UI using these steps:

  1. Create a Polkadot account if you don’t have one already. Please note it is recommended to create two accounts: one to use as the controller account and one to use as your stash account. Learn more about this here and in the video tutorial below. 

    Also, make sure you leave a small amount of DOT transferrable in your stash account and that your controller has more than 1 DOT in it. This is in order to have enough liquid funds for paying transaction fees when bonding and unbonding funds.

  2. Go to the Polkadot-JS UI main page  

  3. Click the Staking link under the Network tab at the top 

  4. Click “Account actions” (on top). It may take a while to load. If you're using a Ledger, skip the following steps and check the section below.

  5. Click the “+ Nominator button” (top right).

  6. Choose your Stash and Controller accounts. Then select the amount you want to bond and the rewards destination and click "Next"

  7. In the next screen select your validators. Please make sure you've read the article on how to select validators. Once you're done, click “Bond and Nominate”.

  8. Enter the password for your account and click "Sign & submit".

How to stake using your Ledger

NOTE: Ledger Live natively supports Polkadot, so if want to stake on Polkadot you can do it directly from Ledger Live by following these instructions.

Since Ledger does not support batch transactions, bonding and nominating needs to be done in two separate transactions.

  • Follow steps 1-4 as described above.

  • Click the "+ Stash" button.

  • Choose your Stash and Controller accounts. Your Stash should be your Ledger account and it is recommended that your Controller is not on Ledger for easier access. Then select the amount you want to bond and the rewards destination and click "Bond".

  • Confirm the transaction on the Ledger device.
  • When the transaction is confirmed you will see the newly bonded account in the "Account Actions" page.
  • Select "Nominate" next to the new bond to select your validators.

  • Click on "Nominate" and confirm the transaction on your Ledger.

That’s it! You will begin earning rewards in the next era or the one after that, if you nominated during the last epoch. 

IMPORTANT: Make sure that you have at least 1 DOT in the account that you are directing your staking rewards to. If you receive rewards of less than 1 DOT and they are sent to an empty account, you will lose them. This has to do with the existential deposit on Polkadot.

When you bond your tokens you can still use them for on-chain governance but you will not be able to transfer them while bonded. 

Get more detailed information on nominating on Polkadot on our Wiki Nomination Guide or in the video below.