For the complete documentation index, see llms.txt. This page is also available as Markdown.

rETH

rETH is Rocket Pool's non-rebasing staked-ETH token.

rETH is Rocket Pool's non-rebasing staked-ETH token. No direct rETH/USD Chainlink feed is used; this ICustomPriceFeed adapter combines the protocol's own exchange rate with the NAV's primary ETH/USD price. An independent cross-rate monitor feed (ETH/USD × rETH/ETH, market rETH/ETH leg) is registered as a divergence monitor — a market depeg flags rETH irregular without moving its price.

Source: rETH_CustomPriceFeed.sol


Approach

getExchangeRate() × ETH/USD.

Left-to-right flowchart of the rETH price feed: rate and Chainlink inputs combine into a USD price, with a staleness gate.
rETH price feed — how its oracle inputs compose into a USD price, with the staleness gate.

The ETH/USD term is sourced from the NAV's own selector — see Base/USD from the NAV's own selector.


Price calculation

Input
Source
Description

getExchangeRate

IrETH.getExchangeRate() on rETH (18 dec)

ETH backing 1 rETH

ETH/USD

NAV basegetPriceDataNoDivergence(WETH) (8 dec)

the NAV's primary WETH/USD price

getExchangeRate() is Rocket Pool's canonical rETH/ETH ratio, updated on-chain by the protocol's oracle network and increasing as staking rewards accrue. Output decimals are inherited from the ETH/USD feed (8).


Constructor

Parameter
Description

rEth_

rETH token address (also the supported underlying)

nav_

NAVCalculator (proxy) — supplies the base asset's USD price via getPriceDataNoDivergence

baseAsset_

the registered base asset whose USD price is read (WETH)


Staleness

getLatestPrice() returns stale if getExchangeRate() returns 0, or if the NAV reports the base asset (WETH) stale — all its feeds stale. The base leg's updatedAt comes from the NAV's selected WETH feed. The getExchangeRate() rate call has no independent heartbeat.


Chains

Deployed on Ethereum.

Last updated