Although 250 DOT is needed to be able to nominate, not all accounts with more than 250 DOT staked will participate in the election and get staking rewards. The minimum nomination amount needed to participate in the election (support a validator) and earn rewards is now dynamic and can be found on the Targets page of Polkadot-JS UI (you may need to zoom out a bit): 



TABLE OF CONTENTS


Bags List


In the runtime version 9170, we saw the implementation of what is called the "bags-list." With the bags-list, all accounts that have declared the intention to nominate are put into "bags" based on their stake. The bags are ordered based on the stake, and the top 22,500 accounts are selected to participate in the election algorithm. As a result, the minimum bond needed to earn rewards is a dynamic minimum equal to the stake of the 22,500th account instead of a fixed amount of DOT. You can read more details about the bags-list feature here.


If you are staking over the minimum amount and still aren't receiving rewards, your address may need to be repositioned in its bag. This happens because bags are sorted based on stake, but the accounts in each bag are not. So, in the last bag, only the first X accounts will participate in the election. But since the accounts aren't ordered based on stake, accounts with higher than the minimum amount may be excluded because they found themselves in a lower position in the bag.


Accounts can put themselves in front of other accounts with a lower stake but a higher position in the same bag using the 'voterList.putInFrontOf' extrinsic. This requires knowing which account to put your account in front of, but the Polkadot-JS UI does everything for you with a button click.


‼️ IMPORTANT

This process only puts you in front of an account with a lower stake. Therefore, the process doesn't guarantee that you will start getting rewards: it's possible that your account may be put in front of an account that itself isn't included in the set.

However, if you have staked more than the dynamic minimum, you should start receiving rewards after the next era.

Reposition your account using Polkadot-JS UI


1. Make sure your stash account is active, then navigate to the "Staking" > "Bags" page and select My bags. (This example is on the Westend testnet, but the same process applies to Polkadot).



2. Wait until the page fully loads: you should see a number under "Nodes". If you see the "Move up X" button, your account can be repositioned. Click on the button to issue the extrinsic.



3. Next, sign & submit the transaction.



This will realign your position within the bag and hopefully allow you to begin receiving rewards again!


ℹ️ GOOD TO KNOW

Sometimes accounts can find themselves in the wrong bag, e.g., as a result of slashing or auto-compounding a lot of rewards. Pressing the "Rebag" button on the Bags page (if you see one) and signing puts all of these accounts into the correct bags. It may not include your account; anyone can rebag any misplaced account.


If you're not getting staking rewards, there could be other reasons too. For a comprehensive list, see "Why am I not Getting Staking Rewards?"


The following video provides a detailed overview of the bags list, how they work, and how the dynamic minimum stake is calculated. To see the process described above, as well as the Rebag action, you can navigate to the 05:43 bookmark.