On April 12th, at 22:27 UTC, one of the most highly anticipated upgrades in Ethereum's history, the Shapella upgrade, was triggered. This upgrade is a combination of two separate upgrades: the Shanghai and Capella upgrades. It marks the first simultaneous upgrade of both Ethereum's consensus layer (Shanghai) and execution layer (Capella). Among the two, the Shanghai upgrade garnered the most attention, with supporters and critics alike actively monitoring its impact.
What is the Shanghai Upgrade?
In short, the upgrade enables the withdrawal of ETH that has been staked on the Beacon Chain.
Ethereum consists of two layers: an execution layer and a consensus layer. The execution layer processes transactions and is the layer that you interact with and analyze on analytics tools such as Nansen or block explorers like Etherscan. The consensus layer, also known as the Beacon Chain, is responsible for maintaining the network's overall consensus, or agreement, on the current state of the blockchain. Since the launch of the Beacon Chain in December 2020, ETH holders have been able to stake their ETH but had no ability to withdraw it until now.
So, have validators been waiting to sell?
Not exactly. While token unlocks have been associated with holders dumping in the past, Ethereum's situation is different. What the Shanghai upgrade enables is more like a typical Proof-of-Stake (PoS) blockchain withdrawal mechanism than a vested token unlock.
Three reasons why validators would want withdrawals enabled besides selling:
- Validators only earn yield on the principal 32 ETH that they’ve staked. Without withdrawals enabled, validators are not able to re-stake their accrued rewards and hence are unable to compound their yield.
- There has been significant innovation and progress in ETH staking methodologies, and validators may want to reallocate their staking positions based on their priorities. For instance, stakers who have been solo staking or using illiquid Staking-as-a-Service options may want to switch to liquid staking protocols to maximize their yield.
- Enabling withdrawals also reduces the liquidity risk associated with staking ETH. This reduction in risk is likely to lower the barrier that deterred holders from staking their ETH, which could result in an increase in participation.
How do Ethereum withdrawals work?
Probably the most important thing to understand about Shanghai is how withdrawals work. Ethereum withdrawals function differently from other PoS systems. 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.
There are two types of withdrawals: partial withdrawals and full withdrawals. Both types of withdrawals have different triggers, and full withdrawals take significantly longer to process. But before we dive into both mechanisms, there's one crucial step that validators need to take to be eligible for withdrawals.
How do validators enable withdrawals?
In order for validators to be eligible for withdrawals, they have to update their withdrawal credential, which tells the network which address to send the withdrawn ETH to. Withdrawal credentials include one of two potential prefixes: 0x00 or 0x01. Only validators that have updated their credentials to 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 upgrade, only about 43% of validators had updated their credentials. That number has now risen to 83.3% and will likely reach 100% as time goes by.
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 exit and sell their ETH.
What are partial withdrawals and how do they work?
Partial withdrawals are withdrawals of accrued rewards while leaving the minimum 32 ETH required to operate as a validator intact, keeping the validator active. They are processed via an automated process and validators can expect to see their withdrawals reflected in their withdrawal address every 2-5 days.
A common misconception with partial withdrawals is that they only occur every 2-5 days, but that's not the case. The protocol constantly scans through the validators and processes withdrawals for eligible validators. Up to 16 validators are processed per block (12 seconds) and "2-5 days" is the amount of time to complete one round of withdrawals across all validators. Note that this automatic withdrawal process is the same procedure that full withdrawals go through to complete their withdrawals.
What are full withdrawals and how do they work?
Full withdrawals are withdrawals of the entire balance of a validator and happen voluntarily or if the validator has been slashed. Full withdrawals take longer than partial withdrawals and are a multi-step process:
- Exit queue (minimally 5 epochs, or 32 mins)
- Minimum validator withdrawability delay - 256 epochs (27.3 hours)
- Automatic withdrawal queue (2-5 days)
Validators must first exit the consensus layer before going through the same automatic withdrawal process as partial withdrawals. Validators are entered into the exit queue when they declare their interest to exit or when they are slashed. The primary purpose of the exit queue is to maintain the security of the network, not to accommodate ETH transaction speeds. If too many validators exit too quickly, the network would become unstable and vulnerable to attack.
In the best-case scenario, it takes a minimum of 5 epochs (32 minutes) to clear the exit queue. The queue length is based on the number of validators exiting and the churn limit, which is the maximum number of validators that can exit per epoch (every 6.4 minutes).
Churn Limit = max(4, [active_validators/65536])
A minimum number of 4 validators can exit per epoch and the church limit increases by 1 for every 65,536 new validators in the network once there are 327,680 active validators. At the current validator count, the churn limit is 8 and a maximum of 1800 validators can exit per day.
Withdrawal delay and automatic withdrawal queue
After going through the exit queue, validators are put through a minimum validator withdrawability delay of 256 epochs (27.3 hours) before they are eligible for withdrawals under the same automated withdrawal process that partial withdrawals undergo. 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.
Key Shanghai upgrade metrics to monitor
There’s a ton of potential data points to look at and each of them provide an additional layer of insight but in this article we’ll focus on the 4 main ones to monitor.
ETH deposits vs withdrawals
Nansen's data highlights changes to the liquid supply of ETH. Deposits are ETH sent to the beacon deposit contract, withdrawals are principal ETH deposited, 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: Assuming withdrawals = selling.
Partial withdrawals happen automatically and will occur regardless of a validator’s desire to remain active or exit. 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.
The exit queue and who’s withdrawing ETH
Monitoring these two data points allows you to get a holistic sense of unlocks in the coming days.
The exit queue
The number of validators waiting for full withdrawals on Nansen include validators currently in the exit queue and validators that have gone through the queue but have not had their withdrawals processed yet.
As Nansen has labeled millions of wallet addresses, we are able to monitor who’s in the withdrawal queues and who has withdrawn. This allows us to get an idea of the potential motivation behind the withdrawals.
Currently, most of the ETH waiting for withdrawals and being withdrawn belong to centralized exchanges such as Binance, Coinbase, Kraken and Huobi and not large whales exiting the network. A large bulk of this is due to regulatory crackdown and pressures faced and not voluntary withdrawals. It’s likely that we see users of those exchanges restake their ETH using other platforms such as Lido or Rocket Pool.
Potential long term implications of the Shanghai upgrade?
This segment contains the opinions of the author and not meant to be taken as fact or investment advice of any kind.
In the short run, there is likely to be a level of volatility around withdrawal amounts. Partial withdrawals have two years of accrued rewards to be withdrawn, and events such as Kraken being forced to wind down their staking practice in the US, along with general reshuffling and reallocation of staked ETH among staking platforms, will cause initial spikes in withdrawals.
However, in the long run, it is likely that withdrawals will settle along a baseline number of partial and full withdrawals happening each day, with spikes in the event of any unforeseen circumstances. On top of that, there are other potential implications that arise from the Shanghai upgrade.
Increase in the amount of ETH staked
It would not be surprising to see the percentage of ETH's total supply being staked increase over time.
Compared to other major layer-1 blockchains, Ethereum has one of the lowest staking ratios. The lack of a withdrawal function has been one of the reasons for the low staking ratio, despite the prominence of liquid staking protocols. Although liquid staking protocols allowed users to swap their liquid staking tokens (LSTs) for ETH on DEXes, LSTs often traded at a discount due to the lack of withdrawals. As we approached the expected upgrade date, we saw a rapid increase in the amount of ETH staked, suggesting that the lack of withdrawals indeed reduced the attractiveness of staking.
However, ETH’s staking ratios may not reach the levels 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 which presents alternative yield farming opportunities. The varied use cases and the presence of alternative opportunities to utilize ETH set it apart from other major L1 tokens. There is a case where liquid staking protocols and the liquidity they offer allow the vast majority of ETH to be staked without holders incurring much opportunity cost. In that scenario, we could very well see the vast majority of ETH’s total supply being staked, with liquid staking protocols being the main driver of that.
Increase in rate of innovation and competition amongst staking services
The increase in the portability of staked ETH means that staking services are in constant competition amongst themselves to offer the best possible service to the end user. Users will easily be able to vote with their ETH by switching their staked allocation as better solutions arise. Illiquid staking services will likely see the biggest increase in competition as this is the first time that users are able to withdraw their ETH. Liquid staking protocols are not spared from this change either. Now that LST de-pegs are almost non-existent, there’s little to no switching cost. Liquid staking protocols will have to continue to improve and embody the ethos of Ethereum holders for their market share to grow.
Increase in utilization of liquid staking tokens in DeFi
As highlighted in a previous article on liquid staking tokens, the vast majority of LSTs are not currently being utilized in DeFi protocols. While LSTs served their purpose of creating a pseudo-withdrawal mechanism for ETH stakers, their utility has not been maximized due to low utilization in DeFi. This lack of utilization is potentially due to frequent de-pegs between the LST and ETH, which makes liquidation a real concern during volatile times. As LSTs continue to grow and take center stage in the Ethereum ecosystem, we can expect to see more DeFi protocols integrating LSTs into their platforms, thereby increasing opportunities for LST holders to utilize their tokens.
In conclusion, the Shapella upgrade, which includes both the Shanghai and Capella upgrades, was a much-needed update to Ethereum. The Shanghai upgrade has provided validators with the ability to withdraw their staked ETH, enabling them to re-stake their rewards, compound their yield, reallocate their staking positions, and reduce liquidity risks.
The ability to withdraw staked ETH has significant positive implications for Ethereum's DeFi ecosystem and will usher in a new era for staked ETH. We anticipate increased staking participation among ETH holders and greater innovation in staking solutions. By monitoring key data points, we will gain a deeper understanding of the upgrade's impact and the future of ETH staking over time.