Creditcoin 2.0+ | NPoS & Staking FAQ
This FAQ explains how Creditcoin’s NPoS and Staking works, and gives advice on how to ensure an optimal staking experience.
Staking in Nominated-Proof-of-Stake can seem a little bit complicated. Indeed, there's a few things you need to understand before you go and start staking your CTC tokens willy-nilly.
So, to better explain Creditcoin's NPoS implementation, and help you maximise your rewards and minimise the risk of losses, we’ve made this simple guide to explain exactly how staking and validation work in NPoS.
In this guide, we’ll explain how Creditcoin’s staking systems work, and what you need to do to ensure an optimal staking experience. We’ll also directly address some of the most frequent questions and important issues people have. For a more technical overview of some of the concepts discussed here, please head to the Creditcoin documentation page. Let’s get started.
How do NPoS validator elections work in Proof-of-Stake?
Electing new validators
Fortunately, validator elections in Creditcoin are pretty straightforward. Every era (24 hours), 50 validators are elected into a new ‘active set’ by aggregating the total CTC backing them. This is comprised of the validators’ self-stake, plus any nominator stake backing them.
While validators can only vote for themselves, nominators can nominate (vote for) as many validators as they like. Nominating multiple validators does not dilute a nominator’s vote. Therefore nominators can feel free to nominate multiple validators, provided they are confident in them (at risk of losing staked funds).
E.g. if a nominator has 100 CTC staked, and nominates 10 different validators, they will be giving 100 votes to each of their chosen validations.
Once the top 50 validators have been determined, they’ll be added to the ‘active set’ in the following era. Any validators not elected will have to wait until the next election for another chance.
Only validators in the active set can validate blocks and earn rewards. As a nominator, you’ll also only earn rewards if you’re actively nominating validators elected to the ‘active set’.
Distributing nominator stake
The validator vote is the easy part. Now comes the harder job of distributing nominator stake between the validators they have nominated.
While staked nominated CTC tokens are counted multiple times to decide election winners, staked tokens must then be distributed individually to any elected validators. To distribute nominator stake, Creditcoin uses a Phragmen algorithm to optimises for three things:
- Maximize the total amount at stake
- Maximize stake behind the minimally staked validator
- Minimize the variance of stake among validators
Given that all validators earn roughly the same, regardless of their total staked CTC backing, the distribution algorithm is designed to ensure the most equal distribution of CTC possible. This aims to improve both decentralization and ensure the fairest possible distribution of staking rewards.
Whilst it’s impossible to predict exactly how a nominator's stake will be distributed between their nominated active validators, there is a higher probability of a nominator’s stake being distributed to any under-subscribed or smaller validators they have nominated. As a result, nominating smaller validators is more likely to result in nominators earning relatively larger staking rewards.
How are staking rewards distributed?
Staking rewards are distributed to each validator at the end of each era (24h) based on each validator’s overall era points. The more era points a validator earns, the more CTC reward it receives.
By default, each validator node should earn a roughly even amount of era points. Each era generates and distributes 11,520 CTC. Assuming there are 50 active validators in an era, each validator should earn around 230 CTC.
Depending on the % commission fee set by the validator, that % of staking rewards is kept aside exclusively for the node operator. All other CTC rewards are distributed to a node's backers proportionally to their total relative stake.
Let’s use an example node. There are a total of four stakers, including the validator. The node has a total stake of 200 CTC. The validator commission fee is 20%. The node has earned 50 CTC in rewards during the last era.
Staked CTC (Total) | Staked CTC (% of Total) | Commission fee reward distribution (CTC) | Staked CTC Reward Distribution (Total) | Final Reward Distribution (CTC) | |
---|---|---|---|---|---|
Validator Node | 200 | 100% | N/A | 40 | N/A |
Validator Operator (20% fee) | 50 | 25% | 10 = (20% of 50) | 10 | 20 |
Nominator A | 100 | 50% | X | 20 | 20 |
Nominator B | 30 | 15% | X | 6 | 6 |
Nominator C | 20 | 10% | X | 4 | 4 |
Please bear in mind that only the top 512 nominators for any given node (measured by total backed CTC) can earn staking rewards. If a nominator’s backing stake is smaller than the required cut-off, they’ll still be providing their stake, but won’t be earning any rewards.
How do you trigger a staking reward payout?
Anyone can trigger a validator reward payout on this page. Triggering a payout will distribute rewards to every node backer (both the validator and all nominators).
Triggering a payout costs CTC, however, this CTC is refunded immediately. This means that you'll need a certain amount of CTC in your wallet to trigger a payout, but the transaction itself is essentially free. For a step-by-step guide, please watch the video below. Although the video tutorial shows the testnet interface, the mainnet process is exactly the same.
What’s the difference between ‘active’, ‘waiting’ and ‘inactive’ nominations?
Every new validation election, it is likely that the configuration of your nominations will change. Each validator you nominate can have one of three statuses to reflect this:
- Active - Validator(s) you are actively nominating in the current era. You will earn rewards from any ‘active’ nominations. Unless you stake with a large amount of CTC, it is likely that your stake will be assigned to a single validator, meaning that you will often only have one ‘active’ nomination each era. Any staking rewards can be paid out at the end of the era by triggering a reward payout.
- Inactive - Validator(s) that you have nominated and are currently active, but which you do not have any CTC staked assigned to. Basically, they are active, just not for you. Due to the stake allocation algorithm used by CTC, it is likely that most of your nominations will be inactive in any given era. You do not earn rewards from ‘inactive’ nominations.
- Waiting - Validator(s) that you have nominated but aren’t elected to the active set. These validators may be elected to the active set in future. Nominating ‘waiting’ validators does not affect your rewards in any way, as your stake is only ever assigned to ‘active’ validators.
Why does the staking dashboard say “Waiting for Active Nominations”?
It takes 2 eras for your stake to become active. During this time, you won’t be actively nominating any validators or earning rewards. Basically, this means you have to wait around 48h to start staking properly.
If the staking dashboard shows “Waiting for Active Nominations” after 2 eras, this means you don’t have any currently active nominations. We’ve outlined a few of the potential reasons and solutions below:
- None of your nominated validators were elected. To increase your probability of nominating an active validator, consider nominating multiple validators who are more likely to be elected into the active set.
- Your nominated validators are over-subscribed. Each validator is restricted to 512 active nominations, with only the top 512 nominators earning rewards. The more CTC you stake, the higher the likelihood you’ll make it into the top 512 for your nominated validators. If you’ve only nominated over-subscribed validators, there’s a chance your staked CTC won’t become active and you won’t earn any rewards. Consider increasing the amount of CTC you stake or nominating more validators who aren’t over-subscribed.
As a nominator, how many validators should you nominate?
Whilst there is no definite answer, as a general rule, it’s a good idea to nominate as many validators as possible, provided you’re confident that they are trustworthy and reliable.
Since stake is allocated after the validator election, nominators do not need to manage the allocation of their staking quantities themselves.
Nominating more validators comes with several advantages:
- Higher chance of better rewards: By nominating multiple validators, there is a higher chance of your stake being distributed to smaller ‘active’ validators. On average, this means you are more likely to earn higher rewards.
- Higher chance of active nominations: Remember that you can only earn rewards by nominating ‘active’ validators. If none of your nominated validators are elected, you’ll miss out on rewards completely. By nominating multiple validators, your nominations are more likely to be elected into the active set, meaning you’re also more likely to earn rewards.
- No voting dilution: There is no intrinsic downside to nominating more validators, as your vote is not diluted.
However, there are still a number of risks involved with nomination, including the risk of losing your staked funds if you're nominated validators misbehave.
This means that you should only ever nominate a validator if you’re confident in their ability to run their node without failure, error, or foul play.
It is smarter to nominate less validators, who you trust more, than to nominate more validators, solely to try and maximise your reward potential. Please read the following question for more information on how you should assess whether or not to nominate any given validator.
As a nominator, what factors should I consider when choosing whether or not to nominate a validator?
There are a number of different factors you should consider when choosing whether or not to nominate any given validator. The two primary factors to consider are risk and reward. We strongly encourage you to nominate validators you trust. Regardless, we’ll outline the key metrics for each below.
To check the following metrics, we encourage you to visit the Polkadot.js Creditcoin Staking page for more information: [https://polkadot.js.org/apps/?](https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Frpc.mainnet.creditcoin.network%2Fws#/staking/targets)
Minimising Risk
- Historical performance: Check a node’s historical performance to see if they’ve been slashed, frozen, or otherwise have faced technical inconsistencies.
- Public information: How much public information has the validator made available? The more information, the better equipped you are to do your own research and form an opinion on the trustworthiness of the validator. Equally, public validators are likely to suffer increased reputational damages in the case of node failure, further incentivising them to operate their nodes properly.
- Validator self-stake: Validators must also stake tokens themselves, however the amount can vary greatly. If a validator node misbehaves, there is a risk of tokens backing that node being slashed. Therefore, by self-staking a higher amount, a validator effectively has more ‘skin in the game’. In other words, they have a bigger economic incentive to keep their node running as intended.
Maximising Rewards
- Historical performance: Past performance is often a good indicator of future performance. By checking a validator’s recent era points, you can get a good idea of whether they’re being regularly elected and therefore earning rewards.
- Validator subscription levels: Given that each validator earns roughly the same amount of CTC every era, regardless of their total CTC backing, validators with less backing should, on average, earn node backers more rewards for every staked CTC token. In addition, nodes can only payout the top 512 backers (measured by total backed CTC). Nominating over-subscribed validators increases your risk of not making it into the top 512 node backers.
- Validator commission fee: A validator’s block rewards are shared with any backing nominators, but, the validator can also set a pre-defined commission they receive before any leftover rewards are shared. This rate can vary greatly. As a result, lower commission fees usually mean more rewards for nominators.
What should I do if a validator is ‘over-subscribed’?
If you’ve nominated over-subscribed validators, there’s a chance you won’t make it into the top 512 nominators for these validators. Only the top 512 nominators for any given node (measured by backed CTC) earn rewards.
This means there’s a chance your nominator validators won’t earn you any rewards, even though your nominated validators have been elected into the ‘active set’.
Consider increasing the amount of CTC you stake to make it into the top 512. Alternatively, consider nominating other validators who aren’t over-subscribed.
Are there risks to becoming a nominator?
Yes, there are risks to becoming a nominator.
- Slashing Risks - If any of the validators you actively nominate misbehave, attack or otherwise harm the network, you may be punished by losing some or all of your stake. This process is called "slashing". This encourages nominators to carefully choose trustworthy validators, which in turn makes the network more secure. To learn more about how slashing works, check the next question.
- Lock-up risk - Should you wish to unstake and sell your tokens, there is an unbonding period of 7 days. During this time, you won’t be able to earn any staking rewards on any currently unbonding tokens, or sell them. This means that nominators (and validators) may not be able to liquidate their CTC in response to sudden token price changes.
What is slashing and how does it work?
In Creditcoin, slashing refers to a penalty imposed on validators who act against the protocol’s interests. When a validator is slashed, a percentage of their CTC backing is burned. In the event of a slash, any nominators who were actively backing that validator will also have their stake slashed.
The amount of CTC slashed per backer is based on their backing stake. E.g. If you provided 10% of the CTC stake backing a node, you will pay 10% of any slash imposed on that node. This means that validators with a higher amount of self-stake also have a greater economic incentive to keep their nodes operating normally.
There are three types of offences in the Creditcoin network which can lead to a validator getting slashed:
- Inactivity: being offline during a designated time slot
- Block production: producing more than one block in a designated time slot
- Block finalization: finalizing blocks on two different versions of the chain (forks) in the same time slot
The size of the slash depends on the number of nodes misbehaving (reflecting the likelihood of a possible attack) and the offence type. The more nodes misbehaving, the higher the maximum potential slash (up to 7% for inactivity, or up to 100% for block production or finalisation attacks).
Slashing for inactivity only occurs when more than 10% of active nodes are inactive. This is to ensure that inactivity slashes only punish potential attacks, rather than the occasional (and inevitable) validator error or malfunction. Under normal conditions, validators are ‘frozen’ for inactivity instead, meaning they are excluded from block production and rewards until the era ends or they restart their nodes.
Slashing serves as an economic disincentive mechanism to discourage harmful validator behavior. It also incentives nominators to thoroughly evaluate any validators before backing them, resulting in increased overall network security. Regardless of whether you nominate validators directly or through a nomination pool, your stake is susceptible to slashing.
Can I get slashed as nominator?
Yes. Whenever a validator is slashed, any nominators backing that validator are also slashed. This means there is an incentive for nominators to perform due diligence on validators and only nominate trusted validators.
The amount of CTC slashed is strictly linear and based on a node’s total backed stake. This means that if you provided 10% of the CTC stake backing a node, you will pay 10% of any slash imposed on that node.
My validator node isn’t being elected. How can I attract more nominators to vote for me?
There are a number of ways for you to increase both your node’s visibility and attractiveness. We’ve outlined some of your options below:
- Reduce commission fees: The easiest way to attract more nominators to your node is to lower your commission fees. At the end of the day, most nominators want to maximise their staking rewards. By lowering your commission fees, you’ll be creating an economic incentive for people to nominate you.
- Increase your self-stake: Not only will any self-stake count as votes, it’s also a useful signal to nominators that you are trustworthy. By staking more tokens yourself, you’re liable to greater punishments in case of slashing. Basically, you’ll have ‘more skin in the game’, better aligning your interests with the economic interests of your nominators.
- Disclose more information: By linking your social media accounts or other public details on your validator profile you can increase your transparency and trustworthiness. By disclosing more information about your node, nominators will face less uncertainty and counterparty risk when deciding to nominate you.
- Community engagement: Remember that soft-power also works. By making yourself an active member of the Creditcoin community you can help to increase your visibility and trustworthiness. You can garner this support by, for example, engaging on Twitter/X, helping users in Discord, or otherwise contributing to the community in any way you see fit.
- Apply to the community section: To increase your visibility, you can also apply to the community section of the Staking Dashboard, either as a solo validator or as a group of validators, making it easier for new nominators to find your nodes. To do this, you can submit a PR here on Github.
Are there plans to implement nomination pools?
Nomination pools allow you to delegate your nomination activities to a trusted party, reducing some of the legwork and making it easier for smaller nominators to partake in staking.
In particular, nominations pools allow smaller nominators to avoid over-subscription risks, by pooling their stake together into a single, much larger, nominator.
Whilst, nomination pools are already implemented in the Creditcoin blockchain on the protocol level, they are not currently easily accessible. The Creditcoin team plans to add both documentation and dashboard support for nomination pools in the future.
That's it for the Creditcoin 2.0+ NPoS and Staking guide. We hope it's been helpful and you've found the answer you're looking for.
If you have any more questions, please ask us in the Discord (links below) or the official community forums. If something comes up a lot, we'll make sure to add it to this guide.
About Creditcoin
Creditcoin is the world’s leading real-world asset infrastructure chain for financial institutions, connecting global borrowers, lenders and investors on-chain. To date, the protocol has helped its partners record over 4.27 million real-world credit transactions, valued at $79.7 million USD, while servicing 337,000 customers worldwide across emerging markets.
By transparently securing credit history and loan performance on the Credicoin network, the protocol has already helped thousands of borrowers, businesses, and investors secure capital financing, build credit history, and grow their global RWA investment footprint.
Website | Twitter | Discord | Medium | Youtube | Telegram(ANN) | Telegram(Community) | Whitepaper | Opensea