On February 10 the Solana community passed a vote to enable inflation on mainnet. SOL holders delegating their tokens to validators on the network will now start to earn staking rewards.
Solana is a composable, unsharded blockchain focused on maximizing transaction throughput through various hard- and software optimizations. Like most smart contract platforms, the Solana network is secured through Proof-of-Stake.
This post is an overview of the staking economics on Solana going into the factors that influence rewards, as well as the risks and restrictions associated with staking SOL tokens.
A Word on Epochs
Staking-related updates in Solana happen at epoch boundaries. An epoch is the length of a certain amount of blocks (in Solana: “slots”) in which the validator schedule of Solana’s consensus algorithm is defined. To stakers this means that beginning and stopping to stake, as well as reward distribution, always happen when epochs switch over. An epoch is 432,000 slots, each of which should at a minimum take 400ms. Since block times are variable this means epochs effectively last somewhere between 2–3 days.
The SOL staking lifecycle is divided into three phases:
- Warmup: When sending a staking transaction to the network, stake first needs to activate before it influences the consensus process and begins to earn rewards. The time this takes is dependent on how much SOL is beginning to stake relative to the SOL already at stake. Up to 25% of the SOL already at stake can warmup per epoch and start to earn staking rewards. In the best case scenario, when a reasonably high percentage of SOL is at stake and there is little new stake entering, this will usually mean that stake will become active in the upcoming epoch that the staking transaction was sent. In times of high stake turnover, e.g. at network launch, stake will progressively activate meaning that only a fraction of stake will enter the validation stage each epoch.
- Validation: Stake in this stage is actively influencing validator voting power and is thus eligible for both rewards and penalties, which will be explained in coming sections of this article.
- Cooldown: When deciding to stop staking, staked SOL needs to pass a period during which stake remains eligible for penalties before it becomes liquid. Similar to the warmup phase, this happens gradually and works in the same way that warming does, with at maximum 25% of the SOL at stake being able to pass the cooldown phase per epoch.
Staking rewards on Solana are determined by a variety of factors, some of which are related to the chosen validator, while others depend on the global network state. Rewards are automatically added to the active stake to compound, which means withdrawing earned rewards also requires the cooldown phase to pass.
- Inflation: Solana has a deflationary issuance schedule starting out at 8% for the first year and decreasing by 15% until it reaches 1.5% after around 11 years, from which point on it will remain constant. Inflated SOL supply is distributed to those staking (95%) with a small portion going into a treasury to fund development of the Solana ecosystem (5%).
- Staked Supply: Newly issued tokens are rewarded to those staking, which means that if there is a lower percentage of the circulating SOL supply at stake, those staking will receive higher rewards.
- Transaction Fees: Transaction fees in Solana are dynamically adapting based on the load in the system. 50% of fees is burned, which indirectly benefits SOL holders as this lowers the overall SOL supply. The rest is retained by the validator proposing the block containing the transaction.
- State Rent: Accounts and contracts on Solana are charged rent in proportion to the space they occupy. 50% of the rent the protocol collects is burned, decreasing the overall SOL supply, and the rest is distributed to validators as part of the transaction fees.
- Commission Rate: Validators can set a commission fee in the protocol. This percentage is the proportional cut that validators receive from delegated stake for operating the node infrastructure on behalf of token holders.
- Uptime: Validator nodes earn credits for blocks on the majority fork they successfully voted on. Stakers earn a portion of inflation rewards based on their proportional stake times the percentage of blocks their validator successfully voted on. As an example, if a validator missed to vote on 10% of blocks, its delegators will only receive 90% of the staking rewards.
To ensure that validator nodes act according to the rules, penalties may be enforced by Solana’s protocol in the event of provable misbehavior. In Solana, this relates to voting on conflicting forks in the consensus process. Slashing in Solana would be applicable to both delegators and validators. In the early phases of the network, slashing is not activated yet. The Solana team is exploring models in which the slashed amount would adjust based on correlated faults, as well as based on the duration since the last vote (to discourage validators waiting to vote to avoid getting slashed).
Changing the validator node you are delegated to or staking with multiple validator nodes on Solana is easily possible through splitting and merging stake accounts. Read the documentation below to learn more.
How to Stake and Further Resources
You can stake your SOL tokens on Solana mainnet and earn staking rewards with validators by following the official staking delegation guide. Currently, staking is supported e.g. through the SolFlare wallet built by Dokia Capital.
Chorus One operates a highly available Solana validator and is among the top contributors to the protocol, e.g. as part of the Tour de SOL competition, where we uncovered multiple vulnerabilities in preparation for getting Solana mainnet ready. By delegating to our node you are supporting our work and involvement in Solana.
Originally published at https://blog.chorus.one on February 11, 2021.