Why Am I Not Elected?

Reasons why your validator is not elected & how to get elected.

How is the committee chosen?

Posichain operates with Effective Proof of Stake (EPoS) to keep the network security from collecting in the hands of a few validators.

Validators are elected based on their effective stake, instead of their absolute stake. The effective stake is calculated based on the median stake in the network. The top 800 BLS keys with the highest effective stake will be elected for the epoch.

1. Verify Bidding

1.1 Check the network median stake

./psc --node="https://api.posichain.org" blockchain median-stake | grep median

The value returned by the CLI is in Atto, which is equivalent to Gwei in Ethereum.

1.2 Verify the amount delegated to the Validator

Visit https://staking.posichain.org/validators/<validator_address>

Example : https://staking.posichain.org/validators/mainnet/0x7fd592690ec6A7300289B059ee8711f4f9BBfD8a

Your Total Staked divided by the number of BLS keys you set on your validator will give you the effective bidding stake. This effective bidding stake will be used to bid in the 800 slots available each epoch. Bidding above the median stake is the safest way to get your keys elected each epoch. Bidding below the median stake is riskier, as you may be kicked out of the committee for 1 epoch in case you outbid. For more information on the bidding process check here.

We recommend that you start bidding above or around the median stake, so you are likely to always stay elected each epoch.

2. Verify if the Validator is Active

Run the command below:

./psc --node="https://api.posichain.org" blockchain validator information 0x589577117AE579D977c9f63Cac1828e20D4e24da | grep epos-status


"epos-status": "currently elected",

If not eligible, activate it for the next epoch election:

./psc --node="https://api.posichain.org" staking edit-validator --validator-addr 0x589577117AE579D977c9f63Cac1828e20D4e24da --active true --passphrase

3. Verify Signing Rate

Run the command below:

./psc --node="https://api.posichain.org" blockchain validator information 0x589577117AE579D977c9f63Cac1828e20D4e24da


    "current-epoch-performance": {
      "current-epoch-signing-percent": {
        "current-epoch-signed": 50,
        "current-epoch-signing-percentage": "0.500000000000000000",
        "current-epoch-to-sign": 100,
        "num-beacon-blocks-until-next-epoch": 28

For your validator to stay elected, you wanna make sure the current-epoch-signing-percentage is above 66% (0.66).

To fix the above, we have to make sure the node is working correctly and below are few pointers

4. Verify if Node is In Sync

Compare your node block height with the network block height.

Check your node block height:

./psc blockchain latest-headers | grep number

If the above doesn’t work and you have an error message similar to this: error: dial tcp4 connect: connection refused It means the posichain node binary is not running. Please follow this documentation on how to run the node.

Check the network block height:

./psc --node="https://api.posichain.org" blockchain latest-headers | grep number

Make sure network height and your current height are very close or equal. Additionally if your node is validating for a

The above command is for network height on shard 0, change s0 to s1, s2, .. to match the shard you want to check.

When you are fully synced and your validator profile is satisfactory you should start having BINGOs in your validator log file at epoch change.

You can check BINGOs via this command:

tail -f logs/zero*.log | grep BINGO

And you’ll notice in your validator information that you started signing blocks.


    "current-epoch-performance": {
      "current-epoch-signing-percent": {
        "current-epoch-signed": 60,
        "current-epoch-signing-percentage": "1.000000000000000000",
        "current-epoch-to-sign": 60,
        "num-beacon-blocks-until-next-epoch": 28

If you fail to sign blocks, verify your machine/vps doesn't have CPU/memory/hard disk/internet issues. When you fail to sign more than 66% of the blocks in an epoch, you’ll be kicked out from the committee.

Last updated