On August 12th Ethereum’s total daily transactions fees topped $6.87M, shattering the previous all-time high of $4.55M set in January 2018. The following day, Ethereum had $8.61M worth of fees, once again breaking the daily record.
Blockchain transaction fees are a double-edged sword. High fees means there’s high demand for usage, but can also cause network congestion and price out certain users.
When Ethereum miners mine a block they need to select which transactions to include. Typically miners will sort by highest fee and add transactions until they run out of block space. This means that transactions with relatively low fees get deprioritized and included in later blocks once there’s space.
Ethereum fees are measured in units of “gas.” Each transaction costs a certain amount of gas depending on the amount of computation required (more complex transactions require more gas). Transaction senders specify the gas price they want to pay when initiating a transaction. If a transaction sender increases the gas price that they’re willing to pay, there’s a higher likelihood that their transaction gets prioritized.
Rising transaction fees therefore signals that there’s increasing demand for transactions to be quickly confirmed and included in blocks. High transaction fees also leads to higher revenue for miners, as miners receive the fees as part of their reward for securing the network.
But high transaction fees come at a cost. As average fees increase, certain types of users and applications get priced out. Use cases like games and digital collectibles that depend on large amounts of microtransactions can become prohibitively expensive. And it becomes harder for average, retail users to compete with large, whale investors who can afford to pay high transaction fees.
This recent surge in fees was driven by one of the craziest decentralized finance (DeFi) events to date: the launch of the YAM token.
On August 11th at 17:00 UTC, the team behind DeFi project yam.finance announced that they would soon be launching the YAM token. Following the model used by DeFi token YFI, YAM was to be distributed through staking pools.
During the ICO boom of 2017 newly created tokens were sold through token sales, often driving prices up to crazy levels. Furthermore, tokens were often held and distributed by the ICO’s founding team or foundation, allowing many project founders to quickly profit. DeFi projects have pioneered a new model of token distributions: instead of a token sale, they distribute tokens as rewards for staking pools. DeFi projects will specify a list of staking pools and liquidity pools that are eligible to earn the token. The new token is then distributed proportionally to the amount of tokens staked, with higher stakes earning more tokens.
The yam.finance team outlined eight different staking pools, each with a different cryptoasset that could be staked (including WETH, COMP, MKR, YFI, and others) to earn YAM. Following in the footsteps of yearn.finance’s YFI token, the yam.finance team chose not to reserve any tokens for themselves, distributing them entirely to the community.
Once YAM launched there was a rush to start staking funds in one of the eight pools and start earning YAM as a reward. YAM staking pool smart contracts generated over $15K worth of transaction fees within hours of launch.
Signs of Trouble
But soon after YAM started to take off it began to unravel. The YAM token was designed to be “supply elastic,” meaning the token supply would automatically contract or expand in an attempt to keep price relatively stable. YAM’s supply elastic model was based on another DeFi token, Ampleforth (AMPL).
The supply adjustments were to occur as a nightly rebase using a complex mechanism that would adjust supply without diluting current holders. But despite the relatively complex architecture, the YAM team did not have their smart contracts audited, as they explicitly stated in their announcement post.
At 18:00 UTC on August 12th the yam.finance team announced that they found a bug in the rebasing contract which threatened the future of the project. To fix the issue they needed at least 35K YAM tokens delegated to a governance smart contract so they could pass a vote to temporarily pause the rebasing mechanism.
The rush to move YAM as a response to the bug was the first event that caused fees to skyrocket. This fee spike was also seen on Uniswap, the decentralized exchange that has become the center of DeFi trading. Further complicating things, a lot of YAM had been staked in Uniswap liquidity pools, which needed to be quickly unstaked and moved. This caused Uniswap fees to surge and peak at 20:00 on August 12th.
But YAM’s problems did not stop there. At 07:27 UTC on August 13th the yam.finance team announce that they had submitted a governance proposal to fix the bug before the upcoming rebase at 08:00. Crucially, they strongly encouraged users to exit the Uniswap YAM/yCRV liquidity pool before the rebase. But soon after, with help from security experts, the team concluded that “the rebaser bug would interact with the governance module and prevent this proposal from succeeding.” The YAM protocol was effectively dead. Transaction fees peaked at 08:00 UTC, and then started to fall.
Zooming out, the following chart shows how dramatically Uniswap fees increased compared to normal. Total Uniswap fees reached almost $100K in a single hour. Comparatively, for most of July Uniswap hourly fees remained below $10K.
At their peak, average Uniswap fees topped $16 per transaction. YAM staking pool fees were close behind, also briefly topping $16. As average fees for Uniswap and YAM rose, average fees rose across the Ethereum network as others were forced to pay higher gas prices to compete for block space. Average fees peaked at 08:00 on August 13th, as the YAM protocol went down.
Note: The MYX Network token launch on August 13th had many transactions with extremely high gas prices which temporarily caused ETH fees to spike above $20.
The speculation surrounding YAM draws natural comparisons to 2017’s ICO mania. But this is a more complex version, where speculators need to interact with an increasingly complicated system of DeFi smart contracts. This can lead to unexpected risk and sudden surges in fees, which can make it prohibitively expensive to get in and out of speculative positions quickly. Ultimately, escalating fees can cause mass congestion and lead to cascading effects throughout the network.
High fees also make it harder for retail investors to participate in this new wave of DeFi tokens. If users are forced to pay high fees, it becomes less and less profitable to invest relatively small amounts into DeFi applications. DeFi is increasingly a game for whales, unless there are solutions to help drive fees down.
Speculation often helps drive innovation. DeFi will push Ethereum towards scalability solutions, and developers will likely continue to push the boundaries of what’s possible in decentralized finance. But there will likely also be a lot of damage along the way, especially if DeFi applications continue to launch without proper auditing and precautions.
The madness continues, as CRV also had a chaotic launch shortly after the YAM collapse. And the yam.finance team has already raised money through a gitcoin grant to get their contracts audited in anticipation of launching v2 of the protocol. Only time will tell how the DeFi experiment plays out, and how the rest of the Ethereum network will be affected.