Skip to Content

Lido

Lido is the largest liquid staking protocol on Ethereum. Users stake ETH and receive stETH, a rebasing token that accrues staking rewards. wstETH is a non-rebasing wrapper around stETH, suitable for DeFi protocols and cross-chain bridging. The wstETH/stETH exchange rate increases over time as staking rewards accrue.

Supported chains: Ethereum Mainnet (wrap/unwrap + all reads), Base (balance only), Sepolia Testnet. Read-only actions work without credentials. Write actions require a connected wallet.

Actions

ActionTypeCredentialsDescription
Wrap stETH to wstETHWriteWalletWrap stETH tokens into non-rebasing wstETH
Unwrap wstETH to stETHWriteWalletUnwrap wstETH back to rebasing stETH
Approve stETH SpendingWriteWalletApprove a spender to transfer stETH
Get stETH by wstETHReadNoConvert a wstETH amount to stETH value
Get wstETH by stETHReadNoConvert a stETH amount to wstETH value
stETH Per Token (Exchange Rate)ReadNoGet the stETH value of 1 wstETH
wstETH Per stETH (Inverse Rate)ReadNoGet the wstETH value of 1 stETH
Get wstETH BalanceReadNoCheck wstETH balance of an address
Get wstETH Total SupplyReadNoGet total wstETH tokens in circulation
Get stETH BalanceReadNoCheck stETH balance of an address

Wrap stETH to wstETH

Wrap stETH tokens into non-rebasing wstETH. Requires stETH approval to the wstETH contract first (use the Approve stETH Spending action). The amount of wstETH received depends on the current exchange rate.

Inputs:

InputTypeDescription
_stETHAmountuint256stETH Amount (wei)

Outputs: success, transactionHash, transactionLink, error

When to use: Convert stETH to wstETH for use in DeFi protocols that do not support rebasing tokens, prepare for cross-chain bridging, or hold a non-rebasing staking position.


Unwrap wstETH to stETH

Unwrap wstETH back to rebasing stETH at the current exchange rate. The amount of stETH received will be greater than the original wrap if staking rewards have accrued since wrapping.

Inputs:

InputTypeDescription
_wstETHAmountuint256wstETH Amount (wei)

Outputs: success, transactionHash, transactionLink, error

When to use: Convert wstETH back to stETH to receive rebasing rewards directly, or exit a wstETH position.


Approve stETH Spending

Approve the wstETH contract (or another spender) to transfer stETH on your behalf. This must be done before wrapping stETH to wstETH.

Inputs:

InputTypeDescription
spenderaddressSpender Address
amountuint256Approval Amount (wei)

Outputs: success, transactionHash, transactionLink, error

When to use: Grant stETH spending approval before wrapping, or approve other DeFi protocols to use your stETH.


Get stETH by wstETH

Convert a wstETH amount to its equivalent stETH value at the current exchange rate. Useful for calculating the underlying stETH value of a wstETH position.

Inputs:

InputTypeDescription
_wstETHAmountuint256wstETH Amount (wei)

Outputs:

OutputTypeDescription
stETHAmountuint256stETH Value (wei), 18 decimals

When to use: Calculate the stETH value of wstETH holdings, display human-readable staking position values, build portfolio dashboards.


Get wstETH by stETH

Convert a stETH amount to its equivalent wstETH value at the current exchange rate. Useful for previewing how much wstETH a given stETH amount would produce when wrapped.

Inputs:

InputTypeDescription
_stETHAmountuint256stETH Amount (wei)

Outputs:

OutputTypeDescription
wstETHAmountuint256wstETH Value (wei), 18 decimals

When to use: Preview wrap amounts before executing, calculate wstETH equivalents for stETH positions, compare rates across protocols.


stETH Per Token (Exchange Rate)

Get the current stETH value of 1 wstETH. This is the primary exchange rate that increases over time as staking rewards accrue. The rate starts above 1.0 and grows monotonically.

Inputs: None

Outputs:

OutputTypeDescription
rateuint256stETH per wstETH (wei), 18 decimals

When to use: Monitor staking yield accrual, track the wstETH exchange rate over time, trigger actions based on rate changes, compare with other liquid staking protocols.


wstETH Per stETH (Inverse Rate)

Get the current wstETH value of 1 stETH. This is the inverse of the exchange rate and decreases over time as staking rewards accrue.

Inputs: None

Outputs:

OutputTypeDescription
rateuint256wstETH per stETH (wei), 18 decimals

When to use: Calculate how much wstETH 1 stETH can produce, compare inverse rates, build rate conversion utilities.


Get wstETH Balance

Check the wstETH balance of any Ethereum address. Works on Ethereum Mainnet, Base, and Sepolia.

Inputs:

InputTypeDescription
accountaddressWallet Address

Outputs:

OutputTypeDescription
balanceuint256wstETH Balance (wei), 18 decimals

When to use: Monitor wstETH holdings, track staking positions across wallets, trigger alerts when balances change.


Get wstETH Total Supply

Get the total supply of wstETH tokens currently in circulation.

Inputs: None

Outputs:

OutputTypeDescription
totalSupplyuint256Total wstETH Supply (wei), 18 decimals

When to use: Monitor protocol adoption, track total wrapped stETH, analyze wrapping trends.


Get stETH Balance

Check the stETH balance of any Ethereum address.

Inputs:

InputTypeDescription
accountaddressWallet Address

Outputs:

OutputTypeDescription
balanceuint256stETH Balance (wei), 18 decimals

When to use: Monitor stETH holdings, check available balance before wrapping, track rebasing rewards.


Example Workflows

wstETH Exchange Rate Monitor

Schedule (hourly) -> Lido: stETH Per Token -> Code (rate / 1e18) -> Discord: Send Message

Track the wstETH exchange rate over time and send hourly updates to a Discord channel. Useful for monitoring staking yield accrual.

wstETH Position Value Tracker

Schedule (daily) -> Lido: Get wstETH Balance -> Lido: stETH Per Token -> Code (balance * rate / 1e36) -> SendGrid: Send Email

Calculate the current stETH value of your wstETH position and email a daily summary. Combines exchange rate with balance to show total staked value.

stETH/wstETH Rate Alert

Schedule (hourly) -> Lido: stETH Per Token -> Code (rate / 1e18) -> Condition (> threshold) -> Discord: Send Message

Monitor the wstETH exchange rate and alert when it crosses a threshold, useful for tracking significant yield milestones.

wstETH Total Supply Dashboard

Schedule (daily) -> Lido: Get wstETH Total Supply -> Lido: stETH Per Token -> Code (supply * rate / 1e36) -> Webhook: Send HTTP Request

Track total wstETH supply and its stETH value, sending daily data to an external dashboard or analytics service.


Supported Chains

ChainContracts Available
Ethereum (1)wstETH, stETH
Base (8453)wstETH (bridged, balance only)
Sepolia (11155111)wstETH, stETH (testnet)

On Ethereum Mainnet, all wrap/unwrap and conversion functions are available. On Base, wstETH is a bridged ERC-20 token with balance queries only. Sepolia provides testnet versions for development.