How to Stake on Solana with Solflare & a Ledger Hardware Wallet
[Updated August 2021]
Solflare has gotten a massive update on August 9th, 2021. Therefore, we updated some parts of this guide too. Big shoutout and thank you to the team for their work through which SOL token holders can enjoy a seamless Solana experience.
In this step-by-step guide we will walk you through the process of how you can stake your $SOL token on the Solana blockchain using the Solflare web app together with a Ledger Nano S. This guide is structured into four parts:
- Setting up your Ledger Nano S
- Accessing your wallet
- Creating & delegating your Stake Account
- Managing your Staking Operations
We highly recommend using Solflare in conjunction with a Ledger device since it is a safer method to interact with the Solana blockchain. You ca also use your Ledger Nano X, the steps to successfully stake are the same. Please note that Microsoft users might encounter some issues when using a Ledger Nano X. This issue has been acknowledged by Ledger and the Solflare team is working on finding a workaround.
In case you do not own a Ledger hardware wallet, you can also use Solflare without one — learn how to do so here.
Solflare is a non-custodial wallet created by VGNG. It was the first wallet that enabled token-holders to send, receive, and stake $SOL without having to touch a single line of code. After the update, you can now manage all of your Solana assets and operations with Solflare: SOL, SPLs, NFTs, storing, swapping, sending, and staking — all possible within one tool!
Part 1: Setting up your Ledger Nano S
Before jumping into Solflare, you need to install the current version of the Solana app on your Ledger device. To successfully do so:
- open Ledger Live on your computer
Then connect and unlock your Ledger Nano S:
- allow Ledger Live on your device by pressing both buttons on your device simultaneously
- visit the “Manager” tab in the left-hand menu bar on Ledger Live
- search for “Solana” and click “Install”
Then, open up the Solana App on your Ledger device, go to settings, and choose ‘Yes’ under ‘Allow blind signing’.
Perfect, now you are all set and ready to get started with Solflare.
Part 2: Accessing your wallet
Head over to Solflare.com and either click ‘Access’ in the top right corner or ‘Access a wallet’ in the middle of the screen. In the following scree, choose the ‘Ledger’ tab and click ‘Continue’. You might have to approve the connection to your Ledger device in a pop-up, depending on which browser you are using.
Make sure that your Ledger is connected with the Solana app open, then click ‘Continue’. Also, if you haven’t done so, please enabled ‘Allow blind signing’. in the Solana App settings on your Ledger device.
You are now presented with a drop-down menu from which you can choose different ‘Derivation Paths’. You can derive multiple addresses from your ledger device, using different derivation paths. Each path will display different addresses — in case you want to revisit an old address of yours, always make sure to chose the same derivation path.
Click on any address to proceed.
You can choose to set up a password for your account to add another layer of security. Please note that any transaction needs to be signed on your Ledger device to finalize it.
Click ‘Skip’ or ‘Next step’ to continue.
You are now on the portfolio menu of Solflare. Here you can find key information about your Wallet Account such as your wallet account address, your balance, as well as other SPL accounts that are associated with your Wallet Account.
Now you need to fund your Wallet Account to perform any actions such as staking. Send over some funds, e.g. from the exchange on which you bought your SOL. You can find your address in the top left corner of the screen. Click ‘Receive’ to be presented with your accounts’ QR code.
Part 3: Creating & delegating your Stake Account
After you successfully funded your Wallet Account, it is time to create a Stake Account. To do so, you can either click ‘Stake Solana’ in the Portfolio Menu or head over to the ‘Staking Menu’ and click ‘Start staking’.
In the pop-up menu, choose the amount you want to stake. The amount chosen will be transferred into your Stake Account. Make sure to leave some $SOL in your Wallet Account in order to pay for transaction fees — this is really important! Since these are very low in Solana, leaving ~ 0.1-0.5 SOL in your Wallet Account should get you a (very, very) long way.
Then choose a validator from the drop-down menu. You can also look for specific validators via their name. Once you have chosen a validator, you are presented with some statistics about them. Click ‘Stake’ to continue to the next step. Confirm the transaction on your Ledger device to finalize the process.
To learn more about the validators on Solana, visit https://solanabeach.io/validators
You will now find your Stake Accounts listed in the Solflare Staking Menu. Please note that your delegated SOL will start earning rewards once the Warmup Period has concluded. This usually takes one epoch (~2–3 days). Until this is the case, you will see your Stake Account with an “Activating” status. You can always check the progress of the current epoch on solanabeach.io
Now it is important to note that you as a token-holder have the power to increase the overall security and hence the overall value of the network. This can be achieved through enhancing decentralization by delegating to more than one validator. For you to do this successfully, you need to create more than one Stake Account and spread your funds across these different Stake Accounts, but always make sure to leave some $SOL in your Wallet Account in order to pay for transaction fees.
Repeat the above process for every Stake Account you want to create and delegate. Click the ‘+ Create account’ button in the Staking menu to start the process.
Part 4: Managing your Staking Operations
Solana Staking Rewards
Ever since Inflation was activated on Solanas’ Mainnet Beta in February 2021, delegators earn rewards for staking. Staking rewards automatically accrue on your Stake Account at the beginning of each subsequent epoch and are automatically re-delegated.
To check on your staking rewards, visit the ‘Staking’ menu. Click on a Stake Account to see your rewards per epoch.
You can also track your staking rewards on solanabeach.io. Simply look up your Stake Account and visit the ‘Stake Rewards’ tab in the box at the bottom of your Stake Account Details page. Here you have the option to download a CSV of your staking rewards.
How to delegate more SOL
In case you want to increase the amount of SOL that you are delegating to a specific validator, it is recommended to create another, separate Stake Account and delegate it to the respective validator. To do so, simply repeat the steps described in part 3 of this guide.
If you send SOL to a Stake Account that is already delegated, the new funds are not automatically delegated! You would need to first undelegate the Stake Account and then delegate again in order to have the new funds delegated as well. Please note that doing it this way means that you will not earn any rewards during the Cooldown or Warmup Period respectively.
How to stop delegating or reduce the delegated amount
If you want to undelegate the whole account, simply click on the respective Stake Account and hit “undelegate”. Confirm this on your Ledger device.
You will then find the respective Stake Account with a new status, namely ‘Deactivating’. Your funds are illiquid for as long as your account is deactivating. This is considered the Cool Down Period.
Once the Cooldown Period has concluded (~2–3 days), the status of your Stake Account will change to ‘Inactive’. You can then withdraw the undelegated funds from your Stake Account to your Wallet Account. To do so, simply click on the respective Stake Account and hit ‘Withdraw’. In the next window, you can choose the amount of $SOL you wish to withdraw.
If you would like to undelegate only a portion of your delegated $SOL, you need to first ‘Split’ your Stake Account. Splitting your stake account will create another, separate Stake Account that is delegated to the same validator as the Stake Account that it was split from.
Click on the respective Stake Account and click ‘Split’. In the next window, choose the amount of $SOL you wish to split into a new Stake Account and hit ‘Split’. Approve this on your Ledger device to finalize the process.
You will now find a new, separate Stake Account that is delegated to the same validator as the Stake Account that it was split from. You can now undelegate the whole Stake Account by following the steps described in the previous two paragraphs.
In the upper right corner of the Solflare UI, you can find the main menu. There you find several options such as naming your account, importing another account, or logging out. Always make sure to log out of Solflare after you are done with your operations by clicking ‘Remove data and log out’ and then ‘Delete’ on the following screen.
Under ‘Settings’, which you can also find in the upper right corner of the UI, you can choose between the different Solana Networks: Mainnet Beta, Devnet, or Testnet. There you can also find a link to the old Solflare app as well as the Solflare Discord channel, where you are provided with excellent support.
What are the Warmup and Cooldown Period in Solana?
The Warmup and Cooldown period respectively, refer to the state of your Stake Account.
The Warmup Period describes the time between the moment you issue the delegation transaction and the moment that your Stake Account is fully delegated and starts to earn rewards. In between, your Stake Account is considered to be “activating”.The Cooldown Period describes the time between the moment you issue the undelegation transaction and the moment that your Stake Account is fully undelegated. In between, your Stake Account is considered to be “deactivating”, does not earn rewards anymore, and is illiquid.
A change to the state of your Stake Account is only considered by the protocol at the beginning of an epoch. Hence, if you change the state of your Stake Account, you would have to wait until the new epoch for the change to come into effect. Since an epoch lasts ~2–3 days, you have to wait for the remaining time of the current epoch for your state changes to become effective — the exact duration of your waiting time depends on when you initiated the changes to the state of your Account.
There is a certain threshold of 25% of the total stake across the whole network that can change state in one epoch. In case this threshold is exceeded, you would have to wait for an additional epoch until the exceeding portion of your stake has successfully changed state.
Useful Information & Links
Staking Facilities Website: https://stakingfacilities.com/
Solana Blockexplorer: https://solanabeach.io/#/
Solana Telegram Group: https://t.me/solana
Solflare Twitter: https://twitter.com/solflare_wallet
Solflare Discord: https://discord.com/invite/25ufaEWuMn
Solflare Telegram Group: https://t.me/SolFlare_Wallet