As a Rocket Pool node operator, you are entitled to regular rewards that will be provided in the form of the RPL token and (if you are opted into the Smoothing Pool) some ETH as well. This section will describe how these rewards work and how you can claim them.
At regular intervals, Rocket Pool will flag a checkpoint on the network. Currently, checkpoints occur every 28 days.
At a new checkpoint, the Oracle DAO will collectively create a true snapshot of the state of the node operators in the Rocket Pool network, which it will use to determine the RPL and Smoothing Pool ETH rewards for each node during that interval. Note that "bonus commission" for Saturn 0 minipools is distributed using smoothing pool rewards (Saturn 0 minipools are the ones created after 2024/10/28, which have a contract commission of 5%).
This information is compiled into a Merkle Tree - an extremely efficient way to make all of the details available to smart contracts. The Merkle Tree is built into a JSON file and hosted on the InterPlanetary File System (IPFS) and mirrored on a GitHub repository that we maintain.
Once the tree is submitted, the Rocket Pool smart contracts will mint new RPL tokens and move them, along with the Smoothing Pool's entire ETH balance, into the Rocket Pool vault for secure storage. You can then view how many RPL and ETH rewards you earned during that interval and claim those rewards.
The rewards system has the following features:
For more information on how the Merkle Tree is built and how rewards are calculated, please visit our research
repository and view the official specifications.
We've provided a brief explanation of them below.
RPL's current rewards rate is 5% inflation per year and rewards are paid out every 28 day period. As of 2024/10/21, the last period's inflation was 77,533. Since 70% is distributed to Rocket Pool node operators, that was 54,273 RPL that period.
This amount will be divided among all of the node operators on the network, based on their node weight. Node operators earn the maximum APY for staked RPL positions worth 0-15% of borrowed ETH. RPL stake beyond 15% borrowed ETH still earns further rewards, but at a reduced marginal APY.
If less than 28 days have passed between the time when you registered your node and the checkpoint, your rewards in that first rewards interval will be pro-rated to account for that. For example, if you registered on day 14 of the interval, you would receive 50% of normal rewards.
After that first interval, your node will have been registered long enough on subsequent intervals that you will receive full rewards for all of them.
The rocketpool node status
command will show you your current collateralization ratio at any point of time. This collateralization ratio will be based on the prices at the time at which you run the command. However, if you want to know what your collateralization ratio will be at the next rewards round, follow the next steps:
/when
command in the "random" channel of the Rocketpool Discord, and see how many hours are left before the next rewards period starts./get_address_of_contract contract:rocketNetworkPrices
command in the "random" channel of the Rocketpool Discord). Afterwards, open one or more of the transactions submitted by the oDAO members. Along with RPL rewards, the Smoothing Pool's entire ETH balance is distributed during rewards checkpoints. Out of the entire Smoothing Pool's rewards balance, the percentage which corresponds to pool stakers (50% for 16 ETH minipools, or 75% for LEB8s), minus the respective node commission, will be sent to the rETH contract. There it can either 1) be burned for ETH from pool stakers that want to exit, or 2) be used to create more minipools. The remaining portion will be distributed amongst the eligible node operators.
Nodes that are opted into the smoothing pool for the interval, even if only part of the time, are eligible for a portion of the Smoothing Pool's total balance. The balance is snapshotted at the rewards checkpoint, and the Oracle DAO determines each eligible node's portion. The portion is determined by the following factors:
If you'd like to know more, please see the research
repository linked above for a full breakdown of how the rewards are calculated.
When a new rewards checkpoint is reached, the Oracle DAO will begin to build the rewards tree for that interval. Building this tree currently takes approximately 2 hours, and the rewards for the interval aren't available to claim until the tree has been built and submitted. Once it's available, your node will automatically download this file and you'll be able to view and claim your rewards for that interval.
If you'd like to generate the tree yourself instead of downloading the pre-built one from the Oracle DAO, you can do so!
rocketpool service config
TUI.Smartnode and TX Fees
section.Rewards Tree Mode
from Download
to Generate
.Archive-Mode EC URL
box.
Now your Smartnode will build the tree completely independently from the Oracle DAO, using only the data provided by your Execution and Consensus clients.
You can watch it during a rewards interval checkpoint with rocketpool service logs watchtower
.
If you'd like to rebuild past trees from previous intervals, you can do so with the following command:
Follow the prompts, and then use rocketpool service logs watchtower
to view its progress.
To view your pending unclaimed rewards, run the following command:
As intervals go by and you accumulate rewards, the output will look like this:
Here you can quickly see how many rewards you've earned at each interval, and can decide which one(s) you want to claim.
You can also specify an amount you want to restake during this claim:
This will let you compound your RPL rewards in one transaction, which saves on gas costs.
Simply follow the prompts, ensure your node wallet has enough ETH to pay for the gas costs of claiming, and you're done! Your rewards will be sent to your withdrawal address.
To view your node's total rewards, including those you've already claimed, use the following command:
This will provide a breakdown of how much RPL and ETH you've claimed so far, and how much is still unclaimed:
If you're not opted into the Smoothing Pool, the Execution-layer portion of your rewards from block proposals (including transaction fees and MEV) will be sent to your node's Fee Distributor contract instead.
To check the balance of your Fee Distributor, you can either use a chain explorer like https://etherscan.io or simply run rocketpool node status
- there will be a section called Fee Distributor and Smoothing Pool that shows it:
To access the Fee Distributor's balance, you will distribute it (hence the name, Fee Distributor). This will calculate your share of the rewards (based on your node's average minipool commission) and send it to your node's withdrawal address; the rest is sent to the staking pool.
Distribution can be done at any time. You can sit on the balance and let it accumulate if you choose, or distribute it regularly.
To distribute the balance, run the following command:
This will show how much goes to you and how much goes to the staking pool:
Simply confirm the gas price you want and submit the transaction. Once it's been completed, your portion of the rewards will be available in your node's withdrawal address.