Affiliated company Matrixed.Link: official Chainlink node operator running 500+ live price feeds
Liquid Staking

How Liquid Staking Tokens Are Priced

A liquid staking token has two prices: the protocol's exchange rate and the pool's market rate. How each is set, why they differ and which to read.

7 min read

A liquid staking token has two prices. The exchange rate is what the protocol’s own books say one token is worth in ETH. It rises as staking rewards arrive. The market rate is what a pool pays for the token right now. The gap between the two is the price of leaving immediately instead of waiting for the protocol to pay out.

A liquid staking token is an ERC-20 that represents a claim on staked ETH plus the rewards it earns, so a holder keeps a tradable position while the ETH stays staked. That design creates the two prices. One is a bookkeeping value that a contract or a reporting process produces. The other is a trade that a buyer is willing to make. This article covers how each exchange rate is set, why the market rate can sit below it, what the gap looked like in June 2022 and which price a lender, a perpetuals venue or a treasury can read for which job.

Where the exchange rate comes from

An exchange rate is not a market price. It is computed from the protocol’s accounts. It changes in steps rather than continuously. Each protocol does it differently.

rETH

Rocket Pool’s token contract divides the ETH balance the network reports by the rETH supply. Its getExchangeRate() function returns ETH per rETH, a number that rises as rewards arrive. The balance comes from trusted Oracle DAO nodes: an update needs consensus among them. The contract also enforces a minimum time between reports.

Rocket Pool’s documentation says the rate updates about every 24 hours, based on the Beacon Chain rewards its node operators earn. Reading the contract across a week in October 2026 showed the same pattern: one step a day, with the value flat in between.

cbETH

cbETH is built on Coinbase’s wrapped staked token contracts, which set the rate off-chain. The contract has an oracle role that can set the exchange rate through updateExchangeRate(uint256). The repository also describes a separate rate-limited updater contract that checks each update against an allowance. Anyone can read the result with exchangeRate(), which returns ETH per cbETH.

The repository’s README expects frequent updates. In the days we sampled in October 2026 the value changed once a day and held still otherwise. Treat that as an observation, not as a published schedule.

stETH and wstETH

stETH takes the other route: the holder’s balance grows with each oracle report instead of the token’s rate rising. Lido’s documentation says rebases normally happen daily, when its oracle reports the Consensus Layer balance. A report frame lasts 225 epochs, which is 24 hours. It starts around noon UTC.

wstETH keeps its balance fixed and its value in stETH rises. stEthPerToken() returns that value and steps at the same daily rebase. How the two representations differ and what goes wrong when a system mixes them up are the subject of stETH vs wstETH.

Each protocol runs its own schedule, so two exchange rates read at the same moment can sit at different points of their daily cycles. All three reads are plain contract calls, with no trade data involved.

Why the market rate can differ

The exchange rate says what a token redeems for. It does not say when. Ethereum enabled staking withdrawals with the Shapella upgrade on 12 April 2023. Exiting is still not instant:

  • A full exit means the validator leaves the active set and the funds are then swept to the withdrawal address. How long that takes depends on how many validators exit at once. The consensus rules also limit exits per epoch.
  • Lido serves withdrawals from a queue in order of request. A holder requests a withdrawal with stETH or wstETH. The accounting oracle report finalizes a batch of requests. Once a request is finalized, the holder can claim it.
  • Rocket Pool lets a holder burn rETH for ETH directly while the staking pool holds enough ETH to cover the trade. Otherwise the route is to sell on an exchange.

Lido’s help center, in an article last updated in April 2024, described a wait of one to five days under normal circumstances. It listed the amount of stETH in the queue, bunker mode, the Beacon Chain exit queue and staking demand as the factors behind it.

A holder who needs ETH today can wait or sell the token in a pool. The buyer in the pool takes over the wait and the chance that something changes before payout, so the buyer wants paying for that. The pool price is the exchange rate minus that payment. Lido’s integration guide says the same in its own terms: holders risk a market price below the token’s inherent value because of withdrawal restrictions. It also says redemption by burning stETH keeps the 1:1 ratio except in rare cases.

When exits are quick and the pools are liquid, the two prices sit close together. The gap widens when waiting costs more or when sellers outnumber buyers.

June 2022: the gap as a dated case

Before Shapella, staked ETH could not be withdrawn at all. After the collapse of Terra in May 2022, holders who wanted ETH could get it only by selling the token. CoinDesk, in a report carried by Fortune on 17 June 2022, wrote that some large holders sold their stETH for ETH, mostly through the Curve pool.

We read that pool’s quote for selling one stETH, with its get_dy function on archive state. At block 14955880, on 13 June 2022, it returned 0.935006 ETH, about 6.5 percent below one ETH. A later read, at block 14986812 on 18 June 2022, returned 0.9311 ETH, about 6.9 percent below. It is one pool and a one-token trade, so the true trough may lie between the samples.

The protocol’s position, as Forklog reported it on 15 June 2022, was that stETH would be redeemable for the deposited ETH and accrued rewards once withdrawals were enabled, independent of the secondary market rate. Both statements held together: the exchange rate stayed a claim on ETH while the market rate priced the wait.

The gap also did not close on the day withdrawals opened. The same quote read 0.9974 ETH on 6 April 2023, six days before Shapella, so most of the gap had already narrowed over the preceding months.

What moves the gap

Every driver below acts on the cost or length of waiting, or on how many buyers stand ready to take it:

  • The length of the exit queue. More stETH waiting means a longer wait. Lido’s help article names the amount in the queue as a factor.
  • Validator exits. The Beacon Chain exit path is rate limited per epoch, so a large number of simultaneous exits stretches the wait for everyone.
  • Pool liquidity and who is selling. In June 2022 large holders sold into one pool. Rocket Pool’s documentation ties direct redemption to the pool’s balance, which is the same dependence in another form.
  • Protocol-side events. Lido lists bunker mode among the factors behind its wait and says 1:1 redemption has rare exceptions.
  • Risk events. The Terra collapse is the example above: holders wanted ETH while the exit was closed.

None of these is a constant, so the gap moves with them.

Which price to read for which job

A lender sells collateral when it liquidates a position, so the proceeds come at the market rate. Valuing collateral at the exchange rate in a stressed week overstates what a liquidation returns. The exchange rate still answers a different question, how much ETH one unit of collateral represents. It holds still between reports, so a reading taken hours after the last step is still the previous step.

A perpetuals venue needs a mark and a settlement price that someone could trade at now. That is the market rate. An exchange rate that steps once a day, set by a reporting process, would sit still while the market moves.

A treasury can use both for different decisions. The exchange rate shows how much claim the holding has accrued. The market rate shows what leaving today would produce. The spread between them is the cost of exiting now. A treasury that can wait out the exit path leans on the exchange rate. One that may need ETH on a particular day leans on the market rate.

Read together, the two numbers carry a signal neither gives alone. A flat exchange rate with a falling market rate can point at exit demand running ahead of liquidity. Because the exchange rate comes from a reporting process, a risk model can store the time of the last update next to the value.

Reading both on ML Data

ML Data prices the market rate: what the pools pay for the token, resolved to dollars. The feed pages for rETH, cbETH and stETH show it. The liquid staking token price board lists the tokens together. The ETH ratio board puts each against ETH and labels it rebasing or accruing. The exchange rate stays with the protocol, readable on chain with the functions above.

How a pool state becomes a price is covered in DEX-native price feeds, explained.

Sources

Frequently asked

Questions & answers

What is liquid staking?

Liquid staking lets a holder stake ETH and receive a token that represents the staked ETH plus the rewards it earns. The ETH stays staked while the token can be traded or used as collateral. Each protocol decides how the token tracks rewards: some grow the holder's balance, others raise the token's redemption value.

Can a liquid staking token lose its peg?

It can trade below its exchange rate. In June 2022, before Ethereum withdrawals existed, a Curve pool priced one stETH at about 0.93 ETH at the lowest points sampled in mid June. The gap narrowed over the following months, with setbacks along the way. Redemption through the protocol is a separate path from the pool price.

Why is stETH not 1:1 with ETH?

Through Lido's withdrawal queue stETH redeems at 1:1 with rare exceptions, but queueing takes time. A holder who sells in a pool instead hands the wait to the buyer, so the pool price can sit below one ETH. The size of the gap measures how costly waiting has become.

How does rETH earn rewards?

Rocket Pool's node operators earn rewards from the Beacon Chain, priority fees and MEV on the blocks they propose. Trusted nodes report the network's ETH balance to the contract about every 24 hours. The rETH exchange rate, in ETH per rETH, rises accordingly. The holder's rETH balance does not change.

How does an LST market rate differ from its exchange rate?

The exchange rate is the protocol's own redemption value, produced by a contract or a reporting process and changing in steps. The market rate is what pools pay for the token now. A liquidation or an immediate sale clears at the market rate, so risk models can read both.

Get in touch

Ready for price data you can defend?

Whether you are a protocol pricing collateral, a risk team monitoring depegs, an asset manager marking a book or an exchange onboarding a data vendor, our team is ready to help.

Our affiliate Matrixed.Link is trusted by
ChainlinkEnjinPolygondRPC