Everything you need to know about Shapella, the Ethereum Withdrawals Upgrade

Thursday, March 30, 2023

The Ethereum network is preparing for a major upgrade that will enable users to withdraw their staked funds from the network, facilitating staking ETH. This upgrade, included in the Shanghai and Capella hard forks, will introduce new features that allow validators to exit the network and unlock their 32 Ether, as well as any earned rewards. In this article, we'll explore everything you need to know about the upcoming Ethereum withdrawals upgrade, including the full and partial withdrawal processes, withdrawal limits, gas fees, and more. So, let's dive in and learn about the future of Ethereum withdrawals!

staked Ethereum is now free

Illustration: staked Ethereum is now free

Shanghai + Capella = Shapella Upgrade

When it comes to the recent updates to Ethereum, you may be wondering why there are two different names being used - the Shanghai hard fork and the Capella hard fork. The reason for this is that, after the Merge, Ethereum consists of two distinct blockchains, with one handling execution and the other handling consensus. To support the withdrawal of Ethereum, both blockchains need to be updated with new features simultaneously. The Shanghai hard fork refers to the execution layer update, while the Capella hard fork refers to the consensus layer update. In order for the updates to be successful, they need to be applied to the majority of nodes on the network at the same time.

The Ethereum Foundation has recently suggested the name Shapella upgrade as an alternative name for these updates.

Understanding Ethereum Withdrawals

Currently, individuals can lock 32 Ether to run a validator and participate in the Ethereum Beacon Chain which handles the consensus of the network. These Ether, including the accrued rewards, has remained locked in the beacon chain since the genesis of the Beacon Chain. This update will bring two different types of withdrawals:

Full withdrawals, which will enable individuals to stop running their validator, exit the network and unlock their 32 Ether with any earned rewards. Full withdrawals are possible via an exit, which places the validator into the exit queue. The exit queue depends on the size of the validator set in the network. This limit exists to regulate the rate of exit and entry into the beacon chain validator set. It's important to note that the exit is an irreversible process.

Exit queue:
Ethereum Withdrawals 1

Note that this calculation is exactly the same for both exiting validators from the network and for activating new validators.

Once a validator has been processed in the exit queue, it enters the withdrawable status and is added to the withdrawal queue for processing.

Partial withdrawals of any balances above 32 ETH. An automatic process will continuously iterate through all the validators and distribute all the balances over 32 ETH to the configured withdrawal address. This process is automatic and round-robin (circular order, handling all validators without priority).

Withdrawals are included in blocks, and each block can contain up to sixteen withdrawals, whether they are full or partial. Once a validator's turn comes up, their withdrawal is processed, and the Ethereum is sent to the validator's withdrawal address.

The time it takes to process withdrawals depends on the number of validators waiting in the queue. The more validators in the queue, the longer it takes for each validator's turn to come up. Assuming there are about 550,000 validators, and with an average block time of around 12 seconds, it takes about 4.8 days to cycle through all validators. However, the time may vary depending on the number of validators and the proportion of validators with withdrawal credentials properly configured.

Withdrawal queue (assuming all the validators have the correct withdrawal credentials):

Ethereum Withdrawals Table

In summary, Ethereum's new withdrawal feature allows stakers to get their staked Ethereum back by joining a withdrawal queue. Withdrawals are processed one by one, and each validator's turn comes up when their position in the queue is reached. The time it takes to process withdrawals depends on the number of validators waiting in the queue. The queue is circular, meaning that when a withdrawal is served, the validator goes back to the end of the queue. Additionally, full withdrawals must first be processed by the exit queue before they can be added to the withdrawal queue for further processing.

Ethereum validators waiting in the withdrawal queue.

Illustration: Ethereum validators waiting in the withdrawal queue.

Now that we understand the basics of withdrawals, let's take a closer look at some common questions and concerns about the upcoming upgrade.

What Do I Need To Do?

For Ethereum users: you don’t need to do anything, the network will continue working as usual and the upgrade should be seamless unless instructed otherwise by your exchange or wallet provider.

For liquid staking token holders: it depends on the protocol you are staking with, but, most likely, you won’t need to do anything. Liquid staking protocols shall upgrade its contracts during this year to make use of this new feature. This should bring an improved user experience due to a stronger price peg between the liquid staking token and ETH and an increase in the available liquidity in decentralized markets.

For solo operators: you must keep your nodes updated to the latest stable client release. Also, it is important to note that automatic withdrawals depend on your withdrawal credentials. If your credentials are set to 0x01 and point to a valid Ethereum address, then the partial withdrawal will happen automatically. However, if you are using a legacy withdrawal credential 0x00, your funds will not be withdrawn, and you will have to perform a migration to 0x01 credentials to complete the withdrawal.

You can check your validator withdrawal credentials by looking at the Beaconcha.in “Deposits” tab of your validator.

Example of a validator with 0x01 withdrawal credentials:
validator with 0x01 withdrawal credentials

Example of a validator with 0x00 withdrawal credentials:
validator with 0x00 withdrawal credentials

It's important to note that the withdrawal credential change is an irreversible process. So please proceed with caution and only make these changes when you are fully aware of what they will do. Feel free to apply this change whenever you feel confident, there is no rush.

There are tools currently in development that will help solo operators to perform this change with ease.

Gas Fees

It's worth noting that partial and full withdrawals will not be charged any gas fees from the Ethereum network. These withdrawals will show up as a balance increase instead of a transaction and will not trigger code execution for smart contract wallets.

Once the withdrawal is performed, you will be able to move your ETH as usual.

Conclusion

The upcoming Ethereum withdrawals upgrade is set to bring significant changes to the network, making it user-friendly and capital efficient for validators and users. The automatic partial withdrawals will simplify the withdrawal process for validators who have balances above 32 ETH, while still allowing full withdrawals for people that want to exit the network.

Thanks to this, solo stakers will be able to access its locked ETH, liquid staking tokens will improve their price stability, and both will be able to earn compounding staking rewards by deploying additional validators from the rewards.

With these changes, Ethereum is well on its way to becoming a more robust and efficient blockchain network, ready to handle the demands of the growing DeFi ecosystem.

As an experienced Ethereum validator, we at Stakely are excited for the upcoming Ethereum withdrawals upgrade and the benefits it will bring to ETH staking. If you're interested in staking ETH with us and earning rewards while we take care of the technical details, don't hesitate to reach out and learn more about our services. Contact us today to get started!

Sources:

  1. Ethereum withdrawals FAQ
  2. Validator queue lengths
  3. Goerli Shapella announcement
Written by