top of page

How to Stake Polkadot on Polkadot.JS (Tutorial) – Is it worth to Stake DOT?

Updated: Apr 13, 2023

Stake Polkadot on Polkadot JS Staking DOT

Hello, friends! This is James Agenda here.

Today I'm writing about my experience Staking DOT on Polkadot JS, one of my favorite 5 places to Stake Polkadot.

Actually, this is where I stake most of my DOT tokens, due to security!

If you want to save some time, you may navigate through the underlined topics:

How to transfer DOT tokens to Polkadot.JS

If you don't have DOT in a Polkadot.JS address, you'll need to do the following steps:

Creating an Account Address on Polkadot.JS

Now click on the "Add Account" Button:

Staking Polkadot JS Dot wallet add Account

Remember to write your mnemonic seed and keep it in a safe place!

This is your private key: Whoever has access to your mnemonic seed can access all your funds.

You can also create an account using the Polkadot.JS extension.

Here is a short video from Acala (one of my favorite Parachain) on how to do this:

Buying DOT Tokens

Now that you have an address on Polkadot.JS, you need to buy some DOT tokens and transfer them to this address.

For buying DOT, you may use exchanges like Binance, Kraken, or KuCoin.

After buying, you need to withdraw them to your Polkadot.JS address.

When transferring, pay attention that the network is DOT, not ETH, BSC or other.

Withdraw DOT on binance to Polkadot.js

Pay attention: DOT only exists on the Polkadot Blockchain!

"DOT" on Ethereum or PancakeSwap is not real DOT. It's just a representation token and can't be sent to the Polkadot.JS address.

Do not try to send "DOT" from Ethereum ou BSC to your address on Polkadot.Js.

Bonding DOT Tokens Before Staking

In order to Stake your DOT tokens, you need to "BOND" them.

Bond DOT is "locking" them on the blockchain.

Pay attention:

It takes 28 days for the unbonded DOT to become transferable again.

To Bond on Polkadot:

1) Go to or Polkadot.JS > Staking > Account actions.

2) Click on the Stash Button:

stake polkadot on Polkadot JS staking tash button

3) Now you need to set:

After everything is set, click on the "Bond" button.

Congratulations, your DOT is Bonded!

You may check the Polkadot wiki to see how to unbond (or "unlock") your DOT.

Pay attention:

It takes 28 days for the unbonded DOT to become transferable again.

You don't receive Staking Rewards during this period.

Nominating Validators

Now you need to choose good Polkadot validators to enhance your Staking rewards.

1) First, click on the Nominator button:

2) Set your Stash account & Controller account, the amount of DOT that you want to Stake, and the payment destination:

The first option, "Stash account (increase the amount at stake)", gives a compound effect on your DOT Staking Rewards, but you need to wait for 28 days when you choose to transfer it.

The others options do not compound your rewards, but you can use them immediately.

3) Finally, you must select the validator from the list.

I recommend choosing the max number of validators because it increases your chances of rewards.

Take a look at each validator's information and DYOR!

I recommend Paranodes as a good validator to include in your validator's choices since he is very involved with the community.

Overview of Staking DOT on Polkadot.JS

🔑 Custody on Polkadot.js

When you Stake Polkadot on Polkadot.js, you do have custody of your assets.

🤑 Staking Rewards on Polkadot.js

Staking on-chain, I got an average APY 13.5% on Polkadot and 14.7% on KSM as Staking rewards.

⏳ Liquidity on Polkadot.js

Liquidity: 28 days on Polkadot and 7 days on KSM.

💻 Usability on Polkadot.js

Straight to the point: Staking on Polkadot.JS is more complex than any other way.

Still, it's doable for anyone. You don't need to be a rocket scientist or know how to code.

You will just need to follow more steps than when Staking Polkadot on other platforms.

🛡️ Security on Polkadot.js

The complexity of Staking Polkadot on Polkadot.JS brings an advantage:

It's the most secure way to Stake DOT.

And the reason is that when you Stake Polkadot on Polkadot.JS, you can still use Ledger hardwallet.

Option to add an account from Ledger Hardwallet on Polkadot JS

But you don't have the restrictions of Ledger Live.

On Polkadot.js, you may choose separate addresses for Stash Account and Controller Account, even when using Ledger Hardwallet.

I suggest using Ledger hardwallet for the Stash Account and a standard account address for the Controller Account.

This will bring a high level of security and improve your usability.

My results Staking DOTs on Polkadot.JS

Staking Polkadot on Polkadot JS

Consider subscribing for free to keep yourself informed on Polkadot & Kusama ecosystem!

Cheers! 🥂

579 views4 comments


Peter König
Peter König
Nov 03, 2022

Can you tell how a layman should deal with the changing minimum dots for staking. In addition, the number of nominators is limited to 50,000. This is confusing to me.

And: Shouldn't the whole staking process change soon anyway? Frankly, on Kraken staking DOT is much easier with no relevant difference in APY. In addition, I can access my DOT there at any time and withdraw it without losing the accumulated staking rewards of the current period.

James Agenda
James Agenda
Nov 25, 2022
Replying to

Hello Peter,

"However, when I click on "Join" for a pool, I see there for DOT an "initial value" of 10.0000 and not 1 as you mentioned before."

Did you try pool 25? I manage to enter with 5 DOT to test.

APR/APY (%) for the Staking rewards of each pool? > They are not fixed, nor are the rewards from validators when you stake outside pools.

You need to choose good validators/pools to enhance your APY%. We'll write about this in the future.

BTW: Can you tell me maybe a German-speaking Polkadot community that is serious and where laymen of the matter like me actually get an answer?>> sorry I don't know about a german community, try asking at…

bottom of page