wstETH and WETH are both ERC-20 wrappers around ether, but they wrap different things: WETH wraps plain ETH and always redeems for exactly 1 ETH, while wstETH, issued by Lido, wraps stETH - a staking position - and redeems for a growing amount of it: 1.24525 stETH per wstETH at block 26,096,439 on October 1, 2026 (wstETH contract, stEthPerToken()). The rule that sorts them: “wrapped” means the same mechanism in both names, a fixed-balance ERC-20 around something else, and what sits underneath decides the price, the risk and the way back to ETH.

Key takeaways
  • Rate vs par: 1 wstETH = 1.24525 stETH and rising daily; 1 WETH = 1 ETH by contract, forever (on-chain reads, October 1, 2026).
  • Market vs contract: Etherscan quoted wstETH at 1.242371 ETH on October 1, 2026; 1.242371 / 1.24525 = 0.9977, so the market valued the stETH inside each wstETH 0.23% below ETH - a gap WETH cannot have, because WETH9 redeems at par.
  • Where the size is: 3,670,973 wstETH x 1.24525 = 4.57 million stETH, 46% of all 9,843,529 stETH, held by 38,848 addresses - 118 stETH per address against 0.62 WETH per WETH holder (2,053,190 / 3,320,331).
  • Gas: a wstETH unwrap() used about 86,500 gas on October 1, 2026, against 30,400-35,200 for a WETH withdraw() - 2.5-2.8 times as much (Etherscan, fee / gas price per transaction).

What wstETH Is and What WETH Is

WETH is ETH held by the WETH9 contract and reissued as an ERC-20 token, with nothing done to the ETH in between. Its only job is compatibility: contracts written for tokens can move WETH but not native ETH. The contract has no owner and no yield, so WETH is worth one ETH and nothing else (what WETH is).

wstETH is stETH held by Lido’s wstETH contract at 0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0 and reissued as a non-rebasing ERC-20 token. stETH itself is Lido’s receipt for staked ETH, and its balances are recalculated daily when Lido’s oracle reports validator rewards (docs.lido.fi). wstETH freezes that balance and moves the rewards into an exchange rate instead. Both tokens belong to the class of wrapped tokens; only wstETH also belongs to liquid staking.

wstETH vs WETH Side by Side

The table compares the two Ethereum mainnet contracts. Rates and supplies are on-chain reads at block 26,096,439 and holder counts are Etherscan figures, October 1, 2026 for wstETH and September 27, 2026 for WETH.

Parameter wstETH WETH
Issuer Lido none (WETH9 contract)
What it wraps stETH, a staking receipt native ETH
1 token redeems for 1.24525 stETH, rising 1 ETH, fixed
Earns rewards yes, 2.3% APR on stETH (lido.fi, October 1, 2026) no
Supply 3,670,973 2,053,190 (September 29, 2026)
Holders 38,848 3,320,331
Way in wrap() stETH after an approve, or send ETH to the contract deposit() ETH, no approve
Way out unwrap() into stETH, then the Lido queue or a DEX withdraw() into ETH, one transaction
Gas, wrap 92,300-109,500 27,900-45,000
Gas, unwrap about 86,500 30,400-35,200
Signed approvals (EIP-2612 permit) yes no

The holder and supply rows point at two different uses. WETH is spread across 85 times more addresses in small working balances; wstETH sits in fewer, larger positions worth 2.2 times as much ETH in total (4.57 million stETH against 2.05 million WETH). The WETH vs liquid staking tokens table puts wstETH next to stETH, cbETH and rETH.

How the wstETH Exchange Rate Works

The wstETH rate is the amount of stETH one wstETH can be unwrapped into, and it rises once a day when stETH rebases (docs.lido.fi). The contract exposes it as stEthPerToken() and converts any amount with getStETHByWstETH(). On October 1, 2026, 10 wstETH unwrapped into 12.4525 stETH; the same 10 wstETH unwrap into slightly more after each daily report, while the wstETH balance stays at 10.

WETH has no rate to read. WETH9 keeps one ETH for every WETH by construction - its totalSupply() returns the contract’s own ETH balance - so the conversion is always 1:1 and the WETH price is the ETH price. A rate above 1 on wstETH is therefore accumulated staking income, not a premium: paying 1.245 stETH for one wstETH is a fair exchange, not an expensive one.

wstETH to ETH vs WETH to ETH

Getting ETH back is where the two differ most.

  1. WETH: call withdraw() on WETH9; the contract burns the WETH and returns the same amount of ETH in the same transaction, any amount, any time (how to unwrap WETH).
  2. wstETH through Lido: call unwrap() on the wstETH contract to receive stETH at the current rate, then request a withdrawal from the Lido queue; the ETH arrives when the request is finalized, not in the same block.
  3. wstETH through a DEX: swap wstETH for ETH in one transaction at the market price, which on October 1, 2026 was 0.23% below the contract value (1.242371 ETH quoted against 1.24525 stETH of backing).

The second route keeps full value but takes time; the third is instant but pays the market discount and the pool fee. WETH needs neither trade-off.

ETH to wstETH vs ETH to WETH

The way in mirrors the way out. ETH becomes WETH through one deposit() call with no approval (how to wrap ETH); in a wallet with built-in wrapping, such as Gem Wallet, which wraps and unwraps ETH and WETH inside the app through its DEX aggregator, that is a single action. ETH becomes wstETH in one of two ways: send ETH directly to the wstETH contract, whose receive function stakes it with Lido and wraps the resulting stETH in the same transaction (docs.lido.fi), or stake for stETH first and then call wrap(), which needs an approve of stETH to the wstETH contract before it. The direct route skips the approval; the two-step route costs both an approve and a wrap of 92,300-109,500 gas.

Why wstETH and WETH Get Confused

Both names start with “w” for “wrapped”, and both wraps happen through a contract call labelled “Wrap” in most interfaces. The difference is the input: the WETH wrap takes ETH, the wstETH wrap takes stETH. A user who sends ETH to the wstETH contract, or picks wstETH as the output of a staking flow, receives wstETH and starts earning; a user who wraps ETH on WETH9 receives WETH and earns nothing. The token names on the confirmation screen, and the contract addresses on the explorer, are the only reliable way to tell which one happened.

What wstETH Cannot Do That WETH Can

  • It cannot redeem at par in one block: the full-value exit goes through the Lido queue; the instant exit goes through a DEX at the market price.
  • It cannot stand in for 1 ETH: protocols price wstETH with its own rate, so a pool, a loan or an order that expects WETH does not take wstETH at face value (lookalikes table).
  • It cannot be unwrapped through WETH9: the WETH contract only burns WETH; wstETH unwraps on its own contract and only into stETH.
  • Neither pays gas: fees on Ethereum are debited in native ETH, not in wstETH or WETH (why WETH cannot pay gas).

When to Hold wstETH and When WETH

Hold wstETH when the goal is to earn staking rewards on ETH you intend to keep and the exit through a queue or a DEX discount is acceptable. Hold WETH when the goal is to use ETH inside a contract - a swap, a pool, a WETH-denominated bid - and to get exactly the same ETH back whenever you want (ETH vs WETH). The two are not substitutes; many DeFi positions hold both, wstETH as collateral and WETH as the borrowed or traded side.

wstETH vs WETH FAQ

Yes. One wstETH is a claim on 1.24525 stETH according to the wstETH contract on October 1, 2026, and the number rises once a day as staking rewards are added; one WETH is always a claim on exactly 1 ETH.