Staking | Solana (2024)

Staking Overview

What is Proof-of-Stake?

On the Solana network, many different people andentities run a program on specialized computers known asa validator. Validators play a key role in maintainingand securing the Solana blockchain. Validators areresponsible for processing new incoming transactions onthe network, as well as for voting on and appending newblocks to the blockchain.

As different validators around the world may receivedifferent pieces of information at different times, itis essential that the network is able to come toagreement about which transactions and data arecontinually added to the blockchain. The strategy bywhich the validators and the entire network come to thisagreement is known as the consensus mechanism, and is acore challenge to building a successful decentralizedblockchain network. Many different projects haveattempted various solutions on how to reach consensus ina fast and cost-efficient manner.

The Solana network uses a Proof-of-Stake consensusmechanism (often abbreviated to PoS). Every validator onthe network has an opportunity to participate inconsensus by casting votes for which blocks they believeshould be added to the blockchain, thereby confirmingany valid transactions contained in those particularblocks. However, not all validator’s votes are weightedequally.

Validator’s consensus votes are stake-weighted, meaningthe more stake an individual validator has, the moreinfluence that one validator has in determining theoutcome of the consensus voting. Similarly, validatorswith less stake have less weight in determining the voteoutcome, and validators with no stake cannot influencethe outcome of a consensus vote.

What is staking?

Staking is the process by which a SOL token holder (suchas someone who purchased SOL tokens on an exchange)assigns some or all of their tokens to a particularvalidator or validators, which helps increase thosevalidators’ voting weight. Assigning your tokens to addto a validator’s stake-weight is known as “delegating”your tokens. Delegating your tokens to a validator doesNOT give the validator ownership or control over yourtokens. At all times, you still control all your stakedtokens that you may have chosen to delegate.

By staking tokens with a validator or validators, thetoken holder indicates a degree of trust in thevalidator they chose to delegate to. As validators amasslarger amounts of stake delegations from different tokenholders, this acts as “proof” to the network that thevalidator’s consensus votes are trustworthy, and theirvotes are therefore weighted proportionally to theamount of stake the validator has attracted. By weighingthe collective votes from all validators against theproportion of stake that has been delegated to them, thenetwork reaches consensus by this Proof of Stake.

Why stake?

In an open and decentralized network like Solana, anyonecan run a validator if they choose. A maliciousvalidator or other bad actor could attempt to attack thenetwork or to submit incorrect or fraudulenttransactions for their own gain. Because of theProof-of-Stake consensus mechanism described above, asingle entity acting alone in this fraudulent mannerwould need to attract some amount of stake before any oftheir proposed activities would be weighed in theconsensus vote.

As more token holders choose to stake their SOL tokensto different validators across the network, and thetotal amount of stake on the network increases, itbecomes increasingly difficult for even a coordinatedand well-funded attacker to amass enough stake tosingle-handedly alter the outcome of a consensus votefor their own benefit.

In short, the more stake that is delegated to manydifferent validators across the network, the more safeand secure the network becomes for all of its users.

Additionally, token holders who choose to stake theirtokens and help secure the network in doing so, areeligible to receive staking rewards once they havedelegated their tokens to one or more validators. Moredetails on staking rewards are found below.

Are there risks associated with staking?

On many Proof-of-Stake networks, there exists amechanism known as “slashing”. Slashing is any processby which some portion of stake delegated to a validatoris destroyed as a punitive measure for malicious actionsundertaken by the validator.

This mechanism incentivizes validators not to undertakesuch actions, as less stake delegated to a validatormeans that validator then accrues fewer rewards. Beingslashed can also be seen as a reputational risk forretaining current or attracting potential future stake.

Slashing also poses a risk to token holders who couldpotentially lose some of their tokens if they havedelegated to a validator which gets slashed. Thepresence of slashing could incentivize token holders toonly delegate their tokens to validators they feel arereputable, and not to delegate all their tokens to asingle or small number of validators.

On Solana, slashing is not automatic. If an attackercauses the network to halt, they can be slashed uponnetwork restart. For more information, please check outour docs.

How do I stake my tokens?

To stake SOL tokens, you must use a wallet that supportsstaking. Not all wallets support staking at this time.SolFlare.com is one user-friendly wallet that supportsstaking. Check out the official docs for a list of wallets which support staking.

SOL tokens in your wallet must first be moved into astake account. You can create as many stake accounts asyou like, and deposit as much or as little SOL into eachstake account as you want. Each new stake account has aunique address, and a single wallet can manage or“authorize” many different stake accounts. Check out ourdocs on stake account structurefor more details.

In order to earn staking rewards (if inflation isenabled on Mainnet Beta), the tokens in a stake accountmust be delegated to a validator. A single stake accountcan only be delegated to a single validator at any time,so if you want to delegate to different validators youwill need to split your tokens between multiple stakeaccounts.

Where can I learn about the validators on Solana?

There are various community-operated tools where you canview information about the network as well as certainperformance metrics about individual validators, suchas:

Many validators also chose to introduce themselves andtheir services on the Solana forums:

Can I stake tokens from an account if my tokens have a lockup?

Yes. Some people may have received a stake account withlocked up tokens from the Solana Foundation that wasdistributed in exchange for services. Tokens in stakeaccounts with a lockup may not be withdrawn to anotherwallet address before the lockup expires, but they maystill be delegated to a validator to potentially earnstaking rewards during this time. Rewards earned onlocked tokens are deposited back into the locked stakeaccount.

How do I add tokens to a stake account?

When you first create a stake account, you specify howmany SOL tokens you want to fund it with, and thesetokens are withdrawn from your main wallet account anddeposited into the new stake account.

Tokens can also be transferred into a pre-existing stakeaccount at any time, by using your wallet’s Transfer orSend feature and providing the address of your stakeaccount. If you transfer tokens into a stake accountthat is already delegated, these new tokens will notautomatically be delegated.

If you have a delegated stake account and you wish toincrease your delegation to a particular validator, thebest practice is to create a new stake account with theadditional amount of stake and delegate that account tothe same validator.

Example: Increasing the stake delegated to a singlevalidator

  • User has a wallet with 1000 SOL balance.
  • User uses the wallet interface to create a stakeaccount with 100 SOL, then delegates the tokens in thestake account to Validator A.
  • Wallet balance is now 900 SOL and the wallet alsocontrols a stake account with a balance of 100 SOL.
  • The stake account shows in the wallet interface and onthe Explorer that it is “Activating”. Once it is“Active”, the staked tokens are eligible for rewards.See Timing Considerations for more details.
  • Later, the user wants to increase their delegation toValidator A, so uses the wallet interface to create asecond stake account with 50 SOL, then delegates thetokens in the new stake account to Validator A.
  • Wallet balance is now 850 SOL and the wallet alsocontrols 2 stake accounts with 100 and 50 SOL,respectively, each delegated to Validator A.

If you transfer tokens into a stake account that isalready delegated, these new tokens will notautomatically be delegated. In order to get these newtokens also delegated and earning rewards, you wouldneed to un-delegate the entire account, then re-delegatethe same account. As un-delegating and re-delegatingcan take several days to take effect, your original stake would not be earning rewardsduring this transition period.

Therefore, we recommend only transferring SOL into astake account when it is first created or otherwise notdelegated.

How do I remove tokens from an existing stake account?

Tokens can only be withdrawn from a stake account whenthey are not currently delegated. When a stake accountis first un-delegated, it is considered “deactivating”or “cooling down”. Tokens may not be withdrawn from theaccount until some or all of them have finisheddeactivating and are considered “inactive” and thereforeno longer earning any potential staking rewards. Fordetails on how long this transition period may take,please see Timing Considerations.

Once the tokens in a stake account are inactive, theycan be withdrawn back to your main wallet address or toanother address immediately.

Example: Withdrawing all tokens from a stake account

  • User has a wallet with a balance of 900 SOL, and asingle stake account with 100 SOL delegated to avalidator.
  • User uses the wallet interface to Deactivate theirstake delegation. The stake account shows in thewallet interface and on the Explorer that it is“Deactivating”. Once it is “Inactive” or “NotDelegated”, the staked tokens stop earning rewards andcan be withdrawn. See Timing Considerations for more details.
  • User can use the wallet interface to withdraw theirall tokens back into their main wallet account. Thewallet balance now shows 1,000 SOL and the stakeaccount is closed.

If you want to reduce the amount of delegated stakeassigned to a given validator without deactivating yourentire balance (and therefore missing any potentialrewards during the delegation downtime), you can Splitan existing stake account into two accounts, andundelegate one, while leaving the other accountdelegated and continuously eligible for rewards.

Example: Reducing the delegation staked to a givenvalidator

  • User has a wallet with a balance of 800 SOL, and asingle stake account with 200 SOL delegated to avalidator.
  • User wants to reduce the amount of stake delegated tothe validator by 100 SOL.
  • Use the wallet interface to “Split” the stake account,and specifies 100 SOL as the amount to split.
  • There are now 2 stake accounts, each with 100 SOLwhich are each delegated to the same validator.
  • User can then use the wallet interface to Deactivateone of their stake delegations. The stake accountshows in the wallet interface and on the Explorer thatit is “Deactivating”. Once it is “Inactive” or “NotDelegated”, the staked tokens stop earning rewards andcan be withdrawn. See Timing Considerations for more details.
  • Once the account is Inactive, the user can then chooseto delegate the account to a different validator, orto withdraw the tokens back into the main wallet, orto further split the inactive stake account anddelegate to multiple different validators.

Tokens in a stake account with a lockup may not bewithdrawn until the lockup expires, regardless of thedelegation state of that account. Once the lockupexpires, undelegated tokens may be withdrawnimmediately. There is no action required by the accountholder to specifically unlock the account.

Delegation Timing Considerations

When you delegate or un-delegate a stake account, thetokens do not change state immediately. Newly delegatedtokens are considered “activating” or “warming up”, andare not eligible to earn rewards until they are fullyactivated. Newly un-delegated tokens are considered“deactivating” or “cooling down” and are not able to bewithdrawn until deactivated.

The Solana protocol only allows stake tokens to finishchanging state at the beginning of a new epoch. An epochis approximately 2 days long. Use solana epoch-info tosee details of the current epoch.

If you delegate tokens in a stake account in the middleof an epoch, the tokens will appear in your wallet as“activating” until the current epoch ends, at whichpoint they will be active and eligible to earn rewards.Whether you delegate your stake tokens near thebeginning of the current epoch, or near the end of thecurrent epoch does not impact when the tokens willbecome active, which is only at the next epoch boundary.The same logic applies to un-delegating or deactivatinga delegated stake account. Deactivating tokens cannot bewithdrawn until they have finished deactivating at theepoch boundary.

There is a limit to how much total stake can changestate in a single epoch across the entire Solananetwork. No more than 25% of the total active stake onthe network can be activated or deactivated in a singleepoch. In a scenario where more than 25% of the totalactive take on the network is being activated in asingle epoch, a portion of all activating/deactivatingstake up to the global 25% limit, will finish changingstate at the first epoch boundary. The remaining stakewould stay as “activating” or “deactivating” for atleast one more epoch, until the next epoch boundary.

If a stake activation takes multiple epochs, the portionof stake that becomes fully active at the first epochboundary is eligible for rewards, while the remainingportion that is still activating for an additional epochis not yet eligible for rewards.

Similarly, if a stake deactivation takes multipleepochs, the portion of stake that becomes fully inactiveat the first epoch boundary becomes able to bewithdrawn, while the remaining portion is stilldeactivating for an additional epoch, at which point itcan then be withdrawn.

How can I check on the status of a specific stake account?

All stake accounts on Solana (and all accounts of anyvariety) can be viewed on Solana’s network explorer,found here:

Solana Explorer

Copy and paste the stake account address of interest inthe main search bar of the explorer to see details ofthe account, including itsactivation/deactivation/delegation status, currentbalance, and the address of the stake account’sauthorities, which would usually be the same as yourwallet’s main address.

Depending on which wallet solution you use to manageyour stake accounts, this same information may bevisible by logging in to your wallet and viewing yourstake accounts.

Staking Rewards

How do I estimate and view my staking rewards?

Staking rewards are computed and issued once per epoch.An epoch is approximately 2 days long. Rewards accruedin a given epoch are issued to all validators anddelegators in the first block of the following epoch.Staking yield is presented as an annualized figure,though this number varies each epoch as the inflationrate and total active stake continually change. Stakingyield and the full inflation design is detailed in ourofficial docs here.

Staking | Solana (1)

Estimates of Staking Yield, given various models of thefraction of total SOL staked, can be explored here:

Staking Yield Models

To estimate the amount of SOL a delegator can expect tosee in a single epoch in a single stake account:

Staking | Solana (2)

What is Validator Uptime?

Validator Uptime is defined by a validator’s consensusvoting behavior. For each time a validator votes on ablock that is ultimately appended to the blockchain,that validator earns one Vote Credit.

When rewards are tallied at the end of the epoch, allthe stake-weighted vote credits earned by all thevalidators are used to determine the total amount of SOLthat is issued to each particular validator and theirdelegators.

What is the Validator Fee/Commission?

Validators charge a fee on inflationary rewards earnedby the stake accounts that are delegated to them, inexchange for their services in securing the blockchainand processing transactions. This fee is known as thecommission rate. Each time rewards are issued, thecommission is deposited in the validator’s account andthe remaining rewards are deposited in all of the stakeaccounts that are delegated to that validator,proportionally to the amount of actively delegated stakein each account. Validator commission and stakingrewards are always issued simultaneously.

When and where are staking rewards issued?

Rewards are issued once per epoch and are deposited intothe stake account that earned them. Stake rewards areautomatically re-delegated as active stake.

If the rewards due to a validator or one of their stakesis less than one lamport for a given epoch, rewardissuance is deferred until the next epoch in which bothwould receive at least one lamport.

Economics

What will the inflation rate be?

The details of the originally proposed inflationschedule are discussed here. The specific parametersthat determine the inflation schedule are:

  1. Initial Inflation Rate: 8 %
  2. Dis-inflation Rate: −15%
  3. Long-term Inflation Rate: 1.5%

The above parameters are defined as:

  • Initial Inflation Rate: The starting Inflation Ratefor when inflation is first enabled. The tokenissuance rate can only decrease from this amount
  • Dis-inflation Rate: The annualized rate at which theInflation Rate is reduced
  • Long-term Inflation Rate: The stable, long-termInflation Rate to be expected

Note that the inflation rate will not be the same as thestaking yield (i.e. the interest earned by stakingtokens). See below for a discussion of staking yield.

Where will the inflationary issuance be distributed?

100% of the inflationary issuances are proposed to bedelivered to delegated stake accounts and validators.

What is the expected staking yield?

Staking yield comes from inflationary issuances beingdistributed across delegated staking accounts andvalidator vote accounts per the validator commissionrate. Due to this design, the staking yield is to beprimarily a function of the fraction of SOL that isstaked on the network. A detailed discussion of thedesign and its impact on staking yield can be foundhere:

Inflation Design Overview

The amount of total SOL that will be staked is unknown,so we can only estimate the exact staking yields. Below,we show staking yields over time segmented by differentvalues of the percent of staked SOL that might beobserved on the network (between 60-90%). The inflationschedule parameters are set as described above.

Staking | Solana (3)

A simple interactive dashboard is provided here,in which different % of staked SOL can be selected tosee the impact on prospective staking yields.

Please note that this is an idealized Staked Yield as itneglects validator uptime impact on rewards, validatorcommissions, potential yield throttling and potentialslashing incidents. It additionally ignores that % ofStaked SOL is dynamic by design, i.e. it is expectedthat the % of staked SOL changes over time thusimpacting the staking yield over time. It is onlypresented to be used as a rough estimate for expectedstaking yields.

I'm an expert in blockchain and decentralized networks, with a deep understanding of Proof-of-Stake (PoS) consensus mechanisms, particularly in the context of the Solana network. My knowledge is grounded in both theoretical concepts and practical applications, making me well-equipped to discuss various aspects of staking, validators, consensus mechanisms, and related topics.

Now, let's delve into the concepts mentioned in the article:

Proof-of-Stake (PoS) Consensus Mechanism:

  • Definition: PoS is a consensus mechanism where validators are chosen to create new blocks and validate transactions based on the amount of cryptocurrency they hold and are willing to "stake" as collateral.
  • Solana's Consensus: Solana utilizes a PoS consensus mechanism where validators play a crucial role in maintaining and securing the blockchain.

Validators:

  • Role: Validators on Solana process incoming transactions, vote on appending new blocks, and contribute to the consensus mechanism.
  • Consensus Mechanism: Validators participate in consensus through a voting process that determines which blocks are added to the blockchain.

Staking:

  • Definition: Staking involves assigning tokens (in this case, SOL tokens) to a validator to increase its voting weight and influence in the consensus process.
  • Delegating: Stakers delegate their tokens to specific validators without transferring ownership or control.
  • Stake-weighted Voting: Validators' consensus votes are weighted based on the amount of stake they have.

Why Stake?:

  • Security: Staking enhances network security by requiring attackers to amass a significant amount of stake, making malicious activities more challenging.
  • Rewards: Stakers are eligible to receive staking rewards, providing an incentive for securing the network.

Risks Associated with Staking:

  • Slashing: Some PoS networks implement slashing, a mechanism where a portion of a validator's stake is destroyed as a penalty for malicious actions.
  • Reputational Risk: Being slashed can harm a validator's reputation, impacting its ability to attract stake.

How to Stake:

  • Wallets: Staking requires a wallet that supports the feature.
  • Delegation: Stakers delegate tokens to a validator of their choice, indicating trust in the validator's consensus votes.

Validator Uptime and Commission:

  • Validator Uptime: Determines a validator's reliability based on its voting behavior.
  • Commission: Validators charge a fee on rewards earned by delegated stake accounts, known as the commission rate.

Staking Rewards:

  • Issuance: Rewards are issued once per epoch and deposited into the stake account that earned them.
  • Re-delegation: Rewards are automatically re-delegated as active stake.

Inflation and Economics:

  • Inflation Rate: The Solana network has a defined inflation schedule with parameters such as initial inflation rate, dis-inflation rate, and long-term inflation rate.
  • Issuance Distribution: 100% of inflationary issuances go to delegated stake accounts and validators.

Staking Yield:

  • Definition: Staking yield is the return on investment for staking tokens, primarily influenced by the percentage of total SOL staked on the network.
  • Estimation: Staking yield varies based on the fraction of SOL staked, and an interactive dashboard is provided for estimating prospective staking yields.

By thoroughly understanding these concepts, users can navigate the staking process on the Solana network, contribute to its security, and potentially earn rewards through their participation.

Staking | Solana (2024)
Top Articles
Latest Posts
Article information

Author: Nathanael Baumbach

Last Updated:

Views: 5412

Rating: 4.4 / 5 (75 voted)

Reviews: 82% of readers found this page helpful

Author information

Name: Nathanael Baumbach

Birthday: 1998-12-02

Address: Apt. 829 751 Glover View, West Orlando, IN 22436

Phone: +901025288581

Job: Internal IT Coordinator

Hobby: Gunsmithing, Motor sports, Flying, Skiing, Hooping, Lego building, Ice skating

Introduction: My name is Nathanael Baumbach, I am a fantastic, nice, victorious, brave, healthy, cute, glorious person who loves writing and wants to share my knowledge and understanding with you.