The Truth About Ethereum Withdrawals: How It Works, Key Metrics and Misconceptions
A brief introduction to Ethereum withdrawal mechanisms, learn how to make sense of withdrawal data, discover key metrics to look into and avoid misconceptions with insights from Martin Lee .
Most of the data referenced in this article can be found in our Ethereum Shanghai (Shapella) Upgrade Dashboard.
What is the Shapella Upgrade?
Shapella Upgrade combines two upgrades - Shanghai upgrade and Capella upgrade.
On April 13th, the Shapella upgrade was successfully executed, marking the first simultaneous upgrade to both the execution layer (Shanghai) and consensus (Capella) of Ethereum. This upgrade is the next step in Ethereum's multi-stage roadmap, following The Merge.
The Shanghai upgrade, which enables the withdrawal of Ether (ETH) that has been staked on the Beacon chain (consensus layer), was particularly anticipated. Since staking was enabled in December 2020, before The Merge in September 2022, stakers were promised the ability to withdraw at an unknown future date. That date is now.
With withdrawals now enabled, the liquidity risk associated with staking
Withdrawal Mechanics Explained
In a typical Proof-of-Stake (PoS) system, validators must stake a minimum amount of tokens, but there is no upper limit. Rewards are paid out based on the entirety of the staked amount, which means that validators can accumulate ever-growing sums of tokens and earn a yield on the entire amount.
Ethereum, however, operates differently. Each validator is required to stake a fixed amount of 32 ETH and earns a yield on that amount. There might be periods where validators have more than 32 ETH due to accrued rewards not being withdrawn. Conversely, validators with less than 32 ETH have either been slashed or penalized due to various negative actions.
Another key difference is in the unstaking process. While other PoS chains have a fixed unbonding period, which is the duration before users can access their staked tokens after submitting their withdrawal request, Ethereum has a variable one. Ethereum's withdrawal duration is subject to two variable components
How can validators enable withdrawals?
In order to enable withdrawals, validators need to set their withdrawal credential prefixes to 0x01 from 0x00. This defines where the withdrawn ETH is sent to and only validators with the 0x01 prefix will be eligible for withdrawals. The maximum number of validators that can switch their prefix is 16 per block (12 seconds).
On the day of the Shanghai/Shapella upgrade, only about 40% of all validators had their credentials set to 0x01. That number has now risen to 83.3% and will likely reach 100%.
The rationale behind this number eventually reaching 100% is that every validator would want their accrued rewards to be withdrawn since they are only earning yield on the principal 32 ETH. It is not an indicator of their desire to do a full exit.
Perhaps the most important thing to note is that there are two types of withdrawals: partial and full withdrawals.
Partial withdrawals
Partial withdrawals are withdrawals of accrued rewards while leaving the minimum 32 ETH required to operate as a validator intact, keeping the validator active. Partial withdrawals are processed periodically via an automated withdrawal process
Why does it take 2-5 days to complete?
The expected time it would take for the network to scan through the entire active validator set and process all the eligible withdrawals is 2-5 days. This is not to say that withdrawals only happen every 2-5 days, but rather it means that it takes approximately that amount of time to complete one round of withdrawals across all validators. This scanning process facilitates both partial and full exits and occurs continuously, with up to 16 validators processed per block (12 seconds).
Full withdrawals
Full withdrawals are withdrawals of the entire balance of an exited validator and happen voluntarily or if the validator has been slashed. Full withdrawals take longer than partial withdrawals and are a multi-step process:
Why is there an exit queue and a withdrawal delay?
The exit queue exists is to maintain the security of the network and not due to ETH transaction speeds. If too many validators exit too quickly, the network would be vulnerable to attacks. The 27.3 hours delay is put in place to give the network time to detect harmful activity, preventing bad actors from negatively impacting the network and exiting without penalties.
How can I calculate the estimated exit queue length?
The exit queue length is based on the number of validators exiting and the churn limit. In an absolute best-case scenario, the shortest time to clear the exit queue would be 5 epochs (32 minutes).
The churn limit is a variable that defines the maximum number of validators that can be exited per epoch (every 6.4 minutes), and is given by the expression:
Churn Limit = max(4, [active_validators/65536])
Key Shanghai upgrade metrics
The easiest way to follow along would be to have our Shanghai Upgrade Dashboard open.
Deposits vs withdrawals
This is probably everyone's favorite metric but also the most misunderstood.
Nansen's data highlights changes to the liquid supply of ETH. Deposits are ETH sent to the beacon deposit contract, withdrawals are ETH from the beacon chain (Principal), and accrued rewards sent to wallets. The chart above is a good way to gauge the flow of ETH between a locked & unlocked state.
领英推荐
Use the cumulative sum (purple line) to estimate changes to liquid supply of ETH and not solely the size of deposit/withdrawal bars. Decrease in the cumulative sum = increase in liquid supply.
Common mistake: Forming inferences beyond "change to liquid supply".
While the chart gives a good overview of the change in liquid supply, it lacks nuance when making inferences on the implications of the withdrawals. In order to gain proper insights into the withdrawal data, knowing the split between partial and full withdrawals is vital.
Partial withdrawals happen automatically and there's over 2 years of accrued rewards waiting to be withdrawn. Full withdrawals are the more important factor to look at as these are full exits and have to be manually triggered by the validator or an implication of getting slashed.
It's clear that the withdrawal volumes have been primarily driven by partial withdrawals of staking rewards
There are 59.6K ETH pending automatic withdrawals and another 246.6K pending the credential switch.
In the past 48 hours, we're starting to see a sizable amount of full withdrawals. Refresher on why there's a delay in seeing full withdrawals
Exit queue
Looking at exit queue data gives you a sense of upcoming full unlocks, who and when the unlocks happen. While most sources only provide data on the exit queue, Nansen includes those that have gone through the exit queue but have not gotten their withdrawals processed.
Common mistake
While unlocks are commonly associated with selling, the situation with ETH is slightly different, because this is a PoS native token unstaking, not a vesting schedule token unlock cycle.
The rise of LSDs and their utilization in DeFi is a factor here.
Self-operated validators that are bullish on ETH will queue to exit if they wish to restake their ETH via Liquid Staking Protocols such as Lido. The main reason for that is the ability to be more capital efficient by leveraging the liquidity that LSD protocols provide.
We're seeing a slight increase in ETH staked in LSDs since the Shanghai upgrade. While there isn't a dashboard that tracks if the increase primarily being driven by restaking, there is likely a correlation between the two for the reason mentioned above.
Who's withdrawing?
Knowing who's withdrawing is about as important as knowing the amount that's going to be withdrawn. It gives you a sense of what to expect from upcoming withdrawals and the nature of those withdrawals.
Common mistake:
Most of the withdrawals have been rewards, so Kraken's full exits have not materially impacted total withdrawn numbers yet. We found that Wallet: 0x210 is likely Kraken's designated wallet to receive withdrawals. Although it seems like it's contributing a significant amount, it's mostly withdrawals of accrued rewards for now. Their validators are likely still in the exit queue or pending the automatic withdrawal process.
Again, withdrawing ETH does not indicate a validator's desire to sell. While a validator needs to withdraw to sell, there are other reasons for withdrawals such as switching validator setups - solo operated to staking as a service provider or LSD protocols and vice versa.
Where is the ETH going?
There currently isn't a dashboard that tracks this (we're working on it). So this is a little hard to analyze but seeing the rise in ETH staked in LSDs points is an indicator of one area for now.
Aspects that Martin thinks people are jumping to conclusions too early:
Kraken being forced to unwind their staking service in the US doesn't necessarily mean they (or their customers) are selling. It just means they have to exit as validators. What users do with the ETH is yet to be seen.
The amount withdrawn now will be highly volatile, with spikes here and there based on partial and full exits. It's only been 4 days and a baseline has not yet been established.
Martin's Hypothesis
One way of trying to predict the longer-term trend in ETH's staking amount is to do comparables with other PoS blockchains.
Ethereum has one of the lowest staking ratios of major L1s and has been the only chain that didn't enable withdrawals until now. While the lack of a withdrawal function is not the only reason for the low staking ratio, it's certainly an important one. As we got closer to the expected upgrade date, we saw a rapid increase in the amount of ETH staked. If users weren't keen on staking ETH, we would see a plateau in the amount staked.
The introduction of withdrawals likely increases participation and the overall amount of ETH staked in the network, bringing it closer in line with other major L1s. However, we might not see staking ratios as high as some of the other chains. This is due to the large NFT ecosystem, for which ETH is a currency of exchange, and the large and ever-growing DeFi ecosystem. The varied use cases and the presence of alternative opportunities to utilize ETH set it apart from other major L1 tokens.