How staking works in Polkadot and Kusama: a deep dive
Table of Contents
What is staking?
As Polkadot gears up to launch the first parachains in 2021, it’s time to get a better understanding of how staking works in this rapidly expanding ecosystem – and how you can join in. Here’s everything you need to know about validators, nominators, collators, and rewards in Polkadot and Kusama, explained in simple words.
PoS staking definition and basics
Put very simply, staking means locking up coins or tokens (normally on a smart contract) in order to earn rewards. But what is it that you get rewarded for, exactly? To understand this, we have to go over the workings of Proof-of-Stake blockchains.
In PoS (Proof-of-Stake) networks, a set of validators confirm transactions and add new blocks to the chain. For their work, they receive block rewards – coins that are automatically issued with every blockchain block.
In order to be able to act as a validator, a user (node) needs to stake a certain number of coins. If they abuse the blockchain rules or behave maliciously (for example, confirm an invalid transaction), the stake gets slashed, or cut by a certain percentage, like a fine. The idea is that a validator should have a stake in the game – literally – to prevent them from misbehaving.
Since there are usually many more people (or nodes) with a stake than there are actual validator slots, PoS networks use a rotation system. Every epoch (which can be as short as 6 hours, as in Kusama, or as long as 5 days, as in Cardano), the system picks a set of nodes from a pool of validator candidates, and they get to confirm transactions – and share the rewards – during that epoch.
Now, here’s the trick: the validator selection algorithm is often random, but those with bigger stakes have higher chances to get chosen. As a consequence, large stakers make more money in the long term.
Think of it as someone throwing marbles into a set of bowls of different sizes. If one bowl is much larger than the others, it will eventually accumulate more marbles (rewards).
Clearly, if you’re an aspiring validator, it’s in your interest to maximize your stake. How? The answer is delegation. Every coin holder has validation rights, but most don’t want to use them, because running a node is a hassle and requires a large initial investment. Instead, they can delegate those rights to you – without sending over the coins, of course. In exchange, you’ll share validator rewards with them.
This is actually what most crypto users mean by staking: delegating validation rights to a node and getting a percentage of its earnings. Such passive stakers help make the network more decentralized: without them, a handful of rich nodes with huge stakes could virtually monopolize the validation process.
There are many variations on the general PoS mechanic we’ve just described. For example, in Binance Smart Chain there are only 21 validators, who are in turn selected by the 11 validators of Binance Chain. The minimum validator stake size also varies greatly: in Ethereum 2.0 it’s 32 ETH ($125,000 as of October 2021), while in Horizen it’s just $3,600.
However, the subject of this article is staking in Polkadot and Kusama, so now that we’ve gone over the theory, let’s dive into the specifics.
How many validators are there?
Polkadot is called the Internet of blockchains for a reason: it brings together a large number of independent blockchains (parachains) that can all exchange data and enjoy the same level of security thanks to the central Relay Chain. It’s on the Relay Chain that Polkadot validators live.
For every 24-hour era, the system picks 297 active validators. In February 2021, there was an on-chain referendum to increase the number to 599, but the motion didn’t pass. Meanwhile, the long-term goal is to have 1,000 active validators for each era.
The number of potential validators waiting to be picked for the next round (let’s call them candidates) was 664 as of the time of writing, so the total is 961 (297+664).
Validator rewards in Polkadot
As a rule of thumb, all active Polkadot validators equal shares of the block payout. This is different from many other PoS networks, which distribute block rewards in proportion to each validator’s stake size. By the way, the block reward size in Polkadot changes depending on the percentage of the total DOT supply that is staked (58% as of October 2021).
In theory, each validator’s reward also depends on the number of so-called era points they have collected during an epoch. Era points are given for performing various actions, such as minting blocks and issuing validity statements for parachains. In practice, all active validators usually end up having roughly the same number of era points, so individual payouts are also almost the same.
In addition to block rewards, validators can receive tips that users pay to get a transaction included in a block. Also, a validator can keep part of the reward as a commission to cover their operational costs.
How many DOT do you need to stake to become a validator?
There is no minimum stake size in Polkadot. The validator selection process isn’t random, either; unlike in many other PoS blockchains, the network automatically picks the 297 candidates with the largest stakes. As of October 16, 2021 the smallest active validator node had a stake of 1.75 million DOT, or around $73.5 million. Thus, in order to get into the active set, a node simply has to have the same amount plus 1 DOT. An alternative is to join the Thousand Validators program by Web3 Foundation, which nominates validators that match the requirements but don’t have enough DOT.
$73.5M is a lot of money, but you have to remember that the total stake is comprised of the validator’s own staked DOT and the coins that other DOT holders have staked on it. This brings us to the other major group of the Polkadot network participants: nominators.
Polkadot’s consensus model is called Nominated Proof-of-Stake (NpoS), with the nomination process roughly equivalent to delegation in other PoS networks. In order to be a nominator, one needs to hold at least 120 DOT (around $4,800) – this is called the minimum bond. The maximum number of nominators is capped at 22,500 since June 2021. In mid-October 2021, there were circa 18.000 nominators.
A nominator can stake DOT on a maximum of 16 validators. It’s recommended not to put all eggs into one basket and choose several reliable candidates, so that at least one of them gets picked for the active validator set in each epoch.
Nominator rewards: an example
As we’ve said, active validators share the block payout equally. But here’s the most interesting part: each validator’s reward is then distributed between the validator itself and their nominators in proportion to each one’s individual stake - minus the commission that the validator chooses to keep to cover the cost of operations. So, a validator who stakes a huge amount of their own DOT will keep most of the reward, while each of their nominators will get only a modest amount.
The logical conclusion is that nominators should pick validators with smaller stakes. Here’s an example: imagine that nominator Alice plans to stake 5 DOT and needs to choose between two validators:
- Bob, who has a huge 200 DOT stake of his own and a few nominators who have staked 95 DOT on him;
- and Mike, who has a modest 10 DOT stake, but other nominators have also staked 95 DOT on him because of his good reputation.
In both cases, let’s assume that Bob and Mike don’t charge any commission.
Now let’s imagine that the block reward is 10 DOT. If Alice chooses Bob, adding her 5 DOT to the existing 95, she and the other nominators will get just 1/3 of the reward: (95 + 5)/(200+95+5)=100/300=1/3. That’s 3.33 DOT, to be divided among the nominators according to their individual stakes.
But if Alice picks Mike, she and the rest of the nominators will get 90.9% of the reward: (95+5)/(10+95+5)=100/110=0.909. That’s 9.09 DOT, or 3 times more than in the first scenario.
Thanks to this reward distribution mechanism, Polkadot prevents individual validators from accumulating too much power. For more examples, see Polkadot Wiki’s Validator Payout page.
Oversubscription and slashing
A validator who has more than 256 nominators staking DOT on them is called oversubscribed. Only the first 256 will receive a share of the reward; the rest will get nothing. So if your goal as a nominator is to earn some DOT, you clearly won’t choose an oversubscribed candidate.
The oversubscription rule is a good way to keep the network decentralized and prevent excess concentration of power: no single validator can accumulate an overwhelming amount of staked DOT.
On the other hand, blindly picking a validator who has the smallest stake and few nominators won’t work, either. If a validator turns out to be untrustworthy (for example, spends too much time offline), they will get slashed – and their nominators will get slashed with them.
Validators’ histories are readily available: here you can see how much they earned, if they got slashed recently, etc.
Choosing a validator
There are quite a few factors one should consider before staking DOT on a validator:
1) Validator’s own stake: should be relatively low;
2) Overall stake: can your DOT help push the validator into the top 297 or keep them there?
3) Operating under capacity or at capacity (oversubscribed) – it doesn’t make much sense to stake on an oversubscribed validator, since you won’t earn any rewards;
4) Current number of nominators: even if the validator is operating under capacity, having lots of nominators means that each of them will earn little;
3) Recent profits: can be consulted here, together with other validator stats;
4) Past history (slashings, era points, time spent offline etc.);
5) Commission (preferably below 20%);
6) Identity: has the validator added their website address or social media page?
7) Is it one of several validators run by the same entity? Some operators run several nodes; if one of them fails, there’s a possibility that others will fail, too. Thus, if you stake on more than one node operated by a single entity, you run a higher risk of slashing.
How to stake DOT in Polkadot.js, Kraken and other platforms
Staking in Polkadot.js
Staking DOT on validators can be an interesting way to earn some passive income. In order to become a nominator, you’ll need to make the following steps:
1) Register an account in Polkadot.js.org through the Add Account feature; make sure to save the seed phrase in a secure spot.
2) Send at least 120 DOT plus some to pay transaction fees to the new account.
3) Analyze the current list of active and waiting validators based on the criteria we’ve discussed above (stake size, number of nominators, slashings, etc.).
4) Select up to 16 validators and hope that some of them will get selected to the active set in the next epoch.
5) Claim the rewards through the Payouts section in Polkadot.js.
Staking on a third-party platform
If you don’t have 120 DOT, you can join one of many decentralized DOT staking opportunities, such as those run by P2P Validator, Stakezone, StakeFish, etc. An updated list of platforms is published on Staking Rewards. These platforms run their own validator nodes and have lower requirements - for example, on StakeFish you need just 40 DOT to delegate.
An even easier option is custodial staking on an exchange (such as Binance, Kraken or Crypto.com) or in a wallet (e.g. Ledger or Atomic). In this case, you don’t get to choose validators; the platform does everything for you and charges an extra fee. If you are looking for passive income opportunities, it’s something worth checking out.
How much can you earn staking DOT?
As we’ve said before, block rewards on Polkadot aren’t fixed. The current average (as of October 2021) is around 14%, though some platforms charge a commission. For example, the APY on Binance is between 11.5% and 16.5%, depending on the staking period; Kraken pays 12%, while on Crypto.com you’ll earn around 10%.
Remember that the listed APY is in DOT. The value of your staking rewards in USD will depend on the price of DOT; if the market tanks in 2022, the real APY can turn out to be lower.
Staking in Kusama
The overall nomination and validation algorithms are the same in Kusama as in Polkadot, but there are some differences in numbers:
- 900 validator slots on Kusama vs. 297 in Polkadot;
- An era lasts 1 hour, not 6 hours;
- Staking rewards are calculated 4 times a day (vs. once a day for Polkadot);
- The minimum nominator bond is 0.1 KSM, or around $35 (as opposed to 120 DOT, or $4,800).
Collators and staking on parachains
Up until this point, we’ve been talking about the Relay Chain validators in Polkadot. However, let’s not forget that the Relay Chain’s mission is to provide security and interoperability to the huge constellation of parachains. In particular, Relay Chain validators confirm parachain state transitions, or addition of new blocks to each parachain.
Validators get this information from so-called collators - special nodes that create parachain blocks and act as intermediaries between parachains and the Relay Chain.
Several of the Relay Chain validators will be assigned to each parachain – and reassigned with every block using a mechanism called BABE. Once a validator is connected to ‘their’ collator, they start receiving blocks from the corresponding parachain to be checked and added to the common ‘state of states’ on the Relay Chain.
A minimum of one collator is required per parachain, though there can be more. And since each parachain is sovereign, it can use whatever algorithm it wants to select collators. It’s also up to the parachain to decide how to reward collators.
For example, Moonbeam created its own staking pallet with attractive incentives for collators – and as a result, it already has 50+ of them on the testnet as of late October, including such respectable startups as Blockdaemon, Ankr, and Figment.
The takeaway is that as the number of parachains on Polkadot and Kusama grows, end users will have more and more staking opportunities – and staking on collators can turn out to be more lucrative than staking on Relay Chain validators.
Staking on Polkadot vs. Cosmos’ Game of Stakes
We’ve mentioned several times that validators get slashed together with their nominators if they break the rules or act maliciously. But what if for some of them it’s worth it for some reason to be malicious, in spite of the slashing? How would such behavior affect the network, especially since some of the validators have vast resources behind them?
So far we don’t have precedents on Polkadot, but it’s worth looking at an experiment that the Cosmos network ran a couple of years ago, called Game of Stakes.
Cosmos is another interoperability solution and arguably Polkadot’s main competitor. It, too, has a network of validators (163 at the time of writing) that you can stake on, and even the APYs are similar. But with the Game of Stakes, Cosmos went a step further than Polkadot, testing out how the network would perform if it came under the attack of some of its nodes.
It was an adversarial game where validators were encouraged to come up with interesting attacks on the incentivized testnet. A validator had to find creative ways to manipulate the testnet’s consensus, inflation, etc. in order to kick other validators out. The winner would be the node with the highest uptime at the end of the game. Some types of malicious behavior (phishing, malware distribution, etc.) were banned and led to disqualification.
Such incentivized attacks provide a way to stress-test a network in the most intense way possible ahead of the full launch. For the Cosmos team, the game resulted in a wealth of insights, and the man behind it, Zaki Manian, even recommended that other blockchains follow the same path.
Polkadot developers haven’t announced any initiative similar to the Game of Stakes. One of the few projects exploring this possibility is actually our own Pontem Network, a Substrate-based incentivized testnet for the upcoming Facebook-backed Diem blockchain. Pontem gives developers a space to experiment with Diem-compatible dApps, tap into liquidity across the Polkadot network, and gain traction long before Diem itself goes live.
The Pontem team is looking into the possible terms of an incentivized attack program, though there is no set launch date yet; stay tuned for updates.
As the first Polkadot parachains launch in a couple of months, now could be a good moment to join the rapidly expanding ecosystem. Of course, With a minimum 120 DOT ($4,800) nominator bond, becoming a Polkadot nominator isn’t for everyone, though pooled staking platforms like Stakefish, Kraken, Binance, or Dokia provide an affordable alternative. Another interesting way to get involved is by staking on collators on individual parachains – something we’ll explore in one of the upcoming articles. Follow Pontem Network for the latest scoops!