Decentralization has always been a foundational component of the Moonbeam and Moonriver networks, and that philosophy guided the design of Moonbeam’s custom staking pallet. A diverse set of block producers, called collators, secure the network and uphold the principles of censorship resistance and continuous uptime.
While becoming a collator requires a significant initial bond and technical acumen, there is a way for the majority of the community to participate in securing the network: through delegating tokens to collators. In addition to helping ensure the liveness of the network, staking with collators offers token holders with the opportunity to earn rewards.
While staking can be beneficial for most users, it is important to understand how it works on Moonbeam and Moonriver so you know how to select your ideal collator. This article will give you a brief overview of this functionality, as well as some helpful resources you can use.
To learn how to stake your tokens to a collator, refer to these guides:
The Function of Collators
Collators gather transactions into blocks and submit these blocks to the relay chain. Without a decentralized set of collators, no new blocks would be created, and the censorship resistance properties of the network would be in question. Validators of the Relay Chain ensure the validity of the submitted blocks and include them in relay chain blocks to ensure finality.
How Staking is Rewarded
Moonbeam’s custom parachain staking pallet aligns the interests of collators and delegators. The delegation process was primarily designed to help selecting a performant set of collators, ensuring network stability.
Who Earns Rewards
At the time of this writing, the top 300 delegations by total stake per collator are eligible to earn rewards (this number may change in the future). The Moonbeam staking app shows a minimum bond amount next to each collator listed. This number tells you the bond needed to immediately start earning rewards as a delegator. You should select a collator where your delegation amount is significantly above the minimum bond amount to avoid getting displaced by delegators bonding incrementally higher amounts.
Additionally, in order to earn rewards, the collator you delegate to must be in the active pool. As of this writing, the active set on both Moonbeam and Moonriver is 64 collators. Collators that don’t have enough total stake to make it into the active pool are instead in the waiting pool. Delegators can bond to collators in the waiting pool but they won’t earn rewards until that collator moves to the active pool. If a collator moves from the active pool to the waiting pool, its delegations will remain until they are revoked and executed by delegators.
How Rewards Are Calculated
Both Moonbeam and Moonriver target a 5% yearly inflation, of which 50% goes to staking rewards.
Eligible collator candidates are picked at random to produce blocks. Collators, and its delegators, are rewarded each round based on the number of blocks they produced. Therefore, you should expect the amount of your staking rewards to vary each round.
Rewards for a specific delegation are calculated as a percentage (based on your delegation compared to the total delegation) of the total rewards pool. So, for example, if there is a reward of 5 GLMR being distributed through a collator, you delegated 100 GLMR (and the delegation falls within the top 300), and the total staked to that collator was 10,000 GLMR, then you would earn 1% of the total rewards payout on that delegation, which is 0.05 GLMR.
Choosing a Collator
You should do your own research and choose one that you trust to be a good steward of the network. If you don’t know any collators, you can check out the #Meet-The-Collators channel in the Moonbeam Discord where collators can introduce themselves. Alternatively, you can pick any collator from the active pool for which you meet the minimum bond amount. Moonbeam has no slashing, so you’ll never lose your original delegation amount. If your chosen collator stops producing blocks, you won’t earn rewards for the period they’re offline.
Optimizing your Collator Selection
To optimize your delegation, you’ll want to choose a collator with a lower total bond amount. By choosing a collator with a lower total bond, your delegation amount represents a larger percentage of that collator’s total amount staked, and thus you’ll earn a slightly higher reward. The collator list on the staking app is sorted by default from collators with the lowest total amount staked at the top to ones with the highest at the bottom. However, you should exercise caution when delegating to the collators with the lowest amounts of total stake, because they’re most at risk of being bumped to the waiting pool.
These are the most important things to look out for:
- Low total amount staked to the collator. You want to maximize the share of the rewards that are paid out to you, so it’s favorable to choose a collator with a low total stake. However, you also need to be mindful that…
- Collator is not too low in the active set. Collators on the verge of falling out of the active set carry more risk: if their total stake amount is exceeded by another collator and they fall out of the set, all delegators will stop earning rewards.
- High block production rate. Since rewards are paid out based on the blocks they produce each round, you’ll want a high-performing collator with a greater chance of producing more blocks. There are dashboards to help you view this info (below).
- Reputable collator. If they have an identity set, use that. Look them up on Discord or generally on the web. Do they provide infrastructure on other networks? Do they have a history of high-performing collator and validator services? You can learn a lot this way.
How to View Collator Performance Data
There are a few different community dashboards to help you determine rewards payout for each collator, including block production and rewards rates.
Web3 Go: Moonbeam | Moonriver
Dapplooker: Moonbeam | Moonriver
Subscan: Moonbeam | Moonriver
Risks of Staking
Slashing is not currently enforced on Moonbeam or Moonriver. When selecting a collator, the largest risk is the potential for your collator to stop earning rewards, either through bad behavior or lack of community support (too few delegations). In the instance that your collator misbehaves, your delegation is not penalized.
Unbonding: How to Change Your Delegation
If the collator you are delegating falls out of the active set, or if you’d like to switch to a collator with more consistent rewards, you can do that from within the staking dapp.
- Unbond some of your staked tokens or remove the entire delegation and unstake all of your funds.
- Wait 24 rounds (2 days) on Moonriver and 28 rounds (7 days) on Moonbeam for it to unbond. You will still be paid rewards during this time.
- Execute your unbond. You will continue earning rewards until this step occurs, but be advised that anyone can execute your unbond for you, at which point you will stop earning rewards. This is by design.
- Delegate a new collator.
- Wait two more rounds (2 hours on Moonriver, 12 hours on Moonbeam) to start earning rewards again.
Common Questions About Staking
What Happens When a Collator Leaves the Active Set?
Collators and their delegators do not get rewards for the last two rounds after they leave the set, as their account is removed from the candidate pool to prevent others from selecting it (because they are not eligible to produce blocks during this time).
How Are Rewards Paid to Collators?
Payouts occur at the start of the round that is two rounds after the round in which the collator produced the block (so if the collator produces a block in round k, then the payout is executed in the first block of round k + 2).
Should I Divide My Delegations Across Multiple Collators?
As long as you stake the minimum bond required (currently 5 MOVR or 50 GLMR), you can delegate to more than one collator at a time. However, remember the minimum delegation amount to be in the top 300 delegators for a given collator may be higher than the protocol minimum of 5 MOVR or 50 GLMR.
This decision depends on how many tokens you have available and whether you can stake enough to benefit from more than one collator at once. Since you want to optimize your rewards by earning the biggest percentage of any collator’s rewards pool, you should consider this carefully. You will want to consider:
- Will your split delegations keep you in the top 300 delegators for each collator?
- Is the % of your split stake across multiple collators be greater than a single delegation to one collator?
- Does each collator regularly earn rewards for most rounds?
At the same time, the potential benefit of splitting your staking into different collators is that if one does not perform as well, you have another chance to earn great rewards through the other collator(s) you are staking with. It can also ‘hedge your bet’ if a collator falls out of the active set, since you will continue earning rewards for the one that remains.
Can I Use a Solidity Interface to Control Staking?
The majority of users will conduct their staking activities on Apps.Moonbeam.Network. You’re also free to call staking methods directly from Polkadot.Js Apps or StakingInterface.sol. Schedule_Revoke_Delegation and Execute_Revoke_Delegation allow you to revoke a delegation to a collator. Schedule_Leave_Delegators and Execute_Leave_Delegators allow you to revoke all of your delegations across all collators. To learn more about these functions, click here.
For other staking-related questions, hop into our Telegram chat or reach out on Discord. There are also several video walkthroughs available on YouTube.