What We Know About Ethereum Beacon Chain Withdrawals

miguel rubio
Carbonocom
Published in
4 min readJan 27, 2023

The Shanghai / Cappela upgrade, ETA March/April 2023, will unlock the over funds staked in Ethereum’s Beacon Chain since it first launched in 2020. In these two years, stakers have deposited over 16M ETH without the possibility of retrieving them or the rewards earned. Once Shanghai is up, the process of Proof of Stake will come full circle, and we will finally see the magnitude of this trend.

This is what we know today about the process of unstaking funds from the Beacon Chain.

The following is an explanation of how withdrawals are currently expected to happen after the Shanghai upgrade.
Two initial considerations
— This is a process that’s being designed and tested as we speak, so specs might change
— The process describes how validators interact with Ethereum — the un-intermediated process of withdrawal of funds from the Beacon Chain. Each Liquid Staking Derivative provider (Lido, Rocket Pool,…) will probably offer a different experience to their end user.

Validators who participate in Ethereum’s Proof of Stake access two types of rewards:

  1. Execution Layer rewards. These are rewards linked to tx organization transaction priority tips and MEV tips
  2. Consensus Layer rewards. Rewards for participating in the PoS process: attestation, block proposal and sync committee rewards. This is the newly minted ETH, issued to validators.

EL rewards depend on activity and are more volatile (the higher the demand for blockspace, the more tips and MEV). CL rewards are more constant, even thought they’re variable too, as they may vary depending on the number of validators running (and other less relevant metrics, like slashing)

EL rewards are liquid: since The Merge, validators have access to those rewards. CL rewards are locked. Since they come from newly minted ETH on the Beacon Chain, validators will not be able to touch that ETH until the Shanghai/Capella allows withdrawals.

Once withdrawals are activated, validators can choose to request partial or full withdrawals. Partial withdrawals are immediate, while full withdrawals only happen once validators exit the Beacon Chain.

How will withdrawals work

Beacon Chain Withdrawals are going to take the form of a special type of operation, separate from regular wallet or smart contract transactions. Withdrawals will be processed as system-level operations, a new type of object in an Ethereum block with its own dedicated data field in the block header. They execute a balance increase in the withdrawal address provided by the validators, instead of a transaction, and they are, therefore, a gassless state change.There will be no gas costs associated with withdrawals, but there will be a maximum that can be processed per block.

The withdrawal queue can only process a maximum of 16 partial or full withdrawals every block, which is produced every 12 seconds.

Withdrawals can be partial or full.

  • Partial withdrawals are for the rewards above the 32ETH required to validate. They can be processed and spent immediately after going through the withdrawal queue.
  • Full withdrawals (32ETH staked + rewards) requires that the validator goes through the exit queue, to stop being part of the Beacon Chain. This process delays withdrawals as a security measure. The exit process varies depending on the validator client, and on the number of currently active validators. Once the validator has exited the Beacon Chain, their withdrawal process will go through the regular withdrawal queue.
Depending on the validator count, different number of full withdrawals are possible

What’s going to happen initially once withdrawals are live?

There are several events that will affect how funds are withdrawn initially once the Shanghai fork is live, and that will add uncertainty to the process.

  • Many validators have to change their withdrawal address credentials to have access to the withdrawn funds. A specs update from March 2021 requires that validators have a withdrawal address in a “0x01” format. All validators wanting to withdraw their CL rewards will have to ensure their withdrawal credentials are updated to the new “0x01” format, from a previous 0x00 type. There are an estimated 300k validators with credentials that need an upgrade. Once Shanghai is activated, withdrawal credential changes will start to be processed on the network through the same process as withdrawals. Therefore, credential changes will affect the withdrawal queue. (link)
  • Many validators staked their assets before many of the Liquid Staking Derivative services were live (Lido launched in March 2021, Rocket Pool in November 2021…). Over time, Liquid Staking providers have developed their own value propositions for validators in the form of different approaches to revenue sharing, slashing socialization, etc. Once the Shanghai fork happens, we can expect a lot of movement from validators looking for a more favorable partner.
  • There’s already a queue: The existence of 1,084 exited validators on Ethereum suggests that there will likely be at minimum 1,084 full withdrawals processed and 34,688 ETH un-staking from the Beacon Chain shortly after the activation of Shanghai.

Relevant links

--

--