# How to Start Generating Blocks and Get Rewarded
# Conditions
A Waves node can generate blocks if the following conditions are met:
- The node's generating balance is at least 1000 WAVES. This means that the account balance in WAVES, taking into account leasing, was not less than 1000 WAVES in each of the last 1000 blocks (for more information about types of balances in WAVES, see the Account Balance article). The greater the generating balance, the higher is your chance of being eligible to generate the next block.
- Block generation is not disabled in node settings (
waves.miner.enable
parameter, see the Miner Settings section). By default, block generation is enabled. - The node is connected to at least the number of peers specified in the
waves.miner.quorum
parameter (1 by default). - No more than
waves.miner.interval-after-last-block-then-generation-is-allowed
(1 day by default) has passed from the timestamp of the last block stored on the node.
# Rewards
For each new block added to the blockchain, the following rewards in WAVES are credited to the generating account:
- Generator's share of the block reward. The current block reward is 6 WAVES, of which the generator receives 2 WAVES. Once feature #23 "Boost Block Reward" is activated, the block reward will be 60 WAVES, the generator's share will be 20 WAVES (the multiplier of ×10 applies within 300,000 blocks).
- 40% of the transaction fees in the current block and 60% of the transaction fees in the previous block, in accordance with the Waves-NG protocol. If the transaction fee is specified in a sponsored asset, generators receive the equivalent amount in WAVES from the sponsor's account.
Beyond that, the generator is entitled to the reward in the Waves DAO LP token (WAVESDLP), which can be claimed at Waves DAO or by using the claimLP()
function on smart contract.
The rewards are described in more detail in the Generator's Income article.
# Run Generating Node
Set up a node.
The ways to install a Waves node are described in the Install Waves Node article.
Create the node wallet.
If you already have a seed phrase of Waves account, specify it (base58 encoded) in the node configuration file. If not, the node will generate a seed automatically. Both ways of creating a wallet are described in the Node Wallet article.
If the node wallet was generated automatically, you can find out the account address using the
GET /addresses
REST API method of your node (see the API of Your Own Node section) or import the generated seed into a wallet app such as WX Network or Keeper Wallet.Lease at least 1000 WAVES to the node. For security reasons, we recommend leasing (temporary delegating) WAVES rather than transferring WAVES to a generating account.
The easiest way to create a lease is to use the WX Network app developed by a third-party team from the Waves community. Go to the Investments → WAVES Staking page, select the Enter Manually option and paste the address. For detailed instructions, see the Staking WAVES article in the WX Network Help Center.
Alternatively, you can sign and submit a lease transaction using one of the client libraries or in Waves IDE.
Check out the number of blocks generated by your node at w8.io. Remember that the chance of generating a block is proportional to the generating balance of your node. A node with a minimum balance of 1000 WAVES generates ~1 block per month only.
Possible issues and solutions are given in the Block Generation FAQ article.
# Create Leasing Pool
Leasing pool is a Waves node that makes regular payouts for leasing.
By leasing funds from other users, you increase the generating balance of your node, the frequency of block generation and thus the income you receive. You can share this additional income with lessors. The Waves protocol does not regulate payouts to lessors: the frequency and percentage of payouts are set by pools themselves.
For revenue distribution to lessors, you can develop your own script or use one of the tools created by members of the Waves community:
💡 For your node to be added to the list of pools on WX Network, fill in the form.